infrawrench-sdk 0.44.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/infrawrench-sdk.gemspec +4 -4
- data/lib/infrawrench/client.rb +276 -19
- data/lib/infrawrench/sdk.rb +2 -2
- data/lib/infrawrench/transport.rb +2 -2
- data/lib/infrawrench/version.rb +3 -3
- data/lib/infrawrench-sdk.rb +2 -2
- data/sig/infrawrench/sdk.rbs +217 -90
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b139d5dedc215d6acda15293d9e7e7680368622ca2ec6eb9214f525965eac59c
|
|
4
|
+
data.tar.gz: 3318c1b9597fdcfbaf0b20db678894475c4ce6410775dc6ebf84cac42cf35844
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cbb962bad4e5a7296e2727918d559b22a70ac2bdec5d94726fbaec8207972a563ec134307510943065baf3f5e526178a0fa475c99978ac23c53a60e2f46a6d56
|
|
7
|
+
data.tar.gz: 261dbe50ecf45be5b3aff912293f2662774ded53666d150ec5e350e54695903fec2f95087e4e86af3ca515bcd5ad9f84e0ef970f82bf1cfa8f15185d2673d02e
|
data/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# infrawrench-sdk
|
|
2
2
|
|
|
3
|
-
Generated Ruby client for the Infrawrench API (API version `
|
|
3
|
+
Generated Ruby client for the Infrawrench API (API version `1.1.0`).
|
|
4
4
|
|
|
5
5
|
**Do not edit this gem by hand** — it is regenerated from `openapi.json` and is
|
|
6
6
|
not checked into the repository. Run
|
|
@@ -41,7 +41,7 @@ Every method takes an optional trailing `request_options:` hash (`:headers`,
|
|
|
41
41
|
Responses are the plain `Hash`/`Array` that `JSON.parse` returns, with String
|
|
42
42
|
keys spelled exactly as the wire spells them. There are no model classes — see
|
|
43
43
|
[`sig/infrawrench/sdk.rbs`](./sig/infrawrench/sdk.rbs) for the shape of every one of the
|
|
44
|
-
|
|
44
|
+
417 schemas, as RBS type aliases that steep and TypeProf can read.
|
|
45
45
|
|
|
46
46
|
Non-2xx responses raise `Infrawrench::ApiError`, which carries `#status`,
|
|
47
47
|
the parsed `#body`, and the machine-readable `#code` when the API sends one —
|
data/infrawrench-sdk.gemspec
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# infrawrench-sdk
|
|
3
|
+
# infrawrench-sdk v1.1.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
4
4
|
# https://github.com/Infrawrench/Infrawrench
|
|
5
5
|
#
|
|
6
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.1.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -17,8 +17,8 @@ require_relative "lib/infrawrench/version"
|
|
|
17
17
|
Gem::Specification.new do |spec|
|
|
18
18
|
spec.name = "infrawrench-sdk"
|
|
19
19
|
spec.version = Infrawrench::VERSION
|
|
20
|
-
spec.summary = "Generated Ruby client for the Infrawrench API (
|
|
21
|
-
spec.description = "Generated Ruby client for the Infrawrench API (
|
|
20
|
+
spec.summary = "Generated Ruby client for the Infrawrench API (v1.1.0)."
|
|
21
|
+
spec.description = "Generated Ruby client for the Infrawrench API (v1.1.0). Covers the published API surface only — operations marked x-internal in the spec are not generated. No runtime dependencies."
|
|
22
22
|
spec.authors = ["Infrawrench LLC", "Astrid Gealer"]
|
|
23
23
|
spec.email = ["astrid@infrawrench.com"]
|
|
24
24
|
spec.homepage = "https://infrawrench.com/docs/team-and-billing/client-sdks"
|
data/lib/infrawrench/client.rb
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# infrawrench-sdk
|
|
3
|
+
# infrawrench-sdk v1.1.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
4
4
|
# https://github.com/Infrawrench/Infrawrench
|
|
5
5
|
#
|
|
6
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.1.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -882,6 +882,185 @@ module Infrawrench
|
|
|
882
882
|
end
|
|
883
883
|
end
|
|
884
884
|
|
|
885
|
+
# `client.alert_rules.deliveries`
|
|
886
|
+
class AlertRulesDeliveriesNamespace
|
|
887
|
+
# @api private
|
|
888
|
+
# @param transport [Transport]
|
|
889
|
+
def initialize(transport)
|
|
890
|
+
@transport = transport
|
|
891
|
+
end
|
|
892
|
+
|
|
893
|
+
# Acknowledge an alert, cancelling its escalation
|
|
894
|
+
#
|
|
895
|
+
# A conditional update: only a delivery still in `awaiting_ack` can move, so
|
|
896
|
+
# two people pressing at once produce one acknowledgement and an alert that
|
|
897
|
+
# already escalated cannot be retroactively silenced.
|
|
898
|
+
#
|
|
899
|
+
# POST /api/org/{orgId}/alert-rules/deliveries/{id}/ack
|
|
900
|
+
#
|
|
901
|
+
# Raises on 401: Unauthenticated
|
|
902
|
+
#
|
|
903
|
+
# Raises on 403: Forbidden
|
|
904
|
+
#
|
|
905
|
+
# Raises on 404: Not found
|
|
906
|
+
#
|
|
907
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
908
|
+
# constructed with.
|
|
909
|
+
# @param id [String]
|
|
910
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
911
|
+
# @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
|
|
912
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
913
|
+
def ack(id:, org_id: nil, request_options: nil)
|
|
914
|
+
@transport.request(
|
|
915
|
+
http_method: "POST",
|
|
916
|
+
path: "/api/org/{orgId}/alert-rules/deliveries/{id}/ack",
|
|
917
|
+
path_params: { "orgId" => org_id, "id" => id },
|
|
918
|
+
request_options: request_options
|
|
919
|
+
)
|
|
920
|
+
end
|
|
921
|
+
|
|
922
|
+
# Drop held or awaiting-acknowledgement deliveries
|
|
923
|
+
#
|
|
924
|
+
# POST /api/org/{orgId}/alert-rules/deliveries/cancel
|
|
925
|
+
#
|
|
926
|
+
# Raises on 400: Bad request
|
|
927
|
+
#
|
|
928
|
+
# Raises on 403: Forbidden
|
|
929
|
+
#
|
|
930
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
931
|
+
# constructed with.
|
|
932
|
+
# @param body [Hash, nil] Request body, shaped as `Hash`.
|
|
933
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
934
|
+
# @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
|
|
935
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
936
|
+
def cancel(org_id: nil, body: nil, request_options: nil)
|
|
937
|
+
@transport.request(
|
|
938
|
+
http_method: "POST",
|
|
939
|
+
path: "/api/org/{orgId}/alert-rules/deliveries/cancel",
|
|
940
|
+
path_params: { "orgId" => org_id },
|
|
941
|
+
body: body,
|
|
942
|
+
request_options: request_options
|
|
943
|
+
)
|
|
944
|
+
end
|
|
945
|
+
|
|
946
|
+
# List recent held and escalating alerts
|
|
947
|
+
#
|
|
948
|
+
# Only alerts a rule created follow-up work for appear here: one held by
|
|
949
|
+
# quiet hours, or one waiting on an acknowledgement. An alert that went
|
|
950
|
+
# straight out leaves no row.
|
|
951
|
+
#
|
|
952
|
+
# GET /api/org/{orgId}/alert-rules/deliveries
|
|
953
|
+
#
|
|
954
|
+
# Raises on 403: Forbidden
|
|
955
|
+
#
|
|
956
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
957
|
+
# constructed with.
|
|
958
|
+
# @param limit [Integer, nil]
|
|
959
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
960
|
+
# @return [Array<Hash>] Parsed JSON, shaped as `Array<AlertDelivery>` — see
|
|
961
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
962
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
963
|
+
def list(org_id: nil, limit: nil, request_options: nil)
|
|
964
|
+
@transport.request(
|
|
965
|
+
http_method: "GET",
|
|
966
|
+
path: "/api/org/{orgId}/alert-rules/deliveries",
|
|
967
|
+
path_params: { "orgId" => org_id },
|
|
968
|
+
query: { "limit" => limit },
|
|
969
|
+
request_options: request_options
|
|
970
|
+
)
|
|
971
|
+
end
|
|
972
|
+
end
|
|
973
|
+
|
|
974
|
+
# `client.alert_rules`
|
|
975
|
+
class AlertRulesNamespace
|
|
976
|
+
# @return [AlertRulesDeliveriesNamespace] `client.alert_rules.deliveries`
|
|
977
|
+
attr_reader :deliveries
|
|
978
|
+
|
|
979
|
+
# @api private
|
|
980
|
+
# @param transport [Transport]
|
|
981
|
+
def initialize(transport)
|
|
982
|
+
@transport = transport
|
|
983
|
+
@deliveries = AlertRulesDeliveriesNamespace.new(@transport)
|
|
984
|
+
end
|
|
985
|
+
|
|
986
|
+
# Persist the default rule so it can be edited
|
|
987
|
+
#
|
|
988
|
+
# A no-op when the organization already has rules.
|
|
989
|
+
#
|
|
990
|
+
# POST /api/org/{orgId}/alert-rules/adopt-defaults
|
|
991
|
+
#
|
|
992
|
+
# Raises on 403: Forbidden
|
|
993
|
+
#
|
|
994
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
995
|
+
# constructed with.
|
|
996
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
997
|
+
# @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
|
|
998
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
999
|
+
def adopt_defaults(org_id: nil, request_options: nil)
|
|
1000
|
+
@transport.request(
|
|
1001
|
+
http_method: "POST",
|
|
1002
|
+
path: "/api/org/{orgId}/alert-rules/adopt-defaults",
|
|
1003
|
+
path_params: { "orgId" => org_id },
|
|
1004
|
+
request_options: request_options
|
|
1005
|
+
)
|
|
1006
|
+
end
|
|
1007
|
+
|
|
1008
|
+
# Get the organization's alert routing rules
|
|
1009
|
+
#
|
|
1010
|
+
# Returns the rules in evaluation order, plus the channels and accounts a
|
|
1011
|
+
# rule can name so a client can render destinations by name. An organization
|
|
1012
|
+
# that has saved no rules gets the synthesized default with `usingDefaults:
|
|
1013
|
+
# true`.
|
|
1014
|
+
#
|
|
1015
|
+
# GET /api/org/{orgId}/alert-rules
|
|
1016
|
+
#
|
|
1017
|
+
# Raises on 403: Forbidden
|
|
1018
|
+
#
|
|
1019
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1020
|
+
# constructed with.
|
|
1021
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1022
|
+
# @return [Hash] Parsed JSON, shaped as `AlertRulesResponse` — see
|
|
1023
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
1024
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1025
|
+
def get(org_id: nil, request_options: nil)
|
|
1026
|
+
@transport.request(
|
|
1027
|
+
http_method: "GET",
|
|
1028
|
+
path: "/api/org/{orgId}/alert-rules",
|
|
1029
|
+
path_params: { "orgId" => org_id },
|
|
1030
|
+
request_options: request_options
|
|
1031
|
+
)
|
|
1032
|
+
end
|
|
1033
|
+
|
|
1034
|
+
# Replace the organization's alert routing rules
|
|
1035
|
+
#
|
|
1036
|
+
# Whole-list replacement in one transaction. Order is part of the meaning —
|
|
1037
|
+
# a rule is only correct relative to the ones above it — so a reorder
|
|
1038
|
+
# applied as several requests would leave a window in which alerts route
|
|
1039
|
+
# somewhere nobody asked for. Positions are re-derived from array order.
|
|
1040
|
+
#
|
|
1041
|
+
# PUT /api/org/{orgId}/alert-rules
|
|
1042
|
+
#
|
|
1043
|
+
# Raises on 400: Bad request
|
|
1044
|
+
#
|
|
1045
|
+
# Raises on 403: Forbidden
|
|
1046
|
+
#
|
|
1047
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1048
|
+
# constructed with.
|
|
1049
|
+
# @param body [Hash, nil] Request body, shaped as `Hash`.
|
|
1050
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1051
|
+
# @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
|
|
1052
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1053
|
+
def update(org_id: nil, body: nil, request_options: nil)
|
|
1054
|
+
@transport.request(
|
|
1055
|
+
http_method: "PUT",
|
|
1056
|
+
path: "/api/org/{orgId}/alert-rules",
|
|
1057
|
+
path_params: { "orgId" => org_id },
|
|
1058
|
+
body: body,
|
|
1059
|
+
request_options: request_options
|
|
1060
|
+
)
|
|
1061
|
+
end
|
|
1062
|
+
end
|
|
1063
|
+
|
|
885
1064
|
# `client.api_keys`
|
|
886
1065
|
class ApiKeysNamespace
|
|
887
1066
|
# @api private
|
|
@@ -3884,6 +4063,74 @@ module Infrawrench
|
|
|
3884
4063
|
end
|
|
3885
4064
|
end
|
|
3886
4065
|
|
|
4066
|
+
# `client.environment_diff`
|
|
4067
|
+
class EnvironmentDiffNamespace
|
|
4068
|
+
# @api private
|
|
4069
|
+
# @param transport [Transport]
|
|
4070
|
+
def initialize(transport)
|
|
4071
|
+
@transport = transport
|
|
4072
|
+
end
|
|
4073
|
+
|
|
4074
|
+
# Compare two accounts' resource inventories
|
|
4075
|
+
#
|
|
4076
|
+
# Compares two accounts of the same provider — typically staging against
|
|
4077
|
+
# production — over already-synced state: which resource types exist in one
|
|
4078
|
+
# and not the other, the per-type count deltas, and the fields on which two
|
|
4079
|
+
# corresponding resources disagree (instance class, engine version, feature
|
|
4080
|
+
# flags).
|
|
4081
|
+
#
|
|
4082
|
+
# Resources are paired by resource type plus name with environment words
|
|
4083
|
+
# removed, so `api-staging` lines up with `api-prod` without any naming
|
|
4084
|
+
# convention to configure. By default the comparison hides divergences that
|
|
4085
|
+
# are artefacts of being two different resources — ids, links, network
|
|
4086
|
+
# addresses and timestamps — because every resource has different ones; pass
|
|
4087
|
+
# `includeIdentityFields=true` to see them.
|
|
4088
|
+
#
|
|
4089
|
+
# Read-only and cheap: no provider API calls are made, so results reflect
|
|
4090
|
+
# the last sync.
|
|
4091
|
+
#
|
|
4092
|
+
# _Requires permission: `resources:read`._
|
|
4093
|
+
#
|
|
4094
|
+
# GET /api/org/{orgId}/environment-diff
|
|
4095
|
+
#
|
|
4096
|
+
# Raises on 400: Bad request
|
|
4097
|
+
#
|
|
4098
|
+
# Raises on 404: Not found
|
|
4099
|
+
#
|
|
4100
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
4101
|
+
# constructed with.
|
|
4102
|
+
# @param a [String] Baseline account id — by convention the environment that works.
|
|
4103
|
+
# @param b [String] Compared account id. Must differ from `a` and use the same provider.
|
|
4104
|
+
# @param resource_type_id [String, nil] Compare one resource type only.
|
|
4105
|
+
# @param include_identity_fields [String, nil] Compare identity and timestamp fields too,
|
|
4106
|
+
# instead of filtering them out.
|
|
4107
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
4108
|
+
# @return [Hash] Parsed JSON, shaped as `EnvironmentDiffResponse` — see
|
|
4109
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
4110
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
4111
|
+
def get(
|
|
4112
|
+
a:,
|
|
4113
|
+
b:,
|
|
4114
|
+
org_id: nil,
|
|
4115
|
+
resource_type_id: nil,
|
|
4116
|
+
include_identity_fields: nil,
|
|
4117
|
+
request_options: nil
|
|
4118
|
+
)
|
|
4119
|
+
@transport.request(
|
|
4120
|
+
http_method: "GET",
|
|
4121
|
+
path: "/api/org/{orgId}/environment-diff",
|
|
4122
|
+
path_params: { "orgId" => org_id },
|
|
4123
|
+
query: {
|
|
4124
|
+
"a" => a,
|
|
4125
|
+
"b" => b,
|
|
4126
|
+
"resourceTypeId" => resource_type_id,
|
|
4127
|
+
"includeIdentityFields" => include_identity_fields
|
|
4128
|
+
},
|
|
4129
|
+
request_options: request_options
|
|
4130
|
+
)
|
|
4131
|
+
end
|
|
4132
|
+
end
|
|
4133
|
+
|
|
3887
4134
|
# `client.expiring.settings`
|
|
3888
4135
|
class ExpiringSettingsNamespace
|
|
3889
4136
|
# @api private
|
|
@@ -4708,10 +4955,11 @@ module Infrawrench
|
|
|
4708
4955
|
@transport = transport
|
|
4709
4956
|
end
|
|
4710
4957
|
|
|
4711
|
-
#
|
|
4958
|
+
# Connect a Teams channel as an alert destination
|
|
4712
4959
|
#
|
|
4713
4960
|
# Adds a channel by webhook URL, or updates the one already holding that
|
|
4714
|
-
# URL.
|
|
4961
|
+
# URL. Which alerts reach it is decided by /alert-rules — connecting a
|
|
4962
|
+
# channel routes nothing to it on its own. Responds 400 when the URL is not
|
|
4715
4963
|
# https or its host is not Microsoft-operated.
|
|
4716
4964
|
#
|
|
4717
4965
|
# POST /api/org/{orgId}/msteams/webhooks
|
|
@@ -4734,7 +4982,7 @@ module Infrawrench
|
|
|
4734
4982
|
)
|
|
4735
4983
|
end
|
|
4736
4984
|
|
|
4737
|
-
#
|
|
4985
|
+
# Disconnect a Teams channel
|
|
4738
4986
|
#
|
|
4739
4987
|
# DELETE /api/org/{orgId}/msteams/webhooks/{id}
|
|
4740
4988
|
#
|
|
@@ -4755,7 +5003,7 @@ module Infrawrench
|
|
|
4755
5003
|
)
|
|
4756
5004
|
end
|
|
4757
5005
|
|
|
4758
|
-
# Rename a Teams channel
|
|
5006
|
+
# Rename a Teams channel
|
|
4759
5007
|
#
|
|
4760
5008
|
# The webhook URL is immutable — remove the channel and re-add it to change
|
|
4761
5009
|
# it.
|
|
@@ -4798,8 +5046,8 @@ module Infrawrench
|
|
|
4798
5046
|
|
|
4799
5047
|
# List the organization's Teams channels
|
|
4800
5048
|
#
|
|
4801
|
-
# Returns the Teams channels alerts
|
|
4802
|
-
#
|
|
5049
|
+
# Returns the Teams channels alerts can be routed to. Which alerts reach
|
|
5050
|
+
# each one is decided by /alert-rules. Webhook URLs are never included.
|
|
4803
5051
|
#
|
|
4804
5052
|
# GET /api/org/{orgId}/msteams/status
|
|
4805
5053
|
#
|
|
@@ -4819,9 +5067,9 @@ module Infrawrench
|
|
|
4819
5067
|
|
|
4820
5068
|
# Post a test card to every configured Teams channel
|
|
4821
5069
|
#
|
|
4822
|
-
# Ignores
|
|
4823
|
-
#
|
|
4824
|
-
#
|
|
5070
|
+
# Ignores routing rules — every channel gets the test. Fails with the error
|
|
5071
|
+
# Microsoft returned when nothing could be delivered (HTTP 404 usually means
|
|
5072
|
+
# the Workflow was deleted or turned off).
|
|
4825
5073
|
#
|
|
4826
5074
|
# POST /api/org/{orgId}/msteams/test
|
|
4827
5075
|
#
|
|
@@ -7326,10 +7574,13 @@ module Infrawrench
|
|
|
7326
7574
|
@transport = transport
|
|
7327
7575
|
end
|
|
7328
7576
|
|
|
7329
|
-
#
|
|
7577
|
+
# Connect a Slack channel as an alert destination
|
|
7330
7578
|
#
|
|
7331
|
-
# Adds a channel, or
|
|
7332
|
-
#
|
|
7579
|
+
# Adds a channel as a possible destination, or refreshes the cached name of
|
|
7580
|
+
# one already added. Which alerts reach it is decided by /alert-rules; an
|
|
7581
|
+
# organization with no rules falls back to the default (everything except
|
|
7582
|
+
# drift, everywhere), so a freshly added channel starts receiving alerts
|
|
7583
|
+
# without a second step.
|
|
7333
7584
|
#
|
|
7334
7585
|
# POST /api/org/{orgId}/slack/channels
|
|
7335
7586
|
#
|
|
@@ -7353,7 +7604,7 @@ module Infrawrench
|
|
|
7353
7604
|
)
|
|
7354
7605
|
end
|
|
7355
7606
|
|
|
7356
|
-
#
|
|
7607
|
+
# Disconnect a channel
|
|
7357
7608
|
#
|
|
7358
7609
|
# DELETE /api/org/{orgId}/slack/channels/{id}
|
|
7359
7610
|
#
|
|
@@ -7374,7 +7625,7 @@ module Infrawrench
|
|
|
7374
7625
|
)
|
|
7375
7626
|
end
|
|
7376
7627
|
|
|
7377
|
-
#
|
|
7628
|
+
# Refresh a channel's cached name
|
|
7378
7629
|
#
|
|
7379
7630
|
# PATCH /api/org/{orgId}/slack/channels/{id}
|
|
7380
7631
|
#
|
|
@@ -7518,9 +7769,9 @@ module Infrawrench
|
|
|
7518
7769
|
|
|
7519
7770
|
# Post a test message to every configured channel
|
|
7520
7771
|
#
|
|
7521
|
-
# Ignores
|
|
7522
|
-
#
|
|
7523
|
-
#
|
|
7772
|
+
# Ignores routing rules — every channel gets the test. Fails with the Slack
|
|
7773
|
+
# error when nothing could be delivered (`not_in_channel` means the bot
|
|
7774
|
+
# needs inviting to a private channel).
|
|
7524
7775
|
#
|
|
7525
7776
|
# POST /api/org/{orgId}/slack/test
|
|
7526
7777
|
#
|
|
@@ -9039,6 +9290,8 @@ module Infrawrench
|
|
|
9039
9290
|
attr_reader :accounts
|
|
9040
9291
|
# @return [AgentsNamespace] `client.agents`
|
|
9041
9292
|
attr_reader :agents
|
|
9293
|
+
# @return [AlertRulesNamespace] `client.alert_rules`
|
|
9294
|
+
attr_reader :alert_rules
|
|
9042
9295
|
# @return [ApiKeysNamespace] `client.api_keys`
|
|
9043
9296
|
attr_reader :api_keys
|
|
9044
9297
|
# @return [ArtifactsNamespace] `client.artifacts`
|
|
@@ -9083,6 +9336,8 @@ module Infrawrench
|
|
|
9083
9336
|
attr_reader :dns
|
|
9084
9337
|
# @return [DockerNamespace] `client.docker`
|
|
9085
9338
|
attr_reader :docker
|
|
9339
|
+
# @return [EnvironmentDiffNamespace] `client.environment_diff`
|
|
9340
|
+
attr_reader :environment_diff
|
|
9086
9341
|
# @return [ExpiringNamespace] `client.expiring`
|
|
9087
9342
|
attr_reader :expiring
|
|
9088
9343
|
# @return [InvitationsNamespace] `client.invitations`
|
|
@@ -9160,6 +9415,7 @@ module Infrawrench
|
|
|
9160
9415
|
@access_requests = AccessRequestsNamespace.new(@transport)
|
|
9161
9416
|
@accounts = AccountsNamespace.new(@transport)
|
|
9162
9417
|
@agents = AgentsNamespace.new(@transport)
|
|
9418
|
+
@alert_rules = AlertRulesNamespace.new(@transport)
|
|
9163
9419
|
@api_keys = ApiKeysNamespace.new(@transport)
|
|
9164
9420
|
@artifacts = ArtifactsNamespace.new(@transport)
|
|
9165
9421
|
@associations = AssociationsNamespace.new(@transport)
|
|
@@ -9182,6 +9438,7 @@ module Infrawrench
|
|
|
9182
9438
|
@digest = DigestNamespace.new(@transport)
|
|
9183
9439
|
@dns = DnsNamespace.new(@transport)
|
|
9184
9440
|
@docker = DockerNamespace.new(@transport)
|
|
9441
|
+
@environment_diff = EnvironmentDiffNamespace.new(@transport)
|
|
9185
9442
|
@expiring = ExpiringNamespace.new(@transport)
|
|
9186
9443
|
@invitations = InvitationsNamespace.new(@transport)
|
|
9187
9444
|
@kv = KvNamespace.new(@transport)
|
data/lib/infrawrench/sdk.rb
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# infrawrench-sdk
|
|
3
|
+
# infrawrench-sdk v1.1.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
4
4
|
# https://github.com/Infrawrench/Infrawrench
|
|
5
5
|
#
|
|
6
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.1.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# infrawrench-sdk
|
|
3
|
+
# infrawrench-sdk v1.1.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
4
4
|
# https://github.com/Infrawrench/Infrawrench
|
|
5
5
|
#
|
|
6
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.1.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
data/lib/infrawrench/version.rb
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# infrawrench-sdk
|
|
3
|
+
# infrawrench-sdk v1.1.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
4
4
|
# https://github.com/Infrawrench/Infrawrench
|
|
5
5
|
#
|
|
6
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.1.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -15,5 +15,5 @@
|
|
|
15
15
|
# Kept in its own file so the gemspec can read the version without loading the
|
|
16
16
|
# client — a gemspec that pulls in net/http is a gemspec that can fail to parse.
|
|
17
17
|
module Infrawrench
|
|
18
|
-
VERSION = "
|
|
18
|
+
VERSION = "1.1.0"
|
|
19
19
|
end
|
data/lib/infrawrench-sdk.rb
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# infrawrench-sdk
|
|
3
|
+
# infrawrench-sdk v1.1.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
4
4
|
# https://github.com/Infrawrench/Infrawrench
|
|
5
5
|
#
|
|
6
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.1.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
data/sig/infrawrench/sdk.rbs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
# infrawrench-sdk
|
|
1
|
+
# infrawrench-sdk v1.1.0 | MIT | Copyright (c) 2026 Infrawrench LLC
|
|
2
2
|
# https://github.com/Infrawrench/Infrawrench
|
|
3
3
|
#
|
|
4
|
-
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version
|
|
4
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.1.0).
|
|
5
5
|
#
|
|
6
6
|
# DO NOT EDIT. Regenerate with:
|
|
7
7
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -230,6 +230,101 @@ module Infrawrench
|
|
|
230
230
|
"hiddenFieldKeys" => Array[String]
|
|
231
231
|
}
|
|
232
232
|
|
|
233
|
+
# One clause of a rule. A rule matches when every condition matches; 'or' is
|
|
234
|
+
# expressed by writing a second rule. A condition on a fact the alert does not
|
|
235
|
+
# carry never matches — in either direction, so `accountId notIn [x]` does not
|
|
236
|
+
# match an alert with no account.
|
|
237
|
+
#
|
|
238
|
+
# Spec schema: `AlertCondition`.
|
|
239
|
+
type alert_condition = { "field" => "trigger", "op" => "in" | "notIn", "values" => Array[alert_trigger] }
|
|
240
|
+
| { "field" => "severity", "op" => "gte" | "eq", "severity" => alert_severity }
|
|
241
|
+
| { "field" => "accountId", "op" => "in" | "notIn", "values" => Array[String] }
|
|
242
|
+
| { "field" => "pluginId", "op" => "in" | "notIn", "values" => Array[String] }
|
|
243
|
+
| { "field" => "resourceTypeId", "op" => "in" | "notIn", "values" => Array[String] }
|
|
244
|
+
| { "field" => "amountCents", "op" => "gte" | "lt", "cents" => Integer }
|
|
245
|
+
| { "field" => "key", "op" => "contains" | "notContains" | "eq", "value" => String }
|
|
246
|
+
| { "field" => "text", "op" => "contains" | "notContains", "value" => String }
|
|
247
|
+
|
|
248
|
+
# Spec schema: `AlertDelivery`.
|
|
249
|
+
type alert_delivery = {
|
|
250
|
+
"id" => String,
|
|
251
|
+
"trigger" => alert_trigger,
|
|
252
|
+
"severity" => alert_severity,
|
|
253
|
+
"title" => String,
|
|
254
|
+
"body" => String,
|
|
255
|
+
"ruleName" => String | nil,
|
|
256
|
+
"state" => "held" | "awaiting_ack" | "sent" | "acknowledged" | "escalated" | "expired",
|
|
257
|
+
"createdAt" => String,
|
|
258
|
+
"deliverAfter" => String | nil,
|
|
259
|
+
"escalateAt" => String | nil,
|
|
260
|
+
"acknowledgedAt" => String | nil,
|
|
261
|
+
"acknowledgedByUserId" => String | nil
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
# One place a matched alert goes. `push` reaches the organization's phones,
|
|
265
|
+
# still filtered by each member's own mutes — an organization rule decides
|
|
266
|
+
# whether the org is told, a member decides whether their phone rings.
|
|
267
|
+
#
|
|
268
|
+
# Spec schema: `AlertDestination`.
|
|
269
|
+
type alert_destination = { "kind" => "push" }
|
|
270
|
+
| { "kind" => "slack", "channelId" => String }
|
|
271
|
+
| { "kind" => "msteams", "webhookId" => String }
|
|
272
|
+
|
|
273
|
+
# Spec schema: `AlertRule`.
|
|
274
|
+
type alert_rule = {
|
|
275
|
+
"id" => String,
|
|
276
|
+
"name" => String,
|
|
277
|
+
"enabled" => bool,
|
|
278
|
+
"position" => Integer,
|
|
279
|
+
"conditions" => Array[alert_condition],
|
|
280
|
+
"destinations" => Array[alert_destination],
|
|
281
|
+
"continueOnMatch" => bool,
|
|
282
|
+
"quietHours" => quiet_hours,
|
|
283
|
+
"escalation" => escalation_policy
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
# Spec schema: `AlertRuleInput`.
|
|
287
|
+
type alert_rule_input = {
|
|
288
|
+
?"id" => String,
|
|
289
|
+
"name" => String,
|
|
290
|
+
?"enabled" => bool,
|
|
291
|
+
?"conditions" => Array[alert_condition],
|
|
292
|
+
?"destinations" => Array[alert_destination],
|
|
293
|
+
?"continueOnMatch" => bool,
|
|
294
|
+
?"quietHours" => quiet_hours,
|
|
295
|
+
?"escalation" => escalation_policy
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
# Spec schema: `AlertRulesResponse`.
|
|
299
|
+
type alert_rules_response = {
|
|
300
|
+
"rules" => Array[alert_rule],
|
|
301
|
+
"usingDefaults" => bool,
|
|
302
|
+
"slackChannels" => Array[{ "id" => String, "name" => String, "isPrivate" => bool }],
|
|
303
|
+
"msTeamsWebhooks" => Array[{ "id" => String, "label" => String }],
|
|
304
|
+
"accounts" => Array[{ "id" => String, "displayName" => String, "pluginId" => String }]
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
# Alert severity, ordered info < warning < critical.
|
|
308
|
+
#
|
|
309
|
+
# Spec schema: `AlertSeverity`.
|
|
310
|
+
type alert_severity = "info" | "warning" | "critical"
|
|
311
|
+
|
|
312
|
+
# A kind of alert that can be routed.
|
|
313
|
+
#
|
|
314
|
+
# Spec schema: `AlertTrigger`.
|
|
315
|
+
type alert_trigger = "syncIncidents"
|
|
316
|
+
| "budgetAlerts"
|
|
317
|
+
| "anomalyAlerts"
|
|
318
|
+
| "metricAlerts"
|
|
319
|
+
| "resourceDrift"
|
|
320
|
+
| "workflowPages"
|
|
321
|
+
| "providerIncidents"
|
|
322
|
+
| "expiryAlerts"
|
|
323
|
+
| "logMatchAlerts"
|
|
324
|
+
| "postureAlerts"
|
|
325
|
+
| "probeAlerts"
|
|
326
|
+
| "weeklyDigest"
|
|
327
|
+
|
|
233
328
|
# Spec schema: `AllocationRule`.
|
|
234
329
|
type allocation_rule = {
|
|
235
330
|
"id" => String,
|
|
@@ -1329,9 +1424,87 @@ module Infrawrench
|
|
|
1329
1424
|
?"enumValues" => Array[String]
|
|
1330
1425
|
}
|
|
1331
1426
|
|
|
1427
|
+
# Spec schema: `EnvironmentDiffEntry`.
|
|
1428
|
+
type environment_diff_entry = {
|
|
1429
|
+
"key" => String,
|
|
1430
|
+
"resourceTypeId" => String,
|
|
1431
|
+
"resourceTypeName" => String,
|
|
1432
|
+
"status" => "only-in-a" | "only-in-b" | "changed",
|
|
1433
|
+
"a" => environment_diff_resource_ref,
|
|
1434
|
+
"b" => environment_diff_resource_ref & untyped,
|
|
1435
|
+
"changes" => Array[environment_diff_field_change],
|
|
1436
|
+
"suppressedCount" => Integer
|
|
1437
|
+
}
|
|
1438
|
+
|
|
1439
|
+
# Spec schema: `EnvironmentDiffFieldChange`.
|
|
1440
|
+
type environment_diff_field_change = { "field" => String, ?"a" => untyped, ?"b" => untyped }
|
|
1441
|
+
|
|
1442
|
+
# Null when the resource exists only on B.
|
|
1443
|
+
#
|
|
1444
|
+
# Spec schema: `EnvironmentDiffResourceRef`.
|
|
1445
|
+
type environment_diff_resource_ref = {
|
|
1446
|
+
"resourceId" => String,
|
|
1447
|
+
"accountId" => String,
|
|
1448
|
+
"displayName" => String,
|
|
1449
|
+
"externalId" => String | nil
|
|
1450
|
+
}
|
|
1451
|
+
| nil
|
|
1452
|
+
|
|
1453
|
+
# Spec schema: `EnvironmentDiffResponse`.
|
|
1454
|
+
type environment_diff_response = {
|
|
1455
|
+
"a" => environment_diff_side_summary,
|
|
1456
|
+
"b" => environment_diff_side_summary,
|
|
1457
|
+
"pluginId" => plugin_id,
|
|
1458
|
+
"pluginName" => String,
|
|
1459
|
+
"types" => Array[environment_diff_type_summary],
|
|
1460
|
+
"entries" => Array[environment_diff_entry],
|
|
1461
|
+
"totals" => environment_diff_totals,
|
|
1462
|
+
"unavailableTypes" => Array[environment_diff_unavailable_type],
|
|
1463
|
+
"includeIdentityFields" => bool,
|
|
1464
|
+
"generatedAt" => String
|
|
1465
|
+
}
|
|
1466
|
+
|
|
1467
|
+
# Spec schema: `EnvironmentDiffSideSummary`.
|
|
1468
|
+
type environment_diff_side_summary = { "accountId" => String, "accountName" => String, "resourceCount" => Integer }
|
|
1469
|
+
|
|
1470
|
+
# Spec schema: `EnvironmentDiffTotals`.
|
|
1471
|
+
type environment_diff_totals = {
|
|
1472
|
+
"onlyInA" => Integer,
|
|
1473
|
+
"onlyInB" => Integer,
|
|
1474
|
+
"changed" => Integer,
|
|
1475
|
+
"identical" => Integer,
|
|
1476
|
+
"typesOnlyInA" => Integer,
|
|
1477
|
+
"typesOnlyInB" => Integer,
|
|
1478
|
+
"suppressedFieldChanges" => Integer
|
|
1479
|
+
}
|
|
1480
|
+
|
|
1481
|
+
# Spec schema: `EnvironmentDiffTypeSummary`.
|
|
1482
|
+
type environment_diff_type_summary = {
|
|
1483
|
+
"resourceTypeId" => String,
|
|
1484
|
+
"resourceTypeName" => String,
|
|
1485
|
+
"countA" => Integer,
|
|
1486
|
+
"countB" => Integer,
|
|
1487
|
+
"delta" => Integer,
|
|
1488
|
+
"onlyInA" => Integer,
|
|
1489
|
+
"onlyInB" => Integer,
|
|
1490
|
+
"changed" => Integer,
|
|
1491
|
+
"identical" => Integer,
|
|
1492
|
+
"missingFrom" => "a" | "b" | nil
|
|
1493
|
+
}
|
|
1494
|
+
|
|
1495
|
+
# Spec schema: `EnvironmentDiffUnavailableType`.
|
|
1496
|
+
type environment_diff_unavailable_type = { "resourceTypeId" => String, "resourceTypeName" => String, "message" => String }
|
|
1497
|
+
|
|
1332
1498
|
# Spec schema: `Error`.
|
|
1333
1499
|
type error = { "error" => String }
|
|
1334
1500
|
|
|
1501
|
+
# Notify these destinations too if nobody acknowledges within afterMinutes.
|
|
1502
|
+
# Acknowledgement comes from the button on the Slack message, so an alert
|
|
1503
|
+
# routed only to Teams or push will always escalate.
|
|
1504
|
+
#
|
|
1505
|
+
# Spec schema: `EscalationPolicy`.
|
|
1506
|
+
type escalation_policy = { "afterMinutes" => Integer, "destinations" => Array[alert_destination] } | nil
|
|
1507
|
+
|
|
1335
1508
|
# Spec schema: `ExpiryAlertSettings`.
|
|
1336
1509
|
type expiry_alert_settings = { "enabled" => bool, "leadDays" => Integer, "lastNotifiedAt" => String | nil }
|
|
1337
1510
|
|
|
@@ -1810,58 +1983,13 @@ module Infrawrench
|
|
|
1810
1983
|
type ms_teams_status = { "webhooks" => Array[ms_teams_webhook] }
|
|
1811
1984
|
|
|
1812
1985
|
# Spec schema: `MsTeamsWebhook`.
|
|
1813
|
-
type ms_teams_webhook = {
|
|
1814
|
-
"id" => String,
|
|
1815
|
-
"label" => String,
|
|
1816
|
-
"urlHint" => String,
|
|
1817
|
-
"syncIncidents" => bool,
|
|
1818
|
-
"budgetAlerts" => bool,
|
|
1819
|
-
"anomalyAlerts" => bool,
|
|
1820
|
-
"metricAlerts" => bool,
|
|
1821
|
-
"resourceDrift" => bool,
|
|
1822
|
-
"workflowPages" => bool,
|
|
1823
|
-
"providerIncidents" => bool,
|
|
1824
|
-
"expiryAlerts" => bool,
|
|
1825
|
-
"logMatchAlerts" => bool,
|
|
1826
|
-
"postureAlerts" => bool,
|
|
1827
|
-
"probeAlerts" => bool,
|
|
1828
|
-
"weeklyDigest" => bool
|
|
1829
|
-
}
|
|
1986
|
+
type ms_teams_webhook = { "id" => String, "label" => String, "urlHint" => String }
|
|
1830
1987
|
|
|
1831
1988
|
# Spec schema: `MsTeamsWebhookCreate`.
|
|
1832
|
-
type ms_teams_webhook_create = {
|
|
1833
|
-
"label" => String,
|
|
1834
|
-
"url" => String,
|
|
1835
|
-
?"syncIncidents" => bool,
|
|
1836
|
-
?"budgetAlerts" => bool,
|
|
1837
|
-
?"anomalyAlerts" => bool,
|
|
1838
|
-
?"metricAlerts" => bool,
|
|
1839
|
-
?"resourceDrift" => bool,
|
|
1840
|
-
?"workflowPages" => bool,
|
|
1841
|
-
?"providerIncidents" => bool,
|
|
1842
|
-
?"expiryAlerts" => bool,
|
|
1843
|
-
?"logMatchAlerts" => bool,
|
|
1844
|
-
?"postureAlerts" => bool,
|
|
1845
|
-
?"probeAlerts" => bool,
|
|
1846
|
-
?"weeklyDigest" => bool
|
|
1847
|
-
}
|
|
1989
|
+
type ms_teams_webhook_create = { "label" => String, "url" => String }
|
|
1848
1990
|
|
|
1849
1991
|
# Spec schema: `MsTeamsWebhookUpdate`.
|
|
1850
|
-
type ms_teams_webhook_update = {
|
|
1851
|
-
?"label" => String,
|
|
1852
|
-
?"syncIncidents" => bool,
|
|
1853
|
-
?"budgetAlerts" => bool,
|
|
1854
|
-
?"anomalyAlerts" => bool,
|
|
1855
|
-
?"metricAlerts" => bool,
|
|
1856
|
-
?"resourceDrift" => bool,
|
|
1857
|
-
?"workflowPages" => bool,
|
|
1858
|
-
?"providerIncidents" => bool,
|
|
1859
|
-
?"expiryAlerts" => bool,
|
|
1860
|
-
?"logMatchAlerts" => bool,
|
|
1861
|
-
?"postureAlerts" => bool,
|
|
1862
|
-
?"probeAlerts" => bool,
|
|
1863
|
-
?"weeklyDigest" => bool
|
|
1864
|
-
}
|
|
1992
|
+
type ms_teams_webhook_update = { "label" => String }
|
|
1865
1993
|
|
|
1866
1994
|
# Spec schema: `NoSqlCommandRequest`.
|
|
1867
1995
|
type no_sql_command_request = {
|
|
@@ -2460,6 +2588,19 @@ module Infrawrench
|
|
|
2460
2588
|
?"accountId" => String
|
|
2461
2589
|
}
|
|
2462
2590
|
|
|
2591
|
+
# A recurring local-time window during which the rule holds its alerts. Held,
|
|
2592
|
+
# not dropped — a held alert is queued and delivered when the window closes.
|
|
2593
|
+
#
|
|
2594
|
+
# Spec schema: `QuietHours`.
|
|
2595
|
+
type quiet_hours = {
|
|
2596
|
+
"timezone" => String,
|
|
2597
|
+
"startMinute" => Integer,
|
|
2598
|
+
"endMinute" => Integer,
|
|
2599
|
+
"days" => Array[Integer],
|
|
2600
|
+
"urgentOverride" => alert_severity & (String | nil)
|
|
2601
|
+
}
|
|
2602
|
+
| nil
|
|
2603
|
+
|
|
2463
2604
|
# Spec schema: `ReauthenticationRequired`.
|
|
2464
2605
|
type reauthentication_required = { "error" => String, "code" => "reauthentication_required" }
|
|
2465
2606
|
|
|
@@ -3267,19 +3408,7 @@ module Infrawrench
|
|
|
3267
3408
|
"installationId" => String,
|
|
3268
3409
|
"channelId" => String,
|
|
3269
3410
|
"channelName" => String,
|
|
3270
|
-
"isPrivate" => bool
|
|
3271
|
-
"syncIncidents" => bool,
|
|
3272
|
-
"budgetAlerts" => bool,
|
|
3273
|
-
"anomalyAlerts" => bool,
|
|
3274
|
-
"metricAlerts" => bool,
|
|
3275
|
-
"resourceDrift" => bool,
|
|
3276
|
-
"workflowPages" => bool,
|
|
3277
|
-
"providerIncidents" => bool,
|
|
3278
|
-
"expiryAlerts" => bool,
|
|
3279
|
-
"logMatchAlerts" => bool,
|
|
3280
|
-
"postureAlerts" => bool,
|
|
3281
|
-
"probeAlerts" => bool,
|
|
3282
|
-
"weeklyDigest" => bool
|
|
3411
|
+
"isPrivate" => bool
|
|
3283
3412
|
}
|
|
3284
3413
|
|
|
3285
3414
|
# Spec schema: `SlackChannelCreate`.
|
|
@@ -3287,36 +3416,11 @@ module Infrawrench
|
|
|
3287
3416
|
"installationId" => String,
|
|
3288
3417
|
"channelId" => String,
|
|
3289
3418
|
"channelName" => String,
|
|
3290
|
-
?"isPrivate" => bool
|
|
3291
|
-
?"syncIncidents" => bool,
|
|
3292
|
-
?"budgetAlerts" => bool,
|
|
3293
|
-
?"anomalyAlerts" => bool,
|
|
3294
|
-
?"metricAlerts" => bool,
|
|
3295
|
-
?"resourceDrift" => bool,
|
|
3296
|
-
?"workflowPages" => bool,
|
|
3297
|
-
?"providerIncidents" => bool,
|
|
3298
|
-
?"expiryAlerts" => bool,
|
|
3299
|
-
?"logMatchAlerts" => bool,
|
|
3300
|
-
?"postureAlerts" => bool,
|
|
3301
|
-
?"probeAlerts" => bool,
|
|
3302
|
-
?"weeklyDigest" => bool
|
|
3419
|
+
?"isPrivate" => bool
|
|
3303
3420
|
}
|
|
3304
3421
|
|
|
3305
3422
|
# Spec schema: `SlackChannelUpdate`.
|
|
3306
|
-
type slack_channel_update = {
|
|
3307
|
-
?"syncIncidents" => bool,
|
|
3308
|
-
?"budgetAlerts" => bool,
|
|
3309
|
-
?"anomalyAlerts" => bool,
|
|
3310
|
-
?"metricAlerts" => bool,
|
|
3311
|
-
?"resourceDrift" => bool,
|
|
3312
|
-
?"workflowPages" => bool,
|
|
3313
|
-
?"providerIncidents" => bool,
|
|
3314
|
-
?"expiryAlerts" => bool,
|
|
3315
|
-
?"logMatchAlerts" => bool,
|
|
3316
|
-
?"postureAlerts" => bool,
|
|
3317
|
-
?"probeAlerts" => bool,
|
|
3318
|
-
?"weeklyDigest" => bool
|
|
3319
|
-
}
|
|
3423
|
+
type slack_channel_update = { "channelName" => String }
|
|
3320
3424
|
|
|
3321
3425
|
# Spec schema: `SlackInstallation`.
|
|
3322
3426
|
type slack_installation = { "id" => String, "teamId" => String, "teamName" => String | nil }
|
|
@@ -3716,6 +3820,7 @@ module Infrawrench
|
|
|
3716
3820
|
| "expiring"
|
|
3717
3821
|
| "posture"
|
|
3718
3822
|
| "dns"
|
|
3823
|
+
| "environment-diff"
|
|
3719
3824
|
| "ssh-fanout"
|
|
3720
3825
|
| "metric-alerts"
|
|
3721
3826
|
| "probes"
|
|
@@ -3937,6 +4042,21 @@ module Infrawrench
|
|
|
3937
4042
|
def accounts: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[agent_vm_account]
|
|
3938
4043
|
end
|
|
3939
4044
|
|
|
4045
|
+
class AlertRulesDeliveriesNamespace
|
|
4046
|
+
def initialize: (Transport) -> void
|
|
4047
|
+
def ack: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "acknowledged" => bool, ?"alreadyAcknowledgedBy" => String | nil, ?"reason" => "not_pending" | "already_escalated" | "already_acknowledged", ?"title" => String }
|
|
4048
|
+
def cancel: (?org_id: String?, ?body: { "ids" => Array[String] }?, ?request_options: Hash[Symbol, untyped]?) -> { "cancelled" => Integer }
|
|
4049
|
+
def list: (?org_id: String?, ?limit: Integer?, ?request_options: Hash[Symbol, untyped]?) -> Array[alert_delivery]
|
|
4050
|
+
end
|
|
4051
|
+
|
|
4052
|
+
class AlertRulesNamespace
|
|
4053
|
+
attr_reader deliveries: AlertRulesDeliveriesNamespace
|
|
4054
|
+
def initialize: (Transport) -> void
|
|
4055
|
+
def adopt_defaults: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "rules" => Array[alert_rule], "adopted" => bool }
|
|
4056
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> alert_rules_response
|
|
4057
|
+
def update: (?org_id: String?, ?body: { "rules" => Array[alert_rule_input] }?, ?request_options: Hash[Symbol, untyped]?) -> { "rules" => Array[alert_rule] }
|
|
4058
|
+
end
|
|
4059
|
+
|
|
3940
4060
|
class ApiKeysNamespace
|
|
3941
4061
|
def initialize: (Transport) -> void
|
|
3942
4062
|
def create: (body: create_api_key_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> created_api_key
|
|
@@ -4177,6 +4297,11 @@ module Infrawrench
|
|
|
4177
4297
|
def command: (body: docker_command_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> docker_command_response
|
|
4178
4298
|
end
|
|
4179
4299
|
|
|
4300
|
+
class EnvironmentDiffNamespace
|
|
4301
|
+
def initialize: (Transport) -> void
|
|
4302
|
+
def get: (a: String, b: String, ?org_id: String?, ?resource_type_id: String?, ?include_identity_fields: "true" | "false"?, ?request_options: Hash[Symbol, untyped]?) -> environment_diff_response
|
|
4303
|
+
end
|
|
4304
|
+
|
|
4180
4305
|
class ExpiringSettingsNamespace
|
|
4181
4306
|
def initialize: (Transport) -> void
|
|
4182
4307
|
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> expiry_alert_settings
|
|
@@ -4577,6 +4702,7 @@ module Infrawrench
|
|
|
4577
4702
|
attr_reader access_requests: AccessRequestsNamespace
|
|
4578
4703
|
attr_reader accounts: AccountsNamespace
|
|
4579
4704
|
attr_reader agents: AgentsNamespace
|
|
4705
|
+
attr_reader alert_rules: AlertRulesNamespace
|
|
4580
4706
|
attr_reader api_keys: ApiKeysNamespace
|
|
4581
4707
|
attr_reader artifacts: ArtifactsNamespace
|
|
4582
4708
|
attr_reader associations: AssociationsNamespace
|
|
@@ -4599,6 +4725,7 @@ module Infrawrench
|
|
|
4599
4725
|
attr_reader digest: DigestNamespace
|
|
4600
4726
|
attr_reader dns: DnsNamespace
|
|
4601
4727
|
attr_reader docker: DockerNamespace
|
|
4728
|
+
attr_reader environment_diff: EnvironmentDiffNamespace
|
|
4602
4729
|
attr_reader expiring: ExpiringNamespace
|
|
4603
4730
|
attr_reader invitations: InvitationsNamespace
|
|
4604
4731
|
attr_reader kv: KvNamespace
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: infrawrench-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 1.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Infrawrench LLC
|
|
@@ -11,7 +11,7 @@ bindir: bin
|
|
|
11
11
|
cert_chain: []
|
|
12
12
|
date: 2026-08-08 00:00:00.000000000 Z
|
|
13
13
|
dependencies: []
|
|
14
|
-
description: Generated Ruby client for the Infrawrench API (
|
|
14
|
+
description: Generated Ruby client for the Infrawrench API (v1.1.0). Covers the published
|
|
15
15
|
API surface only — operations marked x-internal in the spec are not generated. No
|
|
16
16
|
runtime dependencies.
|
|
17
17
|
email:
|
|
@@ -58,5 +58,5 @@ requirements: []
|
|
|
58
58
|
rubygems_version: 3.5.22
|
|
59
59
|
signing_key:
|
|
60
60
|
specification_version: 4
|
|
61
|
-
summary: Generated Ruby client for the Infrawrench API (
|
|
61
|
+
summary: Generated Ruby client for the Infrawrench API (v1.1.0).
|
|
62
62
|
test_files: []
|