infrawrench-sdk 1.35.0 → 1.37.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 +314 -6
- 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 +162 -2
- 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: 0f11289beb11fa6b4a5c0e9c7c4f8f9e419991a78ff4133eae4b42577ccfa327
|
|
4
|
+
data.tar.gz: f71bf753dbbab92d81a6d2404e0c6cd6610782dd2a70fc6f282c911870dd1809
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3052007764473ba1d6bd04a1dea4691d692a80ee30d44b9d9885436d07f1e18b5dad89e5dd419bef80e6b345fdbf6fda82cc970d431fb9473c3ea1ea94fa8f9e
|
|
7
|
+
data.tar.gz: 6db99b1494f0d66e8b0e3c1dc3bda095d05f77cff10a3ebffa1cdba3c752c50950f6c73357a661d697e8b84f7bfcace74612f8ba4caf494f80fa52199528c745
|
data/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# infrawrench-sdk
|
|
2
2
|
|
|
3
|
-
Generated Ruby client for the Infrawrench API (API version `1.
|
|
3
|
+
Generated Ruby client for the Infrawrench API (API version `1.37.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
|
+
734 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 v1.
|
|
3
|
+
# infrawrench-sdk v1.37.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 1.
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.37.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 (v1.
|
|
21
|
-
spec.description = "Generated Ruby client for the Infrawrench API (v1.
|
|
20
|
+
spec.summary = "Generated Ruby client for the Infrawrench API (v1.37.0)."
|
|
21
|
+
spec.description = "Generated Ruby client for the Infrawrench API (v1.37.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 v1.
|
|
3
|
+
# infrawrench-sdk v1.37.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 1.
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.37.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -1871,6 +1871,125 @@ module Infrawrench
|
|
|
1871
1871
|
end
|
|
1872
1872
|
end
|
|
1873
1873
|
|
|
1874
|
+
# `client.backups.drills`
|
|
1875
|
+
class BackupsDrillsNamespace
|
|
1876
|
+
# @api private
|
|
1877
|
+
# @param transport [Transport]
|
|
1878
|
+
def initialize(transport)
|
|
1879
|
+
@transport = transport
|
|
1880
|
+
end
|
|
1881
|
+
|
|
1882
|
+
# Record a restore drill
|
|
1883
|
+
#
|
|
1884
|
+
# A `verified` drill **must** carry the measured time: an RPO comes from the
|
|
1885
|
+
# backup, and an RTO can only come from somebody with a stopwatch — that
|
|
1886
|
+
# number is the entire point of the exercise. A `blocked` drill must not
|
|
1887
|
+
# carry one, because it never started.
|
|
1888
|
+
#
|
|
1889
|
+
# Takes `resources:write`, not a settings permission: recording a drill is
|
|
1890
|
+
# reporting what you did, and the person who spent Saturday restoring a
|
|
1891
|
+
# database is rarely the person who set the recovery objective.
|
|
1892
|
+
#
|
|
1893
|
+
# POST /api/org/{orgId}/backups/drills
|
|
1894
|
+
#
|
|
1895
|
+
# Raises on 400: Bad request
|
|
1896
|
+
#
|
|
1897
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1898
|
+
# constructed with.
|
|
1899
|
+
# @param body [Hash, nil] Request body, shaped as `RestoreDrillCreate`.
|
|
1900
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1901
|
+
# @return [Hash] Parsed JSON, shaped as `RestoreDrill` — see `sig/infrawrench/sdk.rbs`.
|
|
1902
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1903
|
+
def create(org_id: nil, body: nil, request_options: nil)
|
|
1904
|
+
@transport.request(
|
|
1905
|
+
http_method: "POST",
|
|
1906
|
+
path: "/api/org/{orgId}/backups/drills",
|
|
1907
|
+
path_params: { "orgId" => org_id },
|
|
1908
|
+
body: body,
|
|
1909
|
+
request_options: request_options
|
|
1910
|
+
)
|
|
1911
|
+
end
|
|
1912
|
+
|
|
1913
|
+
# Delete a recorded drill
|
|
1914
|
+
#
|
|
1915
|
+
# For one recorded against the wrong resource or the wrong date. Audited —
|
|
1916
|
+
# deleting evidence that a restore failed is exactly the edit a reviewer
|
|
1917
|
+
# would want to know about.
|
|
1918
|
+
#
|
|
1919
|
+
# DELETE /api/org/{orgId}/backups/drills/{drillId}
|
|
1920
|
+
#
|
|
1921
|
+
# Raises on 404: Not found
|
|
1922
|
+
#
|
|
1923
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1924
|
+
# constructed with.
|
|
1925
|
+
# @param drill_id [String]
|
|
1926
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1927
|
+
# @return [nil] This endpoint returns no content.
|
|
1928
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1929
|
+
def delete(drill_id:, org_id: nil, request_options: nil)
|
|
1930
|
+
@transport.request(
|
|
1931
|
+
http_method: "DELETE",
|
|
1932
|
+
path: "/api/org/{orgId}/backups/drills/{drillId}",
|
|
1933
|
+
path_params: { "orgId" => org_id, "drillId" => drill_id },
|
|
1934
|
+
accept: :empty,
|
|
1935
|
+
request_options: request_options
|
|
1936
|
+
)
|
|
1937
|
+
end
|
|
1938
|
+
|
|
1939
|
+
# Where every protected resource stands on restore
|
|
1940
|
+
#
|
|
1941
|
+
# Backup coverage answers 'is there a backup'. This answers 'does it
|
|
1942
|
+
# restore, and how long does it take' — a different question, and the one
|
|
1943
|
+
# routinely answered wrongly on the day.
|
|
1944
|
+
#
|
|
1945
|
+
# A drill is a **record that somebody tried**, not an automated restore:
|
|
1946
|
+
# restoring a customer's database unattended costs real money, can collide
|
|
1947
|
+
# with production, and cannot be generically verified. What the product can
|
|
1948
|
+
# do is make the exercise scheduled, recorded and visible when it lapses.
|
|
1949
|
+
#
|
|
1950
|
+
# GET /api/org/{orgId}/backups/drills
|
|
1951
|
+
#
|
|
1952
|
+
# Raises on 400: Bad request
|
|
1953
|
+
#
|
|
1954
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1955
|
+
# constructed with.
|
|
1956
|
+
# @param valid_days [Integer, nil] How long a verified drill counts for. Defaults to 180
|
|
1957
|
+
# days.
|
|
1958
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1959
|
+
# @return [Hash] Parsed JSON, shaped as `DrillCoverageResponse` — see
|
|
1960
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
1961
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1962
|
+
def get(org_id: nil, valid_days: nil, request_options: nil)
|
|
1963
|
+
@transport.request(
|
|
1964
|
+
http_method: "GET",
|
|
1965
|
+
path: "/api/org/{orgId}/backups/drills",
|
|
1966
|
+
path_params: { "orgId" => org_id },
|
|
1967
|
+
query: { "validDays" => valid_days },
|
|
1968
|
+
request_options: request_options
|
|
1969
|
+
)
|
|
1970
|
+
end
|
|
1971
|
+
|
|
1972
|
+
# List recorded restore drills
|
|
1973
|
+
#
|
|
1974
|
+
# GET /api/org/{orgId}/backups/drills/log
|
|
1975
|
+
#
|
|
1976
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1977
|
+
# constructed with.
|
|
1978
|
+
# @param resource_id [String, nil]
|
|
1979
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1980
|
+
# @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
|
|
1981
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1982
|
+
def log(org_id: nil, resource_id: nil, request_options: nil)
|
|
1983
|
+
@transport.request(
|
|
1984
|
+
http_method: "GET",
|
|
1985
|
+
path: "/api/org/{orgId}/backups/drills/log",
|
|
1986
|
+
path_params: { "orgId" => org_id },
|
|
1987
|
+
query: { "resourceId" => resource_id },
|
|
1988
|
+
request_options: request_options
|
|
1989
|
+
)
|
|
1990
|
+
end
|
|
1991
|
+
end
|
|
1992
|
+
|
|
1874
1993
|
# `client.backups.policies`
|
|
1875
1994
|
class BackupsPoliciesNamespace
|
|
1876
1995
|
# @api private
|
|
@@ -1988,6 +2107,8 @@ module Infrawrench
|
|
|
1988
2107
|
|
|
1989
2108
|
# `client.backups`
|
|
1990
2109
|
class BackupsNamespace
|
|
2110
|
+
# @return [BackupsDrillsNamespace] `client.backups.drills`
|
|
2111
|
+
attr_reader :drills
|
|
1991
2112
|
# @return [BackupsPoliciesNamespace] `client.backups.policies`
|
|
1992
2113
|
attr_reader :policies
|
|
1993
2114
|
|
|
@@ -1995,6 +2116,7 @@ module Infrawrench
|
|
|
1995
2116
|
# @param transport [Transport]
|
|
1996
2117
|
def initialize(transport)
|
|
1997
2118
|
@transport = transport
|
|
2119
|
+
@drills = BackupsDrillsNamespace.new(@transport)
|
|
1998
2120
|
@policies = BackupsPoliciesNamespace.new(@transport)
|
|
1999
2121
|
end
|
|
2000
2122
|
|
|
@@ -11791,6 +11913,189 @@ module Infrawrench
|
|
|
11791
11913
|
end
|
|
11792
11914
|
end
|
|
11793
11915
|
|
|
11916
|
+
# `client.query_monitors.get`
|
|
11917
|
+
class QueryMonitorsGetNamespace
|
|
11918
|
+
# @api private
|
|
11919
|
+
# @param transport [Transport]
|
|
11920
|
+
def initialize(transport)
|
|
11921
|
+
@transport = transport
|
|
11922
|
+
end
|
|
11923
|
+
|
|
11924
|
+
# List query monitors
|
|
11925
|
+
#
|
|
11926
|
+
# GET /api/org/{orgId}/query-monitors
|
|
11927
|
+
#
|
|
11928
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
11929
|
+
# constructed with.
|
|
11930
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
11931
|
+
# @return [Hash] Parsed JSON, shaped as `QueryMonitorList` — see `sig/infrawrench/sdk.rbs`.
|
|
11932
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
11933
|
+
def get(org_id: nil, request_options: nil)
|
|
11934
|
+
@transport.request(
|
|
11935
|
+
http_method: "GET",
|
|
11936
|
+
path: "/api/org/{orgId}/query-monitors",
|
|
11937
|
+
path_params: { "orgId" => org_id },
|
|
11938
|
+
request_options: request_options
|
|
11939
|
+
)
|
|
11940
|
+
end
|
|
11941
|
+
|
|
11942
|
+
# Get one query monitor
|
|
11943
|
+
#
|
|
11944
|
+
# GET /api/org/{orgId}/query-monitors/{monitorId}
|
|
11945
|
+
#
|
|
11946
|
+
# Raises on 404: Not found
|
|
11947
|
+
#
|
|
11948
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
11949
|
+
# constructed with.
|
|
11950
|
+
# @param monitor_id [String]
|
|
11951
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
11952
|
+
# @return [Hash] Parsed JSON, shaped as `QueryMonitor` — see `sig/infrawrench/sdk.rbs`.
|
|
11953
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
11954
|
+
def get_org_org_id_query_monitors_monitor_id(monitor_id:, org_id: nil, request_options: nil)
|
|
11955
|
+
@transport.request(
|
|
11956
|
+
http_method: "GET",
|
|
11957
|
+
path: "/api/org/{orgId}/query-monitors/{monitorId}",
|
|
11958
|
+
path_params: { "orgId" => org_id, "monitorId" => monitor_id },
|
|
11959
|
+
request_options: request_options
|
|
11960
|
+
)
|
|
11961
|
+
end
|
|
11962
|
+
end
|
|
11963
|
+
|
|
11964
|
+
# `client.query_monitors`
|
|
11965
|
+
class QueryMonitorsNamespace
|
|
11966
|
+
# @return [QueryMonitorsGetNamespace] `client.query_monitors.get`
|
|
11967
|
+
attr_reader :get
|
|
11968
|
+
|
|
11969
|
+
# @api private
|
|
11970
|
+
# @param transport [Transport]
|
|
11971
|
+
def initialize(transport)
|
|
11972
|
+
@transport = transport
|
|
11973
|
+
@get = QueryMonitorsGetNamespace.new(@transport)
|
|
11974
|
+
end
|
|
11975
|
+
|
|
11976
|
+
# Create a query monitor
|
|
11977
|
+
#
|
|
11978
|
+
# A monitor may only run `select`, `with`, `show` or `explain`, and only a
|
|
11979
|
+
# **single** statement. That is a deliberate allowlist of leading keywords
|
|
11980
|
+
# rather than a denylist of dangerous ones: a denylist has to be right about
|
|
11981
|
+
# every dialect's spelling of every destructive verb, forever, and only has
|
|
11982
|
+
# to be wrong once. Comments are stripped before the check, so `--
|
|
11983
|
+
# harmless\nDROP TABLE x` is rejected, and `SELECT 1; DROP TABLE x` is
|
|
11984
|
+
# rejected by the single-statement rule.
|
|
11985
|
+
#
|
|
11986
|
+
# Takes `resources:execute`, like the SQL editor: saving a monitor arranges
|
|
11987
|
+
# for a query to run against a customer database on a schedule, forever,
|
|
11988
|
+
# which is a strictly larger act than running one while watching it.
|
|
11989
|
+
#
|
|
11990
|
+
# POST /api/org/{orgId}/query-monitors
|
|
11991
|
+
#
|
|
11992
|
+
# Raises on 400: Bad request
|
|
11993
|
+
#
|
|
11994
|
+
# Raises on 404: Not found
|
|
11995
|
+
#
|
|
11996
|
+
# Raises on 409: Conflict
|
|
11997
|
+
#
|
|
11998
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
11999
|
+
# constructed with.
|
|
12000
|
+
# @param body [Hash, nil] Request body, shaped as `QueryMonitorCreate`.
|
|
12001
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
12002
|
+
# @return [Hash] Parsed JSON, shaped as `QueryMonitor` — see `sig/infrawrench/sdk.rbs`.
|
|
12003
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
12004
|
+
def create(org_id: nil, body: nil, request_options: nil)
|
|
12005
|
+
@transport.request(
|
|
12006
|
+
http_method: "POST",
|
|
12007
|
+
path: "/api/org/{orgId}/query-monitors",
|
|
12008
|
+
path_params: { "orgId" => org_id },
|
|
12009
|
+
body: body,
|
|
12010
|
+
request_options: request_options
|
|
12011
|
+
)
|
|
12012
|
+
end
|
|
12013
|
+
|
|
12014
|
+
# Delete a query monitor
|
|
12015
|
+
#
|
|
12016
|
+
# DELETE /api/org/{orgId}/query-monitors/{monitorId}
|
|
12017
|
+
#
|
|
12018
|
+
# Raises on 404: Not found
|
|
12019
|
+
#
|
|
12020
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
12021
|
+
# constructed with.
|
|
12022
|
+
# @param monitor_id [String]
|
|
12023
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
12024
|
+
# @return [nil] This endpoint returns no content.
|
|
12025
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
12026
|
+
def delete(monitor_id:, org_id: nil, request_options: nil)
|
|
12027
|
+
@transport.request(
|
|
12028
|
+
http_method: "DELETE",
|
|
12029
|
+
path: "/api/org/{orgId}/query-monitors/{monitorId}",
|
|
12030
|
+
path_params: { "orgId" => org_id, "monitorId" => monitor_id },
|
|
12031
|
+
accept: :empty,
|
|
12032
|
+
request_options: request_options
|
|
12033
|
+
)
|
|
12034
|
+
end
|
|
12035
|
+
|
|
12036
|
+
# Run a query once without saving it
|
|
12037
|
+
#
|
|
12038
|
+
# The editor's 'try it' button. Goes through the same read-only guard as a
|
|
12039
|
+
# scheduled run — a query that could not be saved as a monitor must not be
|
|
12040
|
+
# runnable through the monitor's own preview — and applies the threshold, so
|
|
12041
|
+
# the answer says whether it *would* be breaching rather than leaving the
|
|
12042
|
+
# reader to compare two numbers.
|
|
12043
|
+
#
|
|
12044
|
+
# POST /api/org/{orgId}/query-monitors/test
|
|
12045
|
+
#
|
|
12046
|
+
# Raises on 400: Bad request
|
|
12047
|
+
#
|
|
12048
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
12049
|
+
# constructed with.
|
|
12050
|
+
# @param body [Hash, nil] Request body, shaped as `QueryMonitorCreate`.
|
|
12051
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
12052
|
+
# @return [Hash] Parsed JSON, shaped as `QueryMonitorTestResult` — see
|
|
12053
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
12054
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
12055
|
+
def test(org_id: nil, body: nil, request_options: nil)
|
|
12056
|
+
@transport.request(
|
|
12057
|
+
http_method: "POST",
|
|
12058
|
+
path: "/api/org/{orgId}/query-monitors/test",
|
|
12059
|
+
path_params: { "orgId" => org_id },
|
|
12060
|
+
body: body,
|
|
12061
|
+
request_options: request_options
|
|
12062
|
+
)
|
|
12063
|
+
end
|
|
12064
|
+
|
|
12065
|
+
# Edit a query monitor
|
|
12066
|
+
#
|
|
12067
|
+
# Omitted fields are left alone and the result is validated after merging.
|
|
12068
|
+
# Changing the query, the mode, the operator or the threshold **re-arms**
|
|
12069
|
+
# the monitor: the stored breach streak was accumulated against a different
|
|
12070
|
+
# question, and carrying it forward would fire an alert on the first run of
|
|
12071
|
+
# a rule nobody has tested.
|
|
12072
|
+
#
|
|
12073
|
+
# PATCH /api/org/{orgId}/query-monitors/{monitorId}
|
|
12074
|
+
#
|
|
12075
|
+
# Raises on 400: Bad request
|
|
12076
|
+
#
|
|
12077
|
+
# Raises on 404: Not found
|
|
12078
|
+
#
|
|
12079
|
+
# Raises on 409: Conflict
|
|
12080
|
+
#
|
|
12081
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
12082
|
+
# constructed with.
|
|
12083
|
+
# @param monitor_id [String]
|
|
12084
|
+
# @param body [Hash, nil] Request body, shaped as `QueryMonitorUpdate`.
|
|
12085
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
12086
|
+
# @return [Hash] Parsed JSON, shaped as `QueryMonitor` — see `sig/infrawrench/sdk.rbs`.
|
|
12087
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
12088
|
+
def update(monitor_id:, org_id: nil, body: nil, request_options: nil)
|
|
12089
|
+
@transport.request(
|
|
12090
|
+
http_method: "PATCH",
|
|
12091
|
+
path: "/api/org/{orgId}/query-monitors/{monitorId}",
|
|
12092
|
+
path_params: { "orgId" => org_id, "monitorId" => monitor_id },
|
|
12093
|
+
body: body,
|
|
12094
|
+
request_options: request_options
|
|
12095
|
+
)
|
|
12096
|
+
end
|
|
12097
|
+
end
|
|
12098
|
+
|
|
11794
12099
|
# `client.quotas.settings`
|
|
11795
12100
|
class QuotasSettingsNamespace
|
|
11796
12101
|
# @api private
|
|
@@ -15910,10 +16215,10 @@ module Infrawrench
|
|
|
15910
16215
|
# no trend and no breakdown — those belong on the page you open when you do
|
|
15911
16216
|
# walk over.
|
|
15912
16217
|
#
|
|
15913
|
-
#
|
|
15914
|
-
# health — each guarded independently, because a television
|
|
15915
|
-
# because one query threw is showing nothing to a room that
|
|
15916
|
-
# it.
|
|
16218
|
+
# Four sources — declared incidents, synthetic probes, query monitors and
|
|
16219
|
+
# account sync health — each guarded independently, because a television
|
|
16220
|
+
# that goes blank because one query threw is showing nothing to a room that
|
|
16221
|
+
# was relying on it.
|
|
15917
16222
|
#
|
|
15918
16223
|
# Session-authenticated on purpose: unlike the calendar feed or a public
|
|
15919
16224
|
# status page, this carries incident titles, probe names and account names,
|
|
@@ -16539,6 +16844,8 @@ module Infrawrench
|
|
|
16539
16844
|
attr_reader :probes
|
|
16540
16845
|
# @return [ProfileNamespace] `client.profile`
|
|
16541
16846
|
attr_reader :profile
|
|
16847
|
+
# @return [QueryMonitorsNamespace] `client.query_monitors`
|
|
16848
|
+
attr_reader :query_monitors
|
|
16542
16849
|
# @return [QuotasNamespace] `client.quotas`
|
|
16543
16850
|
attr_reader :quotas
|
|
16544
16851
|
# @return [ResourcesNamespace] `client.resources`
|
|
@@ -16666,6 +16973,7 @@ module Infrawrench
|
|
|
16666
16973
|
@posture = PostureNamespace.new(@transport)
|
|
16667
16974
|
@probes = ProbesNamespace.new(@transport)
|
|
16668
16975
|
@profile = ProfileNamespace.new(@transport)
|
|
16976
|
+
@query_monitors = QueryMonitorsNamespace.new(@transport)
|
|
16669
16977
|
@quotas = QuotasNamespace.new(@transport)
|
|
16670
16978
|
@resources = ResourcesNamespace.new(@transport)
|
|
16671
16979
|
@rightsizing = RightsizingNamespace.new(@transport)
|
data/lib/infrawrench/sdk.rb
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# infrawrench-sdk v1.
|
|
3
|
+
# infrawrench-sdk v1.37.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 1.
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.37.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 v1.
|
|
3
|
+
# infrawrench-sdk v1.37.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 1.
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.37.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 v1.
|
|
3
|
+
# infrawrench-sdk v1.37.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 1.
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.37.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 = "1.
|
|
18
|
+
VERSION = "1.37.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 v1.
|
|
3
|
+
# infrawrench-sdk v1.37.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 1.
|
|
6
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.37.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 v1.
|
|
1
|
+
# infrawrench-sdk v1.37.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 1.
|
|
4
|
+
# Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.37.0).
|
|
5
5
|
#
|
|
6
6
|
# DO NOT EDIT. Regenerate with:
|
|
7
7
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -2855,6 +2855,41 @@ module Infrawrench
|
|
|
2855
2855
|
?"accountIds" => Array[String]
|
|
2856
2856
|
}
|
|
2857
2857
|
|
|
2858
|
+
# Spec schema: `DrillCoverageResponse`.
|
|
2859
|
+
type drill_coverage_response = {
|
|
2860
|
+
"rows" => Array[drill_coverage_row],
|
|
2861
|
+
"summary" => drill_summary,
|
|
2862
|
+
"validDays" => Integer,
|
|
2863
|
+
"orphanedDrills" => Array[restore_drill],
|
|
2864
|
+
"generatedAt" => String
|
|
2865
|
+
}
|
|
2866
|
+
|
|
2867
|
+
# Spec schema: `DrillCoverageRow`.
|
|
2868
|
+
type drill_coverage_row = {
|
|
2869
|
+
"resourceId" => String,
|
|
2870
|
+
"resourceName" => String | nil,
|
|
2871
|
+
"accountId" => String | nil,
|
|
2872
|
+
"accountName" => String | nil,
|
|
2873
|
+
"resourceTypeId" => String | nil,
|
|
2874
|
+
"standing" => "verified" | "stale" | "failed" | "never",
|
|
2875
|
+
"lastDrillAt" => String | nil,
|
|
2876
|
+
"lastOutcome" => "verified" | "restored-unverified" | "failed" | "blocked" | nil,
|
|
2877
|
+
"lastVerifiedAt" => String | nil,
|
|
2878
|
+
"verifiedRtoMinutes" => Integer | nil,
|
|
2879
|
+
"daysUntilStale" => Integer | nil
|
|
2880
|
+
}
|
|
2881
|
+
|
|
2882
|
+
# Spec schema: `DrillSummary`.
|
|
2883
|
+
type drill_summary = {
|
|
2884
|
+
"eligibleCount" => Integer,
|
|
2885
|
+
"verifiedCount" => Integer,
|
|
2886
|
+
"staleCount" => Integer,
|
|
2887
|
+
"failedCount" => Integer,
|
|
2888
|
+
"neverCount" => Integer,
|
|
2889
|
+
"worstRtoMinutes" => Integer | nil,
|
|
2890
|
+
"medianRtoMinutes" => Integer | nil
|
|
2891
|
+
}
|
|
2892
|
+
|
|
2858
2893
|
# Spec schema: `EditableField`.
|
|
2859
2894
|
type editable_field = {
|
|
2860
2895
|
"key" => String,
|
|
@@ -5272,6 +5307,78 @@ module Infrawrench
|
|
|
5272
5307
|
?"accountId" => String
|
|
5273
5308
|
}
|
|
5274
5309
|
|
|
5310
|
+
# Spec schema: `QueryMonitor`.
|
|
5311
|
+
type query_monitor = {
|
|
5312
|
+
"id" => String,
|
|
5313
|
+
"name" => String,
|
|
5314
|
+
"description" => String | nil,
|
|
5315
|
+
"accountId" => String,
|
|
5316
|
+
"accountName" => String | nil,
|
|
5317
|
+
"resourceId" => String | nil,
|
|
5318
|
+
"resourceTypeId" => String | nil,
|
|
5319
|
+
"resourceName" => String | nil,
|
|
5320
|
+
"sql" => String,
|
|
5321
|
+
"mode" => "scalar" | "rowCount",
|
|
5322
|
+
"operator" => "gt" | "gte" | "lt" | "lte" | "eq" | "neq",
|
|
5323
|
+
"threshold" => Numeric,
|
|
5324
|
+
"intervalMinutes" => Integer,
|
|
5325
|
+
"consecutiveBreaches" => Integer,
|
|
5326
|
+
"enabled" => bool,
|
|
5327
|
+
"state" => "ok" | "breaching" | "unknown",
|
|
5328
|
+
"lastValue" => Numeric | nil,
|
|
5329
|
+
"lastRunAt" => String | nil,
|
|
5330
|
+
"lastError" => String | nil,
|
|
5331
|
+
"breachStreak" => Integer,
|
|
5332
|
+
"lastAlertedAt" => String | nil,
|
|
5333
|
+
"createdByUserId" => String | nil,
|
|
5334
|
+
"createdAt" => String,
|
|
5335
|
+
"updatedAt" => String
|
|
5336
|
+
}
|
|
5337
|
+
|
|
5338
|
+
# Spec schema: `QueryMonitorCreate`.
|
|
5339
|
+
type query_monitor_create = {
|
|
5340
|
+
"name" => String,
|
|
5341
|
+
?"description" => String | nil,
|
|
5342
|
+
"accountId" => String,
|
|
5343
|
+
?"resourceId" => String | nil,
|
|
5344
|
+
?"resourceTypeId" => String | nil,
|
|
5345
|
+
"sql" => String,
|
|
5346
|
+
"mode" => "scalar" | "rowCount",
|
|
5347
|
+
"operator" => "gt" | "gte" | "lt" | "lte" | "eq" | "neq",
|
|
5348
|
+
"threshold" => Numeric,
|
|
5349
|
+
"intervalMinutes" => Integer,
|
|
5350
|
+
?"consecutiveBreaches" => Integer,
|
|
5351
|
+
?"enabled" => bool
|
|
5352
|
+
}
|
|
5353
|
+
|
|
5354
|
+
# Spec schema: `QueryMonitorList`.
|
|
5355
|
+
type query_monitor_list = { "monitors" => Array[query_monitor] }
|
|
5356
|
+
|
|
5357
|
+
# Spec schema: `QueryMonitorTestResult`.
|
|
5358
|
+
type query_monitor_test_result = {
|
|
5359
|
+
"value" => Numeric | nil,
|
|
5360
|
+
"state" => "ok" | "breaching" | "unknown",
|
|
5361
|
+
"error" => String | nil,
|
|
5362
|
+
"durationMs" => Integer,
|
|
5363
|
+
"rows" => Array[Hash[String, untyped]]
|
|
5364
|
+
}
|
|
5365
|
+
|
|
5366
|
+
# Spec schema: `QueryMonitorUpdate`.
|
|
5367
|
+
type query_monitor_update = {
|
|
5368
|
+
?"name" => String,
|
|
5369
|
+
?"description" => String | nil,
|
|
5370
|
+
?"accountId" => String,
|
|
5371
|
+
?"resourceId" => String | nil,
|
|
5372
|
+
?"resourceTypeId" => String | nil,
|
|
5373
|
+
?"sql" => String,
|
|
5374
|
+
?"mode" => "scalar" | "rowCount",
|
|
5375
|
+
?"operator" => "gt" | "gte" | "lt" | "lte" | "eq" | "neq",
|
|
5376
|
+
?"threshold" => Numeric,
|
|
5377
|
+
?"intervalMinutes" => Integer,
|
|
5378
|
+
?"consecutiveBreaches" => Integer,
|
|
5379
|
+
?"enabled" => bool
|
|
5380
|
+
}
|
|
5381
|
+
|
|
5275
5382
|
# A recurring local-time window during which the rule holds its alerts. Held,
|
|
5276
5383
|
# not dropped — a held alert is queued and delivered when the window closes.
|
|
5277
5384
|
#
|
|
@@ -6004,6 +6111,33 @@ module Infrawrench
|
|
|
6004
6111
|
?"schedulable" => bool
|
|
6005
6112
|
}
|
|
6006
6113
|
|
|
6114
|
+
# Spec schema: `RestoreDrill`.
|
|
6115
|
+
type restore_drill = {
|
|
6116
|
+
"id" => String,
|
|
6117
|
+
"resourceId" => String,
|
|
6118
|
+
"resourceName" => String | nil,
|
|
6119
|
+
"accountId" => String | nil,
|
|
6120
|
+
"accountName" => String | nil,
|
|
6121
|
+
"performedAt" => String,
|
|
6122
|
+
"outcome" => "verified" | "restored-unverified" | "failed" | "blocked",
|
|
6123
|
+
"rtoMinutes" => Integer | nil,
|
|
6124
|
+
"restoredFrom" => String | nil,
|
|
6125
|
+
"notes" => String | nil,
|
|
6126
|
+
"performedByUserId" => String | nil,
|
|
6127
|
+
"performedByName" => String | nil,
|
|
6128
|
+
"createdAt" => String
|
|
6129
|
+
}
|
|
6130
|
+
|
|
6131
|
+
# Spec schema: `RestoreDrillCreate`.
|
|
6132
|
+
type restore_drill_create = {
|
|
6133
|
+
"resourceId" => String,
|
|
6134
|
+
"performedAt" => String,
|
|
6135
|
+
"outcome" => "verified" | "restored-unverified" | "failed" | "blocked",
|
|
6136
|
+
?"rtoMinutes" => Integer | nil,
|
|
6137
|
+
?"restoredFrom" => String | nil,
|
|
6138
|
+
?"notes" => String | nil
|
|
6139
|
+
}
|
|
6140
|
+
|
|
6007
6141
|
# Spec schema: `RevertApplyResponse`.
|
|
6008
6142
|
type revert_apply_response = {
|
|
6009
6143
|
"changeId" => String,
|
|
@@ -6949,6 +7083,7 @@ module Infrawrench
|
|
|
6949
7083
|
| "wallboard"
|
|
6950
7084
|
| "calendar"
|
|
6951
7085
|
| "runbooks"
|
|
7086
|
+
| "query-monitors"
|
|
6952
7087
|
| "dns"
|
|
6953
7088
|
| "iac"
|
|
6954
7089
|
| "environment-diff"
|
|
@@ -7411,6 +7546,14 @@ module Infrawrench
|
|
|
7411
7546
|
def orgs: (?request_options: Hash[Symbol, untyped]?) -> Array[org_membership]
|
|
7412
7547
|
end
|
|
7413
7548
|
|
|
7549
|
+
class BackupsDrillsNamespace
|
|
7550
|
+
def initialize: (Transport) -> void
|
|
7551
|
+
def create: (?org_id: String?, ?body: restore_drill_create?, ?request_options: Hash[Symbol, untyped]?) -> restore_drill
|
|
7552
|
+
def delete: (drill_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> nil
|
|
7553
|
+
def get: (?org_id: String?, ?valid_days: Integer?, ?request_options: Hash[Symbol, untyped]?) -> drill_coverage_response
|
|
7554
|
+
def log: (?org_id: String?, ?resource_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "drills" => Array[restore_drill] }
|
|
7555
|
+
end
|
|
7556
|
+
|
|
7414
7557
|
class BackupsPoliciesNamespace
|
|
7415
7558
|
def initialize: (Transport) -> void
|
|
7416
7559
|
def create: (?org_id: String?, ?body: backup_policy_create?, ?request_options: Hash[Symbol, untyped]?) -> backup_policy
|
|
@@ -7420,6 +7563,7 @@ module Infrawrench
|
|
|
7420
7563
|
end
|
|
7421
7564
|
|
|
7422
7565
|
class BackupsNamespace
|
|
7566
|
+
attr_reader drills: BackupsDrillsNamespace
|
|
7423
7567
|
attr_reader policies: BackupsPoliciesNamespace
|
|
7424
7568
|
def initialize: (Transport) -> void
|
|
7425
7569
|
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> backup_coverage_response
|
|
@@ -8166,6 +8310,21 @@ module Infrawrench
|
|
|
8166
8310
|
def update: (?body: { ?"firstName" => String, ?"lastName" => String }?, ?request_options: Hash[Symbol, untyped]?) -> profile_summary
|
|
8167
8311
|
end
|
|
8168
8312
|
|
|
8313
|
+
class QueryMonitorsGetNamespace
|
|
8314
|
+
def initialize: (Transport) -> void
|
|
8315
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> query_monitor_list
|
|
8316
|
+
def get_org_org_id_query_monitors_monitor_id: (monitor_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> query_monitor
|
|
8317
|
+
end
|
|
8318
|
+
|
|
8319
|
+
class QueryMonitorsNamespace
|
|
8320
|
+
attr_reader get: QueryMonitorsGetNamespace
|
|
8321
|
+
def initialize: (Transport) -> void
|
|
8322
|
+
def create: (?org_id: String?, ?body: query_monitor_create?, ?request_options: Hash[Symbol, untyped]?) -> query_monitor
|
|
8323
|
+
def delete: (monitor_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> nil
|
|
8324
|
+
def test: (?org_id: String?, ?body: query_monitor_create?, ?request_options: Hash[Symbol, untyped]?) -> query_monitor_test_result
|
|
8325
|
+
def update: (monitor_id: String, ?org_id: String?, ?body: query_monitor_update?, ?request_options: Hash[Symbol, untyped]?) -> query_monitor
|
|
8326
|
+
end
|
|
8327
|
+
|
|
8169
8328
|
class QuotasSettingsNamespace
|
|
8170
8329
|
def initialize: (Transport) -> void
|
|
8171
8330
|
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> quota_alert_settings
|
|
@@ -8575,6 +8734,7 @@ module Infrawrench
|
|
|
8575
8734
|
attr_reader posture: PostureNamespace
|
|
8576
8735
|
attr_reader probes: ProbesNamespace
|
|
8577
8736
|
attr_reader profile: ProfileNamespace
|
|
8737
|
+
attr_reader query_monitors: QueryMonitorsNamespace
|
|
8578
8738
|
attr_reader quotas: QuotasNamespace
|
|
8579
8739
|
attr_reader resources: ResourcesNamespace
|
|
8580
8740
|
attr_reader rightsizing: RightsizingNamespace
|
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: 1.
|
|
4
|
+
version: 1.37.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-25 00:00:00.000000000 Z
|
|
13
13
|
dependencies: []
|
|
14
|
-
description: Generated Ruby client for the Infrawrench API (v1.
|
|
14
|
+
description: Generated Ruby client for the Infrawrench API (v1.37.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 (v1.
|
|
61
|
+
summary: Generated Ruby client for the Infrawrench API (v1.37.0).
|
|
62
62
|
test_files: []
|