infrawrench-sdk 1.70.0 → 1.73.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 +471 -2
- 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 +395 -12
- 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: 98a0bde901a3f9488c2d7d38643e5f95308572dd31261a6d5f303b59449d653a
|
|
4
|
+
data.tar.gz: '09a1c701d340165b89237510be54497211757222bd2e56025b7af4f313aeebbf'
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f6f203c2359a9ab2287324b9e31b60e2073cf65f8359fb49cf7b1359e49267830cad0549e9ef72b330c424a2ba940106062e8bbac37ad33dfcaba35ee8ea94a4
|
|
7
|
+
data.tar.gz: b1adbd0af9886346eb5519923187520d43b775688ac6811a615e9b9dd504863705fca4f2eb5606e83999a6bfee8f7aca487a74ad9342c55c71f83aa62278f2ac
|
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.73.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
|
+
928 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.73.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.73.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.73.0)."
|
|
21
|
+
spec.description = "Generated Ruby client for the Infrawrench API (v1.73.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.73.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.73.0).
|
|
7
7
|
#
|
|
8
8
|
# DO NOT EDIT. Regenerate with:
|
|
9
9
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -1758,6 +1758,131 @@ module Infrawrench
|
|
|
1758
1758
|
end
|
|
1759
1759
|
end
|
|
1760
1760
|
|
|
1761
|
+
# `client.alert_email.settings`
|
|
1762
|
+
class AlertEmailSettingsNamespace
|
|
1763
|
+
# @api private
|
|
1764
|
+
# @param transport [Transport]
|
|
1765
|
+
def initialize(transport)
|
|
1766
|
+
@transport = transport
|
|
1767
|
+
end
|
|
1768
|
+
|
|
1769
|
+
# Get the alert email policy and suppression list
|
|
1770
|
+
#
|
|
1771
|
+
# GET /api/org/{orgId}/alert-email/settings
|
|
1772
|
+
#
|
|
1773
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1774
|
+
# constructed with.
|
|
1775
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1776
|
+
# @return [Hash] Parsed JSON, shaped as `AlertEmailSettingsView` — see
|
|
1777
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
1778
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1779
|
+
def get(org_id: nil, request_options: nil)
|
|
1780
|
+
@transport.request(
|
|
1781
|
+
http_method: "GET",
|
|
1782
|
+
path: "/api/org/{orgId}/alert-email/settings",
|
|
1783
|
+
path_params: { "orgId" => org_id },
|
|
1784
|
+
request_options: request_options
|
|
1785
|
+
)
|
|
1786
|
+
end
|
|
1787
|
+
|
|
1788
|
+
# Set the alert email external-address policy
|
|
1789
|
+
#
|
|
1790
|
+
# Whole object. Tightening the policy does not edit any stored recipient
|
|
1791
|
+
# list: an address that no longer passes is skipped at send time, and
|
|
1792
|
+
# loosening the policy again brings it back.
|
|
1793
|
+
#
|
|
1794
|
+
# PUT /api/org/{orgId}/alert-email/settings
|
|
1795
|
+
#
|
|
1796
|
+
# Raises on 400: Bad request
|
|
1797
|
+
#
|
|
1798
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1799
|
+
# constructed with.
|
|
1800
|
+
# @param body [Hash, nil] Request body, shaped as `AlertEmailSettings`.
|
|
1801
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1802
|
+
# @return [Hash] Parsed JSON, shaped as `AlertEmailSettingsView` — see
|
|
1803
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
1804
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1805
|
+
def update(org_id: nil, body: nil, request_options: nil)
|
|
1806
|
+
@transport.request(
|
|
1807
|
+
http_method: "PUT",
|
|
1808
|
+
path: "/api/org/{orgId}/alert-email/settings",
|
|
1809
|
+
path_params: { "orgId" => org_id },
|
|
1810
|
+
body: body,
|
|
1811
|
+
request_options: request_options
|
|
1812
|
+
)
|
|
1813
|
+
end
|
|
1814
|
+
end
|
|
1815
|
+
|
|
1816
|
+
# `client.alert_email.suppressions`
|
|
1817
|
+
class AlertEmailSuppressionsNamespace
|
|
1818
|
+
# @api private
|
|
1819
|
+
# @param transport [Transport]
|
|
1820
|
+
def initialize(transport)
|
|
1821
|
+
@transport = transport
|
|
1822
|
+
end
|
|
1823
|
+
|
|
1824
|
+
# Resume alert email to an unsubscribed address
|
|
1825
|
+
#
|
|
1826
|
+
# DELETE /api/org/{orgId}/alert-email/suppressions/{id}
|
|
1827
|
+
#
|
|
1828
|
+
# Raises on 404: Not found
|
|
1829
|
+
#
|
|
1830
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1831
|
+
# constructed with.
|
|
1832
|
+
# @param id [String]
|
|
1833
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1834
|
+
# @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
|
|
1835
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1836
|
+
def delete(id:, org_id: nil, request_options: nil)
|
|
1837
|
+
@transport.request(
|
|
1838
|
+
http_method: "DELETE",
|
|
1839
|
+
path: "/api/org/{orgId}/alert-email/suppressions/{id}",
|
|
1840
|
+
path_params: { "orgId" => org_id, "id" => id },
|
|
1841
|
+
request_options: request_options
|
|
1842
|
+
)
|
|
1843
|
+
end
|
|
1844
|
+
end
|
|
1845
|
+
|
|
1846
|
+
# `client.alert_email`
|
|
1847
|
+
class AlertEmailNamespace
|
|
1848
|
+
# @return [AlertEmailSettingsNamespace] `client.alert_email.settings`
|
|
1849
|
+
attr_reader :settings
|
|
1850
|
+
# @return [AlertEmailSuppressionsNamespace] `client.alert_email.suppressions`
|
|
1851
|
+
attr_reader :suppressions
|
|
1852
|
+
|
|
1853
|
+
# @api private
|
|
1854
|
+
# @param transport [Transport]
|
|
1855
|
+
def initialize(transport)
|
|
1856
|
+
@transport = transport
|
|
1857
|
+
@settings = AlertEmailSettingsNamespace.new(@transport)
|
|
1858
|
+
@suppressions = AlertEmailSuppressionsNamespace.new(@transport)
|
|
1859
|
+
end
|
|
1860
|
+
|
|
1861
|
+
# Recipient picker options for alert email
|
|
1862
|
+
#
|
|
1863
|
+
# Current members (with their login address), the external-address policy
|
|
1864
|
+
# and whether email is available on this deployment: everything a client
|
|
1865
|
+
# needs to edit the `emailRecipients` on a budget, cost change alert,
|
|
1866
|
+
# anomaly settings or efficiency alert settings, or an email destination on
|
|
1867
|
+
# an alert routing rule. Requires `costs:read`.
|
|
1868
|
+
#
|
|
1869
|
+
# GET /api/org/{orgId}/alert-email
|
|
1870
|
+
#
|
|
1871
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
1872
|
+
# constructed with.
|
|
1873
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
1874
|
+
# @return [Hash] Parsed JSON, shaped as `AlertEmailOptions` — see `sig/infrawrench/sdk.rbs`.
|
|
1875
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
1876
|
+
def get(org_id: nil, request_options: nil)
|
|
1877
|
+
@transport.request(
|
|
1878
|
+
http_method: "GET",
|
|
1879
|
+
path: "/api/org/{orgId}/alert-email",
|
|
1880
|
+
path_params: { "orgId" => org_id },
|
|
1881
|
+
request_options: request_options
|
|
1882
|
+
)
|
|
1883
|
+
end
|
|
1884
|
+
end
|
|
1885
|
+
|
|
1761
1886
|
# `client.alert_rules.deliveries`
|
|
1762
1887
|
class AlertRulesDeliveriesNamespace
|
|
1763
1888
|
# @api private
|
|
@@ -10718,6 +10843,111 @@ module Infrawrench
|
|
|
10718
10843
|
end
|
|
10719
10844
|
end
|
|
10720
10845
|
|
|
10846
|
+
# `client.extended_support.settings`
|
|
10847
|
+
class ExtendedSupportSettingsNamespace
|
|
10848
|
+
# @api private
|
|
10849
|
+
# @param transport [Transport]
|
|
10850
|
+
def initialize(transport)
|
|
10851
|
+
@transport = transport
|
|
10852
|
+
end
|
|
10853
|
+
|
|
10854
|
+
# Get the organization's extended-support settings
|
|
10855
|
+
#
|
|
10856
|
+
# An organization that never saved reads the shipped defaults (enabled, 90
|
|
10857
|
+
# days).
|
|
10858
|
+
#
|
|
10859
|
+
# _Requires permission: `org:settings:write`._
|
|
10860
|
+
#
|
|
10861
|
+
# GET /api/org/{orgId}/extended-support/settings
|
|
10862
|
+
#
|
|
10863
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
10864
|
+
# constructed with.
|
|
10865
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
10866
|
+
# @return [Hash] Parsed JSON, shaped as `ExtendedSupportSettings` — see
|
|
10867
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
10868
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
10869
|
+
def get(org_id: nil, request_options: nil)
|
|
10870
|
+
@transport.request(
|
|
10871
|
+
http_method: "GET",
|
|
10872
|
+
path: "/api/org/{orgId}/extended-support/settings",
|
|
10873
|
+
path_params: { "orgId" => org_id },
|
|
10874
|
+
request_options: request_options
|
|
10875
|
+
)
|
|
10876
|
+
end
|
|
10877
|
+
|
|
10878
|
+
# Update the extended-support settings
|
|
10879
|
+
#
|
|
10880
|
+
# Every field is optional. `leadDays` must be a whole number from 1 to 365.
|
|
10881
|
+
# Saving never resets the alert cooldown.
|
|
10882
|
+
#
|
|
10883
|
+
# _Requires permission: `org:settings:write`._
|
|
10884
|
+
#
|
|
10885
|
+
# PUT /api/org/{orgId}/extended-support/settings
|
|
10886
|
+
#
|
|
10887
|
+
# Raises on 400: Bad request
|
|
10888
|
+
#
|
|
10889
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
10890
|
+
# constructed with.
|
|
10891
|
+
# @param body [Hash, nil] Request body, shaped as `ExtendedSupportSettingsUpdate`.
|
|
10892
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
10893
|
+
# @return [Hash] Parsed JSON, shaped as `ExtendedSupportSettings` — see
|
|
10894
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
10895
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
10896
|
+
def update(org_id: nil, body: nil, request_options: nil)
|
|
10897
|
+
@transport.request(
|
|
10898
|
+
http_method: "PUT",
|
|
10899
|
+
path: "/api/org/{orgId}/extended-support/settings",
|
|
10900
|
+
path_params: { "orgId" => org_id },
|
|
10901
|
+
body: body,
|
|
10902
|
+
request_options: request_options
|
|
10903
|
+
)
|
|
10904
|
+
end
|
|
10905
|
+
end
|
|
10906
|
+
|
|
10907
|
+
# `client.extended_support`
|
|
10908
|
+
class ExtendedSupportNamespace
|
|
10909
|
+
# @return [ExtendedSupportSettingsNamespace] `client.extended_support.settings`
|
|
10910
|
+
attr_reader :settings
|
|
10911
|
+
|
|
10912
|
+
# @api private
|
|
10913
|
+
# @param transport [Transport]
|
|
10914
|
+
def initialize(transport)
|
|
10915
|
+
@transport = transport
|
|
10916
|
+
@settings = ExtendedSupportSettingsNamespace.new(@transport)
|
|
10917
|
+
end
|
|
10918
|
+
|
|
10919
|
+
# List resources billed at extended-support or end-of-life rates
|
|
10920
|
+
#
|
|
10921
|
+
# Matches every synced resource's version against its provider's support
|
|
10922
|
+
# calendar (declared by the plugin): resources paying an extended-support
|
|
10923
|
+
# surcharge, past the end of support, or whose standard support ends within
|
|
10924
|
+
# the lead time. Each finding carries the monthly surcharge an upgrade
|
|
10925
|
+
# removes: the provider's billed amount where it can be attributed (AWS Cost
|
|
10926
|
+
# Explorer extended-support usage types), otherwise list price. Results are
|
|
10927
|
+
# cached for a few minutes; pass `refresh=true` to recompute.
|
|
10928
|
+
#
|
|
10929
|
+
# _Requires permission: `resources:read`._
|
|
10930
|
+
#
|
|
10931
|
+
# GET /api/org/{orgId}/extended-support
|
|
10932
|
+
#
|
|
10933
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
10934
|
+
# constructed with.
|
|
10935
|
+
# @param refresh [String, nil] Bypass the short server-side cache and recompute now.
|
|
10936
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
10937
|
+
# @return [Hash] Parsed JSON, shaped as `ExtendedSupportListResponse` — see
|
|
10938
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
10939
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
10940
|
+
def get(org_id: nil, refresh: nil, request_options: nil)
|
|
10941
|
+
@transport.request(
|
|
10942
|
+
http_method: "GET",
|
|
10943
|
+
path: "/api/org/{orgId}/extended-support",
|
|
10944
|
+
path_params: { "orgId" => org_id },
|
|
10945
|
+
query: { "refresh" => refresh },
|
|
10946
|
+
request_options: request_options
|
|
10947
|
+
)
|
|
10948
|
+
end
|
|
10949
|
+
end
|
|
10950
|
+
|
|
10721
10951
|
# `client.github_issues.pull_requests`
|
|
10722
10952
|
class GithubIssuesPullRequestsNamespace
|
|
10723
10953
|
# @api private
|
|
@@ -16903,6 +17133,236 @@ module Infrawrench
|
|
|
16903
17133
|
end
|
|
16904
17134
|
end
|
|
16905
17135
|
|
|
17136
|
+
# `client.savings.events.update`
|
|
17137
|
+
class SavingsEventsUpdateNamespace
|
|
17138
|
+
# @api private
|
|
17139
|
+
# @param transport [Transport]
|
|
17140
|
+
def initialize(transport)
|
|
17141
|
+
@transport = transport
|
|
17142
|
+
end
|
|
17143
|
+
|
|
17144
|
+
# Annotate a saving
|
|
17145
|
+
#
|
|
17146
|
+
# Add context to any event: a note, an explicit cost centre, a horizon
|
|
17147
|
+
# override, or an end date. The facts of an automatic event (what was done,
|
|
17148
|
+
# when, the projection) stay as observed.
|
|
17149
|
+
#
|
|
17150
|
+
# PATCH /api/org/{orgId}/savings/events/{id}
|
|
17151
|
+
#
|
|
17152
|
+
# Raises on 400: Bad request
|
|
17153
|
+
#
|
|
17154
|
+
# Raises on 404: Not found
|
|
17155
|
+
#
|
|
17156
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
17157
|
+
# constructed with.
|
|
17158
|
+
# @param id [String]
|
|
17159
|
+
# @param body [Hash] Request body, shaped as `SavingsEventAnnotation`.
|
|
17160
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
17161
|
+
# @return [Hash] Parsed JSON, shaped as `SavingsEvent` — see `sig/infrawrench/sdk.rbs`.
|
|
17162
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
17163
|
+
def patch_org_org_id_savings_events_id(id:, body:, org_id: nil, request_options: nil)
|
|
17164
|
+
@transport.request(
|
|
17165
|
+
http_method: "PATCH",
|
|
17166
|
+
path: "/api/org/{orgId}/savings/events/{id}",
|
|
17167
|
+
path_params: { "orgId" => org_id, "id" => id },
|
|
17168
|
+
body: body,
|
|
17169
|
+
request_options: request_options
|
|
17170
|
+
)
|
|
17171
|
+
end
|
|
17172
|
+
|
|
17173
|
+
# Rewrite a manual saving
|
|
17174
|
+
#
|
|
17175
|
+
# Full replace of a manual entry. Automatic events are a 400; use PATCH.
|
|
17176
|
+
#
|
|
17177
|
+
# PUT /api/org/{orgId}/savings/events/{id}
|
|
17178
|
+
#
|
|
17179
|
+
# Raises on 400: Bad request
|
|
17180
|
+
#
|
|
17181
|
+
# Raises on 404: Not found
|
|
17182
|
+
#
|
|
17183
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
17184
|
+
# constructed with.
|
|
17185
|
+
# @param id [String]
|
|
17186
|
+
# @param body [Hash] Request body, shaped as `SavingsEventInput`.
|
|
17187
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
17188
|
+
# @return [Hash] Parsed JSON, shaped as `SavingsEvent` — see `sig/infrawrench/sdk.rbs`.
|
|
17189
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
17190
|
+
def update(id:, body:, org_id: nil, request_options: nil)
|
|
17191
|
+
@transport.request(
|
|
17192
|
+
http_method: "PUT",
|
|
17193
|
+
path: "/api/org/{orgId}/savings/events/{id}",
|
|
17194
|
+
path_params: { "orgId" => org_id, "id" => id },
|
|
17195
|
+
body: body,
|
|
17196
|
+
request_options: request_options
|
|
17197
|
+
)
|
|
17198
|
+
end
|
|
17199
|
+
end
|
|
17200
|
+
|
|
17201
|
+
# `client.savings.events`
|
|
17202
|
+
class SavingsEventsNamespace
|
|
17203
|
+
# @return [SavingsEventsUpdateNamespace] `client.savings.events.update`
|
|
17204
|
+
attr_reader :update
|
|
17205
|
+
|
|
17206
|
+
# @api private
|
|
17207
|
+
# @param transport [Transport]
|
|
17208
|
+
def initialize(transport)
|
|
17209
|
+
@transport = transport
|
|
17210
|
+
@update = SavingsEventsUpdateNamespace.new(@transport)
|
|
17211
|
+
end
|
|
17212
|
+
|
|
17213
|
+
# Log a saving
|
|
17214
|
+
#
|
|
17215
|
+
# Record a saving by hand, with the monthly amount and the day it began.
|
|
17216
|
+
# Leaves an org-wide cost annotation on that day. Requires `costs:write`.
|
|
17217
|
+
#
|
|
17218
|
+
# POST /api/org/{orgId}/savings/events
|
|
17219
|
+
#
|
|
17220
|
+
# Raises on 400: Bad request
|
|
17221
|
+
#
|
|
17222
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
17223
|
+
# constructed with.
|
|
17224
|
+
# @param body [Hash] Request body, shaped as `SavingsEventInput`.
|
|
17225
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
17226
|
+
# @return [Hash] Parsed JSON, shaped as `SavingsEvent` — see `sig/infrawrench/sdk.rbs`.
|
|
17227
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
17228
|
+
def create(body:, org_id: nil, request_options: nil)
|
|
17229
|
+
@transport.request(
|
|
17230
|
+
http_method: "POST",
|
|
17231
|
+
path: "/api/org/{orgId}/savings/events",
|
|
17232
|
+
path_params: { "orgId" => org_id },
|
|
17233
|
+
body: body,
|
|
17234
|
+
request_options: request_options
|
|
17235
|
+
)
|
|
17236
|
+
end
|
|
17237
|
+
|
|
17238
|
+
# Remove a saving
|
|
17239
|
+
#
|
|
17240
|
+
# Hard delete, together with the cost annotation the event left on the
|
|
17241
|
+
# charts.
|
|
17242
|
+
#
|
|
17243
|
+
# DELETE /api/org/{orgId}/savings/events/{id}
|
|
17244
|
+
#
|
|
17245
|
+
# Raises on 404: Not found
|
|
17246
|
+
#
|
|
17247
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
17248
|
+
# constructed with.
|
|
17249
|
+
# @param id [String]
|
|
17250
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
17251
|
+
# @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
|
|
17252
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
17253
|
+
def delete(id:, org_id: nil, request_options: nil)
|
|
17254
|
+
@transport.request(
|
|
17255
|
+
http_method: "DELETE",
|
|
17256
|
+
path: "/api/org/{orgId}/savings/events/{id}",
|
|
17257
|
+
path_params: { "orgId" => org_id, "id" => id },
|
|
17258
|
+
request_options: request_options
|
|
17259
|
+
)
|
|
17260
|
+
end
|
|
17261
|
+
end
|
|
17262
|
+
|
|
17263
|
+
# `client.savings.settings`
|
|
17264
|
+
class SavingsSettingsNamespace
|
|
17265
|
+
# @api private
|
|
17266
|
+
# @param transport [Transport]
|
|
17267
|
+
def initialize(transport)
|
|
17268
|
+
@transport = transport
|
|
17269
|
+
end
|
|
17270
|
+
|
|
17271
|
+
# Get realized savings settings
|
|
17272
|
+
#
|
|
17273
|
+
# The org's horizon, shortfall threshold and baseline window; defaults when
|
|
17274
|
+
# never saved.
|
|
17275
|
+
#
|
|
17276
|
+
# GET /api/org/{orgId}/savings/settings
|
|
17277
|
+
#
|
|
17278
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
17279
|
+
# constructed with.
|
|
17280
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
17281
|
+
# @return [Hash] Parsed JSON, shaped as `RealizedSavingsSettings` — see
|
|
17282
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
17283
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
17284
|
+
def get(org_id: nil, request_options: nil)
|
|
17285
|
+
@transport.request(
|
|
17286
|
+
http_method: "GET",
|
|
17287
|
+
path: "/api/org/{orgId}/savings/settings",
|
|
17288
|
+
path_params: { "orgId" => org_id },
|
|
17289
|
+
request_options: request_options
|
|
17290
|
+
)
|
|
17291
|
+
end
|
|
17292
|
+
|
|
17293
|
+
# Update realized savings settings
|
|
17294
|
+
#
|
|
17295
|
+
# Requires `costs:write`. Changes every figure in the report, retroactively.
|
|
17296
|
+
#
|
|
17297
|
+
# PUT /api/org/{orgId}/savings/settings
|
|
17298
|
+
#
|
|
17299
|
+
# Raises on 400: Bad request
|
|
17300
|
+
#
|
|
17301
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
17302
|
+
# constructed with.
|
|
17303
|
+
# @param body [Hash] Request body, shaped as `RealizedSavingsSettings`.
|
|
17304
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
17305
|
+
# @return [Hash] Parsed JSON, shaped as `RealizedSavingsSettings` — see
|
|
17306
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
17307
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
17308
|
+
def update(body:, org_id: nil, request_options: nil)
|
|
17309
|
+
@transport.request(
|
|
17310
|
+
http_method: "PUT",
|
|
17311
|
+
path: "/api/org/{orgId}/savings/settings",
|
|
17312
|
+
path_params: { "orgId" => org_id },
|
|
17313
|
+
body: body,
|
|
17314
|
+
request_options: request_options
|
|
17315
|
+
)
|
|
17316
|
+
end
|
|
17317
|
+
end
|
|
17318
|
+
|
|
17319
|
+
# `client.savings`
|
|
17320
|
+
class SavingsNamespace
|
|
17321
|
+
# @return [SavingsEventsNamespace] `client.savings.events`
|
|
17322
|
+
attr_reader :events
|
|
17323
|
+
# @return [SavingsSettingsNamespace] `client.savings.settings`
|
|
17324
|
+
attr_reader :settings
|
|
17325
|
+
|
|
17326
|
+
# @api private
|
|
17327
|
+
# @param transport [Transport]
|
|
17328
|
+
def initialize(transport)
|
|
17329
|
+
@transport = transport
|
|
17330
|
+
@events = SavingsEventsNamespace.new(@transport)
|
|
17331
|
+
@settings = SavingsSettingsNamespace.new(@transport)
|
|
17332
|
+
end
|
|
17333
|
+
|
|
17334
|
+
# Realized savings report
|
|
17335
|
+
#
|
|
17336
|
+
# What the actions taken actually saved, against each resource's own
|
|
17337
|
+
# trailing daily spend before the action, accrued day by day (one-off
|
|
17338
|
+
# actions up to the horizon). Recomputed on every read, so figures improve
|
|
17339
|
+
# as restated billing lands. Days collection has not covered are not
|
|
17340
|
+
# accrued. Per-currency throughout; never converted or merged.
|
|
17341
|
+
#
|
|
17342
|
+
# GET /api/org/{orgId}/savings/realized
|
|
17343
|
+
#
|
|
17344
|
+
# Raises on 400: Bad request
|
|
17345
|
+
#
|
|
17346
|
+
# @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
|
|
17347
|
+
# constructed with.
|
|
17348
|
+
# @param from [String, nil] Inclusive first day. Defaults to the first of the month 11
|
|
17349
|
+
# months back.
|
|
17350
|
+
# @param to [String, nil] Inclusive last day. Defaults to yesterday.
|
|
17351
|
+
# @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
|
|
17352
|
+
# @return [Hash] Parsed JSON, shaped as `RealizedSavingsReport` — see
|
|
17353
|
+
# `sig/infrawrench/sdk.rbs`.
|
|
17354
|
+
# @raise [Infrawrench::ApiError] On any non-2xx response.
|
|
17355
|
+
def realized(org_id: nil, from: nil, to: nil, request_options: nil)
|
|
17356
|
+
@transport.request(
|
|
17357
|
+
http_method: "GET",
|
|
17358
|
+
path: "/api/org/{orgId}/savings/realized",
|
|
17359
|
+
path_params: { "orgId" => org_id },
|
|
17360
|
+
query: { "from" => from, "to" => to },
|
|
17361
|
+
request_options: request_options
|
|
17362
|
+
)
|
|
17363
|
+
end
|
|
17364
|
+
end
|
|
17365
|
+
|
|
16906
17366
|
# `client.schedules`
|
|
16907
17367
|
class SchedulesNamespace
|
|
16908
17368
|
# @api private
|
|
@@ -20355,6 +20815,8 @@ module Infrawrench
|
|
|
20355
20815
|
attr_reader :agents
|
|
20356
20816
|
# @return [AiAttributionNamespace] `client.ai_attribution`
|
|
20357
20817
|
attr_reader :ai_attribution
|
|
20818
|
+
# @return [AlertEmailNamespace] `client.alert_email`
|
|
20819
|
+
attr_reader :alert_email
|
|
20358
20820
|
# @return [AlertRulesNamespace] `client.alert_rules`
|
|
20359
20821
|
attr_reader :alert_rules
|
|
20360
20822
|
# @return [ApiKeysNamespace] `client.api_keys`
|
|
@@ -20451,6 +20913,8 @@ module Infrawrench
|
|
|
20451
20913
|
attr_reader :environments
|
|
20452
20914
|
# @return [ExpiringNamespace] `client.expiring`
|
|
20453
20915
|
attr_reader :expiring
|
|
20916
|
+
# @return [ExtendedSupportNamespace] `client.extended_support`
|
|
20917
|
+
attr_reader :extended_support
|
|
20454
20918
|
# @return [GithubIssuesNamespace] `client.github_issues`
|
|
20455
20919
|
attr_reader :github_issues
|
|
20456
20920
|
# @return [IacNamespace] `client.iac`
|
|
@@ -20511,6 +20975,8 @@ module Infrawrench
|
|
|
20511
20975
|
attr_reader :runbooks
|
|
20512
20976
|
# @return [SavedCostFiltersNamespace] `client.saved_cost_filters`
|
|
20513
20977
|
attr_reader :saved_cost_filters
|
|
20978
|
+
# @return [SavingsNamespace] `client.savings`
|
|
20979
|
+
attr_reader :savings
|
|
20514
20980
|
# @return [SchedulesNamespace] `client.schedules`
|
|
20515
20981
|
attr_reader :schedules
|
|
20516
20982
|
# @return [SearchNamespace] `client.search`
|
|
@@ -20570,6 +21036,7 @@ module Infrawrench
|
|
|
20570
21036
|
@agent_registrations = AgentRegistrationsNamespace.new(@transport)
|
|
20571
21037
|
@agents = AgentsNamespace.new(@transport)
|
|
20572
21038
|
@ai_attribution = AiAttributionNamespace.new(@transport)
|
|
21039
|
+
@alert_email = AlertEmailNamespace.new(@transport)
|
|
20573
21040
|
@alert_rules = AlertRulesNamespace.new(@transport)
|
|
20574
21041
|
@api_keys = ApiKeysNamespace.new(@transport)
|
|
20575
21042
|
@apps = AppsNamespace.new(@transport)
|
|
@@ -20618,6 +21085,7 @@ module Infrawrench
|
|
|
20618
21085
|
@environment_diff = EnvironmentDiffNamespace.new(@transport)
|
|
20619
21086
|
@environments = EnvironmentsNamespace.new(@transport)
|
|
20620
21087
|
@expiring = ExpiringNamespace.new(@transport)
|
|
21088
|
+
@extended_support = ExtendedSupportNamespace.new(@transport)
|
|
20621
21089
|
@github_issues = GithubIssuesNamespace.new(@transport)
|
|
20622
21090
|
@iac = IacNamespace.new(@transport)
|
|
20623
21091
|
@incidents = IncidentsNamespace.new(@transport)
|
|
@@ -20648,6 +21116,7 @@ module Infrawrench
|
|
|
20648
21116
|
@rightsizing = RightsizingNamespace.new(@transport)
|
|
20649
21117
|
@runbooks = RunbooksNamespace.new(@transport)
|
|
20650
21118
|
@saved_cost_filters = SavedCostFiltersNamespace.new(@transport)
|
|
21119
|
+
@savings = SavingsNamespace.new(@transport)
|
|
20651
21120
|
@schedules = SchedulesNamespace.new(@transport)
|
|
20652
21121
|
@search = SearchNamespace.new(@transport)
|
|
20653
21122
|
@session_recordings = SessionRecordingsNamespace.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.73.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.73.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.73.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.73.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.73.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.73.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.73.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.73.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.73.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.73.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.73.0).
|
|
5
5
|
#
|
|
6
6
|
# DO NOT EDIT. Regenerate with:
|
|
7
7
|
# pnpm --filter @infrawrench/web generate:sdk
|
|
@@ -584,12 +584,52 @@ module Infrawrench
|
|
|
584
584
|
# cost anomalies, idle commitments) can be filed; for other triggers this
|
|
585
585
|
# destination is skipped.
|
|
586
586
|
#
|
|
587
|
+
# `email-member` and `email-address` send an HTML and plain-text email with a
|
|
588
|
+
# link back into the app and a one-click unsubscribe link. Email carries no
|
|
589
|
+
# acknowledge button, so a rule routed only to email always escalates.
|
|
590
|
+
#
|
|
587
591
|
# Spec schema: `AlertDestination`.
|
|
588
592
|
type alert_destination = { "kind" => "push" }
|
|
589
593
|
| { "kind" => "slack", "channelId" => String }
|
|
590
594
|
| { "kind" => "msteams", "webhookId" => String }
|
|
591
595
|
| { "kind" => "on-call", "scheduleId" => String }
|
|
592
596
|
| { "kind" => "github-issues" }
|
|
597
|
+
| { "kind" => "email-member", "userId" => String }
|
|
598
|
+
| { "kind" => "email-address", "address" => String }
|
|
599
|
+
|
|
600
|
+
# Spec schema: `AlertEmailMember`.
|
|
601
|
+
type alert_email_member = { "userId" => String, "name" => String | nil, "email" => String }
|
|
602
|
+
|
|
603
|
+
# Spec schema: `AlertEmailOptions`.
|
|
604
|
+
type alert_email_options = {
|
|
605
|
+
"emailAvailable" => bool,
|
|
606
|
+
"members" => Array[alert_email_member],
|
|
607
|
+
"settings" => alert_email_settings,
|
|
608
|
+
"memberDomains" => Array[String]
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
# Who is emailed when this object fires, **in addition to** whatever the
|
|
612
|
+
# organization's alert routing rules decide. Delivered whether or not a rule
|
|
613
|
+
# matched and not held by quiet hours. On a write, omitting the field leaves
|
|
614
|
+
# the stored list unchanged; send empty arrays to clear it.
|
|
615
|
+
#
|
|
616
|
+
# Spec schema: `AlertEmailRecipients`.
|
|
617
|
+
type alert_email_recipients = { "userIds" => Array[String], "addresses" => Array[String] }
|
|
618
|
+
|
|
619
|
+
# Spec schema: `AlertEmailSettings`.
|
|
620
|
+
type alert_email_settings = { "externalPolicy" => "member-domains" | "any", "allowedDomains" => Array[String] }
|
|
621
|
+
|
|
622
|
+
# Spec schema: `AlertEmailSettingsView`.
|
|
623
|
+
type alert_email_settings_view = {
|
|
624
|
+
"externalPolicy" => "member-domains" | "any",
|
|
625
|
+
"allowedDomains" => Array[String],
|
|
626
|
+
"emailAvailable" => bool,
|
|
627
|
+
"memberDomains" => Array[String],
|
|
628
|
+
"suppressions" => Array[alert_email_suppression]
|
|
629
|
+
}
|
|
630
|
+
|
|
631
|
+
# Spec schema: `AlertEmailSuppression`.
|
|
632
|
+
type alert_email_suppression = { "id" => String, "email" => String, "createdAt" => String }
|
|
593
633
|
|
|
594
634
|
# Spec schema: `AlertRule`.
|
|
595
635
|
type alert_rule = {
|
|
@@ -623,7 +663,11 @@ module Infrawrench
|
|
|
623
663
|
"slackChannels" => Array[{ "id" => String, "name" => String, "isPrivate" => bool }],
|
|
624
664
|
"msTeamsWebhooks" => Array[{ "id" => String, "label" => String }],
|
|
625
665
|
"accounts" => Array[{ "id" => String, "displayName" => String, "pluginId" => String }],
|
|
626
|
-
"onCallSchedules" => Array[{ "id" => String, "name" => String }]
|
|
666
|
+
"onCallSchedules" => Array[{ "id" => String, "name" => String }],
|
|
667
|
+
"members" => Array[{ "userId" => String, "name" => String | nil, "email" => String }],
|
|
668
|
+
"emailAvailable" => bool,
|
|
669
|
+
"emailSettings" => { "externalPolicy" => "member-domains" | "any", "allowedDomains" => Array[String] },
|
|
670
|
+
"memberDomains" => Array[String]
|
|
627
671
|
}
|
|
628
672
|
|
|
629
673
|
# Alert severity, ordered info < warning < critical.
|
|
@@ -651,6 +695,7 @@ module Infrawrench
|
|
|
651
695
|
| "postureAlerts"
|
|
652
696
|
| "probeAlerts"
|
|
653
697
|
| "quotaAlerts"
|
|
698
|
+
| "extendedSupportAlerts"
|
|
654
699
|
| "incidentAlerts"
|
|
655
700
|
| "weeklyDigest"
|
|
656
701
|
|
|
@@ -1142,6 +1187,7 @@ module Infrawrench
|
|
|
1142
1187
|
"thresholds" => Array[budget_threshold],
|
|
1143
1188
|
"costBasis" => budget_cost_basis & untyped,
|
|
1144
1189
|
"useAdjustedSpend" => bool,
|
|
1190
|
+
"emailRecipients" => alert_email_recipients,
|
|
1145
1191
|
"createdByUserId" => String | nil,
|
|
1146
1192
|
"deletedAt" => String | nil,
|
|
1147
1193
|
"createdAt" => String,
|
|
@@ -1175,7 +1221,8 @@ module Infrawrench
|
|
|
1175
1221
|
?"usageUnit" => String,
|
|
1176
1222
|
?"usageAmount" => Numeric,
|
|
1177
1223
|
?"period" => budget_period & (budget_recurring_period | budget_explicit_periods),
|
|
1178
|
-
?"parentBudgetId" => String
|
|
1224
|
+
?"parentBudgetId" => String,
|
|
1225
|
+
?"emailRecipients" => alert_email_recipients
|
|
1179
1226
|
}
|
|
1180
1227
|
|
|
1181
1228
|
# What the budget counts. `cost` (the default) is money in `currency`, against
|
|
@@ -1222,6 +1269,7 @@ module Infrawrench
|
|
|
1222
1269
|
"scenarioModelId" => String | nil,
|
|
1223
1270
|
"scenarioModelName" => String | nil,
|
|
1224
1271
|
"useAdjustedSpend" => bool,
|
|
1272
|
+
"emailRecipients" => alert_email_recipients,
|
|
1225
1273
|
"rawActualCents" => Integer | nil,
|
|
1226
1274
|
"month" => String,
|
|
1227
1275
|
"actualCents" => Integer,
|
|
@@ -2102,6 +2150,7 @@ module Infrawrench
|
|
|
2102
2150
|
"enabled" => bool,
|
|
2103
2151
|
"lastEvaluatedAt" => String | nil,
|
|
2104
2152
|
"lastFiredAt" => String | nil,
|
|
2153
|
+
"emailRecipients" => alert_email_recipients,
|
|
2105
2154
|
"createdAt" => String,
|
|
2106
2155
|
"updatedAt" => String
|
|
2107
2156
|
}
|
|
@@ -2161,7 +2210,8 @@ module Infrawrench
|
|
|
2161
2210
|
?"thresholdPercent" => Integer | nil,
|
|
2162
2211
|
?"thresholdAmountCents" => Integer | nil,
|
|
2163
2212
|
"direction" => cost_change_direction,
|
|
2164
|
-
?"enabled" => bool
|
|
2213
|
+
?"enabled" => bool,
|
|
2214
|
+
?"emailRecipients" => alert_email_recipients
|
|
2165
2215
|
}
|
|
2166
2216
|
|
|
2167
2217
|
# Spec schema: `CostAnnotation`.
|
|
@@ -2301,7 +2351,8 @@ module Infrawrench
|
|
|
2301
2351
|
"minDeltaCents" => Integer,
|
|
2302
2352
|
"newSourceMinCents" => Integer,
|
|
2303
2353
|
"smsAlerts" => "off" | "new_source" | "all",
|
|
2304
|
-
?"feedbackTuning" => bool
|
|
2354
|
+
?"feedbackTuning" => bool,
|
|
2355
|
+
?"emailRecipients" => alert_email_recipients
|
|
2305
2356
|
}
|
|
2306
2357
|
|
|
2307
2358
|
# Spec schema: `CostAnomalySettingsView`.
|
|
@@ -2584,7 +2635,8 @@ module Infrawrench
|
|
|
2584
2635
|
"unitCostThresholdPercent" => Integer,
|
|
2585
2636
|
"unitCostWindowDays" => Integer,
|
|
2586
2637
|
"unitCostMinReportedDays" => Integer,
|
|
2587
|
-
"unitCostMinSpendCents" => Integer
|
|
2638
|
+
"unitCostMinSpendCents" => Integer,
|
|
2639
|
+
?"emailRecipients" => alert_email_recipients
|
|
2588
2640
|
}
|
|
2589
2641
|
|
|
2590
2642
|
# Spec schema: `CostEstimate`.
|
|
@@ -3600,10 +3652,17 @@ module Infrawrench
|
|
|
3600
3652
|
# `cost_graph` stores its whole config inline — a one-off card. `cost_report`
|
|
3601
3653
|
# points at a saved cost report by id, so editing the report updates every
|
|
3602
3654
|
# dashboard showing it. `cost_canvas` points at a cost canvas by id
|
|
3603
|
-
# (`{version: 1, canvasId}`) the same way.
|
|
3655
|
+
# (`{version: 1, canvasId}`) the same way. `realized_savings` shows the org's
|
|
3656
|
+
# realized savings report; its config is only a view choice (`grouping`: month
|
|
3657
|
+
# | kind | costCentre | account, and `months` back, 1–36).
|
|
3604
3658
|
#
|
|
3605
3659
|
# Spec schema: `DashboardWidgetKind`.
|
|
3606
|
-
type dashboard_widget_kind = "cost_graph"
|
|
3660
|
+
type dashboard_widget_kind = "cost_graph"
|
|
3661
|
+
| "cost_report"
|
|
3662
|
+
| "budget"
|
|
3663
|
+
| "custom_graph"
|
|
3664
|
+
| "cost_canvas"
|
|
3665
|
+
| "realized_savings"
|
|
3607
3666
|
|
|
3608
3667
|
# Spec schema: `DashboardWithPins`.
|
|
3609
3668
|
type dashboard_with_pins = {
|
|
@@ -4399,6 +4458,8 @@ module Infrawrench
|
|
|
4399
4458
|
| "k8s-cert"
|
|
4400
4459
|
| "ssh-key"
|
|
4401
4460
|
| "secret-version"
|
|
4461
|
+
| "lease"
|
|
4462
|
+
| "extended-support"
|
|
4402
4463
|
| "other",
|
|
4403
4464
|
"label" => String,
|
|
4404
4465
|
"basis" => "expiry" | "age",
|
|
@@ -4438,6 +4499,81 @@ module Infrawrench
|
|
|
4438
4499
|
# Spec schema: `ExportTerraformRequest`.
|
|
4439
4500
|
type export_terraform_request = { "resourceId" => resource_id, "accountId" => String }
|
|
4440
4501
|
|
|
4502
|
+
# Spec schema: `ExtendedSupportFinding`.
|
|
4503
|
+
type extended_support_finding = {
|
|
4504
|
+
"resourceId" => String,
|
|
4505
|
+
"pluginId" => plugin_id,
|
|
4506
|
+
"pluginName" => String,
|
|
4507
|
+
"resourceTypeId" => String,
|
|
4508
|
+
"resourceTypeName" => String,
|
|
4509
|
+
"accountId" => String,
|
|
4510
|
+
"accountName" => String,
|
|
4511
|
+
"displayName" => String,
|
|
4512
|
+
"externalId" => String | nil,
|
|
4513
|
+
"region" => String | nil,
|
|
4514
|
+
"releaseId" => String,
|
|
4515
|
+
"product" => String,
|
|
4516
|
+
"engine" => String | nil,
|
|
4517
|
+
"currentVersion" => String,
|
|
4518
|
+
"targetVersion" => String,
|
|
4519
|
+
"status" => "end-of-life" | "surcharged" | "unsupported" | "upcoming",
|
|
4520
|
+
"standardSupportEnds" => String,
|
|
4521
|
+
"surchargeStartsOn" => String,
|
|
4522
|
+
"daysUntilSurcharge" => Integer,
|
|
4523
|
+
"extendedSupportEnds" => String | nil,
|
|
4524
|
+
"daysUntilForcedUpgrade" => Integer | nil,
|
|
4525
|
+
"charged" => bool,
|
|
4526
|
+
"quantity" => Numeric | nil,
|
|
4527
|
+
"unit" => "cluster-hour" | "vcpu-hour" | "vcore-hour" | "node-hour" | "instance-hour" | "acu-hour"
|
|
4528
|
+
| nil,
|
|
4529
|
+
"currency" => String | nil,
|
|
4530
|
+
"tierLabel" => String | nil,
|
|
4531
|
+
"monthlySurcharge" => Numeric | nil,
|
|
4532
|
+
"listMonthlySurcharge" => Numeric | nil,
|
|
4533
|
+
"costBasis" => "billed" | "billed-share" | "list-price" | "unpriced",
|
|
4534
|
+
"billedLineItems" => Array[String],
|
|
4535
|
+
"nextTier" => { "from" => String, "label" => String, "monthlySurcharge" => Numeric | nil } | nil,
|
|
4536
|
+
"priceNote" => String | nil,
|
|
4537
|
+
"pricingUrl" => String | nil,
|
|
4538
|
+
"upgradeUrl" => String,
|
|
4539
|
+
"note" => String | nil
|
|
4540
|
+
}
|
|
4541
|
+
|
|
4542
|
+
# Spec schema: `ExtendedSupportListResponse`.
|
|
4543
|
+
type extended_support_list_response = {
|
|
4544
|
+
"findings" => Array[extended_support_finding],
|
|
4545
|
+
"totalCount" => Integer,
|
|
4546
|
+
"counts" => {
|
|
4547
|
+
"end-of-life" => Integer,
|
|
4548
|
+
"surcharged" => Integer,
|
|
4549
|
+
"unsupported" => Integer,
|
|
4550
|
+
"upcoming" => Integer
|
|
4551
|
+
},
|
|
4552
|
+
"currentMonthly" => Array[extended_support_total],
|
|
4553
|
+
"upcomingMonthly" => Array[extended_support_total],
|
|
4554
|
+
"leadDays" => Integer,
|
|
4555
|
+
?"billing" => {
|
|
4556
|
+
"windowDays" => Integer,
|
|
4557
|
+
"accounts" => Array[{
|
|
4558
|
+
"accountId" => String,
|
|
4559
|
+
"accountName" => String,
|
|
4560
|
+
"status" => "read" | "failed",
|
|
4561
|
+
?"error" => String
|
|
4562
|
+
}],
|
|
4563
|
+
"unattributed" => Array[unattributed_extended_support_charge]
|
|
4564
|
+
},
|
|
4565
|
+
"generatedAt" => String
|
|
4566
|
+
}
|
|
4567
|
+
|
|
4568
|
+
# Spec schema: `ExtendedSupportSettings`.
|
|
4569
|
+
type extended_support_settings = { "enabled" => bool, "leadDays" => Integer, "lastNotifiedAt" => String | nil }
|
|
4570
|
+
|
|
4571
|
+
# Spec schema: `ExtendedSupportSettingsUpdate`.
|
|
4572
|
+
type extended_support_settings_update = { ?"enabled" => bool, ?"leadDays" => Integer }
|
|
4573
|
+
|
|
4574
|
+
# Spec schema: `ExtendedSupportTotal`.
|
|
4575
|
+
type extended_support_total = { "currency" => String, "monthly" => Numeric }
|
|
4576
|
+
|
|
4441
4577
|
# Spec schema: `FieldActionRequest`.
|
|
4442
4578
|
type field_action_request = {
|
|
4443
4579
|
"accountId" => String,
|
|
@@ -4646,6 +4782,7 @@ module Infrawrench
|
|
|
4646
4782
|
| "posture_finding"
|
|
4647
4783
|
| "expiring"
|
|
4648
4784
|
| "probe"
|
|
4785
|
+
| "extended_support"
|
|
4649
4786
|
| "commitment_idle"
|
|
4650
4787
|
|
|
4651
4788
|
# Spec schema: `GithubIssuesStatus`.
|
|
@@ -5239,7 +5376,13 @@ module Infrawrench
|
|
|
5239
5376
|
# Which detector produced the finding the issue was filed from.
|
|
5240
5377
|
#
|
|
5241
5378
|
# Spec schema: `JiraSourceKind`.
|
|
5242
|
-
type jira_source_kind = "cost_anomaly"
|
|
5379
|
+
type jira_source_kind = "cost_anomaly"
|
|
5380
|
+
| "orphan"
|
|
5381
|
+
| "oversized"
|
|
5382
|
+
| "posture_finding"
|
|
5383
|
+
| "expiring"
|
|
5384
|
+
| "probe"
|
|
5385
|
+
| "extended_support"
|
|
5243
5386
|
|
|
5244
5387
|
# Supply all three to test credentials that have not been saved yet; send an
|
|
5245
5388
|
# empty object to re-test the stored ones.
|
|
@@ -5356,7 +5499,13 @@ module Infrawrench
|
|
|
5356
5499
|
# Which detector produced the finding the issue was filed from.
|
|
5357
5500
|
#
|
|
5358
5501
|
# Spec schema: `LinearSourceKind`.
|
|
5359
|
-
type linear_source_kind = "cost_anomaly"
|
|
5502
|
+
type linear_source_kind = "cost_anomaly"
|
|
5503
|
+
| "orphan"
|
|
5504
|
+
| "oversized"
|
|
5505
|
+
| "posture_finding"
|
|
5506
|
+
| "expiring"
|
|
5507
|
+
| "probe"
|
|
5508
|
+
| "extended_support"
|
|
5360
5509
|
|
|
5361
5510
|
# Spec schema: `LinearTeam`.
|
|
5362
5511
|
type linear_team = { "id" => String, "key" => String, "name" => String }
|
|
@@ -6150,7 +6299,12 @@ module Infrawrench
|
|
|
6150
6299
|
# Spec schema: `OrgConfigDashboardCard`.
|
|
6151
6300
|
type org_config_dashboard_card = {
|
|
6152
6301
|
"kind" => "widget",
|
|
6153
|
-
"widgetKind" => "cost_graph"
|
|
6302
|
+
"widgetKind" => "cost_graph"
|
|
6303
|
+
| "cost_report"
|
|
6304
|
+
| "budget"
|
|
6305
|
+
| "custom_graph"
|
|
6306
|
+
| "cost_canvas"
|
|
6307
|
+
| "realized_savings",
|
|
6154
6308
|
?"title" => String,
|
|
6155
6309
|
?"config" => json_object,
|
|
6156
6310
|
?"budgetKey" => String,
|
|
@@ -7265,6 +7419,52 @@ module Infrawrench
|
|
|
7265
7419
|
# Spec schema: `QuotaTrend`.
|
|
7266
7420
|
type quota_trend = { "perDay" => Numeric | nil, "daysToExhaustion" => Numeric | nil, "points" => Integer }
|
|
7267
7421
|
|
|
7422
|
+
# `billing` — baseline and post-action spend both read from this resource's
|
|
7423
|
+
# cost rows; `estimate` — no per-resource billing, so the list-price estimate
|
|
7424
|
+
# is accrued over elapsed days; `manual` — the logged amount accrued;
|
|
7425
|
+
# `unmeasured` — nothing to measure against (never summed as zero).
|
|
7426
|
+
#
|
|
7427
|
+
# Spec schema: `RealizedSavingsBasis`.
|
|
7428
|
+
type realized_savings_basis = "billing" | "estimate" | "manual" | "unmeasured"
|
|
7429
|
+
|
|
7430
|
+
# Spec schema: `RealizedSavingsBucket`.
|
|
7431
|
+
type realized_savings_bucket = {
|
|
7432
|
+
"key" => String,
|
|
7433
|
+
"label" => String,
|
|
7434
|
+
"currency" => String,
|
|
7435
|
+
"realized" => Numeric,
|
|
7436
|
+
"projected" => Numeric,
|
|
7437
|
+
"events" => Integer
|
|
7438
|
+
}
|
|
7439
|
+
|
|
7440
|
+
# Spec schema: `RealizedSavingsMonth`.
|
|
7441
|
+
type realized_savings_month = { "month" => String, "currency" => String, "realized" => Numeric, "projected" => Numeric }
|
|
7442
|
+
|
|
7443
|
+
# Spec schema: `RealizedSavingsReport`.
|
|
7444
|
+
type realized_savings_report = {
|
|
7445
|
+
"from" => String,
|
|
7446
|
+
"to" => String,
|
|
7447
|
+
"settings" => realized_savings_settings,
|
|
7448
|
+
"totals" => Array[realized_savings_total],
|
|
7449
|
+
"byMonth" => Array[realized_savings_month],
|
|
7450
|
+
"byKind" => Array[realized_savings_bucket],
|
|
7451
|
+
"byCostCentre" => Array[realized_savings_bucket],
|
|
7452
|
+
"byAccount" => Array[realized_savings_bucket],
|
|
7453
|
+
"events" => Array[savings_event_result],
|
|
7454
|
+
"shortfallCount" => Integer,
|
|
7455
|
+
"unmeasuredCount" => Integer
|
|
7456
|
+
}
|
|
7457
|
+
|
|
7458
|
+
# Spec schema: `RealizedSavingsSettings`.
|
|
7459
|
+
type realized_savings_settings = {
|
|
7460
|
+
"horizonMonths" => Integer,
|
|
7461
|
+
"shortfallThresholdPercent" => Integer,
|
|
7462
|
+
"baselineWindowDays" => Integer
|
|
7463
|
+
}
|
|
7464
|
+
|
|
7465
|
+
# Spec schema: `RealizedSavingsTotal`.
|
|
7466
|
+
type realized_savings_total = { "currency" => String, "realized" => Numeric, "projected" => Numeric }
|
|
7467
|
+
|
|
7268
7468
|
# Spec schema: `ReauthenticationRequired`.
|
|
7269
7469
|
type reauthentication_required = { "error" => String, "code" => "reauthentication_required" }
|
|
7270
7470
|
|
|
@@ -8496,6 +8696,116 @@ module Infrawrench
|
|
|
8496
8696
|
?"tagKey" => String
|
|
8497
8697
|
}
|
|
8498
8698
|
|
|
8699
|
+
# Spec schema: `SavingsEvent`.
|
|
8700
|
+
type savings_event = {
|
|
8701
|
+
"id" => String,
|
|
8702
|
+
"kind" => savings_event_kind,
|
|
8703
|
+
"source" => savings_event_source,
|
|
8704
|
+
"title" => String,
|
|
8705
|
+
"note" => String | nil,
|
|
8706
|
+
"occurredOn" => String,
|
|
8707
|
+
"endedOn" => String | nil,
|
|
8708
|
+
"accountId" => String | nil,
|
|
8709
|
+
"accountName" => String | nil,
|
|
8710
|
+
"pluginId" => String | nil,
|
|
8711
|
+
"resourceTypeId" => String | nil,
|
|
8712
|
+
"resourceId" => String | nil,
|
|
8713
|
+
"resourceName" => String | nil,
|
|
8714
|
+
"costCentreId" => String | nil,
|
|
8715
|
+
"projectedMonthlyAmount" => Numeric | nil,
|
|
8716
|
+
"currency" => String | nil,
|
|
8717
|
+
"horizonMonths" => Integer | nil,
|
|
8718
|
+
"costAnnotationId" => String | nil,
|
|
8719
|
+
"createdByUserId" => String | nil,
|
|
8720
|
+
"createdAt" => String,
|
|
8721
|
+
"updatedAt" => String
|
|
8722
|
+
}
|
|
8723
|
+
|
|
8724
|
+
# Spec schema: `SavingsEventAnnotation`.
|
|
8725
|
+
type savings_event_annotation = {
|
|
8726
|
+
?"note" => String | nil,
|
|
8727
|
+
?"costCentreId" => String | nil,
|
|
8728
|
+
?"horizonMonths" => Integer | nil,
|
|
8729
|
+
?"endedOn" => String | nil
|
|
8730
|
+
}
|
|
8731
|
+
|
|
8732
|
+
# Spec schema: `SavingsEventInput`.
|
|
8733
|
+
type savings_event_input = {
|
|
8734
|
+
"title" => String,
|
|
8735
|
+
?"note" => String | nil,
|
|
8736
|
+
"occurredOn" => String,
|
|
8737
|
+
?"endedOn" => String | nil,
|
|
8738
|
+
"projectedMonthlyAmount" => Numeric,
|
|
8739
|
+
"currency" => String,
|
|
8740
|
+
?"resourceId" => String | nil,
|
|
8741
|
+
?"accountId" => String | nil,
|
|
8742
|
+
?"costCentreId" => String | nil,
|
|
8743
|
+
?"horizonMonths" => Integer | nil
|
|
8744
|
+
}
|
|
8745
|
+
|
|
8746
|
+
# `rightsizing` — a resize to a smaller size; `orphan_deletion` — a resource
|
|
8747
|
+
# the orphan finder flags was deleted; `sleep_schedule` — a stretch of a
|
|
8748
|
+
# sleep/wake schedule in force; `commitment` — reservation and savings-plan
|
|
8749
|
+
# discounts, derived from billing; `manual` — logged by a person.
|
|
8750
|
+
#
|
|
8751
|
+
# Spec schema: `SavingsEventKind`.
|
|
8752
|
+
type savings_event_kind = "rightsizing" | "orphan_deletion" | "sleep_schedule" | "commitment" | "manual"
|
|
8753
|
+
|
|
8754
|
+
# Spec schema: `SavingsEventResult`.
|
|
8755
|
+
type savings_event_result = {
|
|
8756
|
+
"id" => String,
|
|
8757
|
+
"kind" => savings_event_kind,
|
|
8758
|
+
"source" => savings_event_source,
|
|
8759
|
+
"title" => String,
|
|
8760
|
+
"note" => String | nil,
|
|
8761
|
+
"occurredOn" => String,
|
|
8762
|
+
"endedOn" => String | nil,
|
|
8763
|
+
"accountId" => String | nil,
|
|
8764
|
+
"accountName" => String | nil,
|
|
8765
|
+
"pluginId" => String | nil,
|
|
8766
|
+
"resourceTypeId" => String | nil,
|
|
8767
|
+
"resourceId" => String | nil,
|
|
8768
|
+
"resourceName" => String | nil,
|
|
8769
|
+
"costCentreId" => String | nil,
|
|
8770
|
+
"projectedMonthlyAmount" => Numeric | nil,
|
|
8771
|
+
"currency" => String | nil,
|
|
8772
|
+
"horizonMonths" => Integer | nil,
|
|
8773
|
+
"costAnnotationId" => String | nil,
|
|
8774
|
+
"createdByUserId" => String | nil,
|
|
8775
|
+
"createdAt" => String,
|
|
8776
|
+
"updatedAt" => String,
|
|
8777
|
+
"basis" => realized_savings_basis,
|
|
8778
|
+
"status" => "pending" | "accruing" | "complete" | "ended",
|
|
8779
|
+
"realizedCurrency" => String | nil,
|
|
8780
|
+
"baselinePerDay" => Numeric | nil,
|
|
8781
|
+
"currentPerDay" => Numeric | nil,
|
|
8782
|
+
"realizedToDate" => Numeric | nil,
|
|
8783
|
+
"realizedInRange" => Numeric | nil,
|
|
8784
|
+
"projectedInRange" => Numeric | nil,
|
|
8785
|
+
"accruedDays" => Integer,
|
|
8786
|
+
"horizonEndsOn" => String | nil,
|
|
8787
|
+
"attributedCostCentreId" => String | nil,
|
|
8788
|
+
"attributedCostCentreName" => String | nil,
|
|
8789
|
+
"shortfall" => savings_shortfall,
|
|
8790
|
+
"editable" => "full" | "annotate" | "none"
|
|
8791
|
+
}
|
|
8792
|
+
|
|
8793
|
+
# `in_app` — recorded when Infrawrench performed the action; `detected` —
|
|
8794
|
+
# inferred from an inventory diff on sync (the action was taken in the
|
|
8795
|
+
# provider's console); `manual`; `derived` — computed from billing with no
|
|
8796
|
+
# stored event (commitments).
|
|
8797
|
+
#
|
|
8798
|
+
# Spec schema: `SavingsEventSource`.
|
|
8799
|
+
type savings_event_source = "in_app" | "detected" | "manual" | "derived"
|
|
8800
|
+
|
|
8801
|
+
# Spec schema: `SavingsShortfall`.
|
|
8802
|
+
type savings_shortfall = {
|
|
8803
|
+
"kind" => "below_projection" | "grew_back",
|
|
8804
|
+
"realizedPerDay" => Numeric,
|
|
8805
|
+
"projectedPerDay" => Numeric | nil
|
|
8806
|
+
}
|
|
8807
|
+
| nil
|
|
8808
|
+
|
|
8499
8809
|
# Spec schema: `ScheduleConflict`.
|
|
8500
8810
|
type schedule_conflict = { "error" => String }
|
|
8501
8811
|
|
|
@@ -9316,6 +9626,20 @@ module Infrawrench
|
|
|
9316
9626
|
"uri" => String | nil
|
|
9317
9627
|
}
|
|
9318
9628
|
|
|
9629
|
+
# Spec schema: `UnattributedExtendedSupportCharge`.
|
|
9630
|
+
type unattributed_extended_support_charge = {
|
|
9631
|
+
?"resourceTypeId" => String,
|
|
9632
|
+
?"releaseId" => String,
|
|
9633
|
+
?"region" => String,
|
|
9634
|
+
?"engine" => String,
|
|
9635
|
+
"lineItem" => String,
|
|
9636
|
+
"amount" => Numeric,
|
|
9637
|
+
"currency" => String,
|
|
9638
|
+
"accountId" => String,
|
|
9639
|
+
"accountName" => String,
|
|
9640
|
+
"monthlyAmount" => Numeric
|
|
9641
|
+
}
|
|
9642
|
+
|
|
9319
9643
|
# Spec schema: `UnitCostLabelFilter`.
|
|
9320
9644
|
type unit_cost_label_filter = { "key" => String, "op" => "in" | "not_in", "values" => Array[String] }
|
|
9321
9645
|
|
|
@@ -9791,6 +10115,24 @@ module Infrawrench
|
|
|
9791
10115
|
def stats: (?org_id: String?, ?from: String?, ?to: String?, ?request_options: Hash[Symbol, untyped]?) -> ai_attribution_stats
|
|
9792
10116
|
end
|
|
9793
10117
|
|
|
10118
|
+
class AlertEmailSettingsNamespace
|
|
10119
|
+
def initialize: (Transport) -> void
|
|
10120
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> alert_email_settings_view
|
|
10121
|
+
def update: (?org_id: String?, ?body: alert_email_settings?, ?request_options: Hash[Symbol, untyped]?) -> alert_email_settings_view
|
|
10122
|
+
end
|
|
10123
|
+
|
|
10124
|
+
class AlertEmailSuppressionsNamespace
|
|
10125
|
+
def initialize: (Transport) -> void
|
|
10126
|
+
def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> { "ok" => bool }
|
|
10127
|
+
end
|
|
10128
|
+
|
|
10129
|
+
class AlertEmailNamespace
|
|
10130
|
+
attr_reader settings: AlertEmailSettingsNamespace
|
|
10131
|
+
attr_reader suppressions: AlertEmailSuppressionsNamespace
|
|
10132
|
+
def initialize: (Transport) -> void
|
|
10133
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> alert_email_options
|
|
10134
|
+
end
|
|
10135
|
+
|
|
9794
10136
|
class AlertRulesDeliveriesNamespace
|
|
9795
10137
|
def initialize: (Transport) -> void
|
|
9796
10138
|
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 }
|
|
@@ -10450,6 +10792,18 @@ module Infrawrench
|
|
|
10450
10792
|
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> expiry_list_response
|
|
10451
10793
|
end
|
|
10452
10794
|
|
|
10795
|
+
class ExtendedSupportSettingsNamespace
|
|
10796
|
+
def initialize: (Transport) -> void
|
|
10797
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> extended_support_settings
|
|
10798
|
+
def update: (?org_id: String?, ?body: extended_support_settings_update?, ?request_options: Hash[Symbol, untyped]?) -> extended_support_settings
|
|
10799
|
+
end
|
|
10800
|
+
|
|
10801
|
+
class ExtendedSupportNamespace
|
|
10802
|
+
attr_reader settings: ExtendedSupportSettingsNamespace
|
|
10803
|
+
def initialize: (Transport) -> void
|
|
10804
|
+
def get: (?org_id: String?, ?refresh: "true" | "false"?, ?request_options: Hash[Symbol, untyped]?) -> extended_support_list_response
|
|
10805
|
+
end
|
|
10806
|
+
|
|
10453
10807
|
class GithubIssuesPullRequestsNamespace
|
|
10454
10808
|
def initialize: (Transport) -> void
|
|
10455
10809
|
def create: (body: github_pull_request_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> github_pull_request_result
|
|
@@ -10887,6 +11241,32 @@ module Infrawrench
|
|
|
10887
11241
|
def update: (id: String, body: saved_cost_filter_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> saved_cost_filter
|
|
10888
11242
|
end
|
|
10889
11243
|
|
|
11244
|
+
class SavingsEventsUpdateNamespace
|
|
11245
|
+
def initialize: (Transport) -> void
|
|
11246
|
+
def patch_org_org_id_savings_events_id: (id: String, body: savings_event_annotation, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> savings_event
|
|
11247
|
+
def update: (id: String, body: savings_event_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> savings_event
|
|
11248
|
+
end
|
|
11249
|
+
|
|
11250
|
+
class SavingsEventsNamespace
|
|
11251
|
+
attr_reader update: SavingsEventsUpdateNamespace
|
|
11252
|
+
def initialize: (Transport) -> void
|
|
11253
|
+
def create: (body: savings_event_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> savings_event
|
|
11254
|
+
def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
|
|
11255
|
+
end
|
|
11256
|
+
|
|
11257
|
+
class SavingsSettingsNamespace
|
|
11258
|
+
def initialize: (Transport) -> void
|
|
11259
|
+
def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> realized_savings_settings
|
|
11260
|
+
def update: (body: realized_savings_settings, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> realized_savings_settings
|
|
11261
|
+
end
|
|
11262
|
+
|
|
11263
|
+
class SavingsNamespace
|
|
11264
|
+
attr_reader events: SavingsEventsNamespace
|
|
11265
|
+
attr_reader settings: SavingsSettingsNamespace
|
|
11266
|
+
def initialize: (Transport) -> void
|
|
11267
|
+
def realized: (?org_id: String?, ?from: String?, ?to: String?, ?request_options: Hash[Symbol, untyped]?) -> realized_savings_report
|
|
11268
|
+
end
|
|
11269
|
+
|
|
10890
11270
|
class SchedulesNamespace
|
|
10891
11271
|
def initialize: (Transport) -> void
|
|
10892
11272
|
def create: (?org_id: String?, ?body: sleep_schedule_create?, ?request_options: Hash[Symbol, untyped]?) -> sleep_schedule
|
|
@@ -11159,6 +11539,7 @@ module Infrawrench
|
|
|
11159
11539
|
attr_reader agent_registrations: AgentRegistrationsNamespace
|
|
11160
11540
|
attr_reader agents: AgentsNamespace
|
|
11161
11541
|
attr_reader ai_attribution: AiAttributionNamespace
|
|
11542
|
+
attr_reader alert_email: AlertEmailNamespace
|
|
11162
11543
|
attr_reader alert_rules: AlertRulesNamespace
|
|
11163
11544
|
attr_reader api_keys: ApiKeysNamespace
|
|
11164
11545
|
attr_reader apps: AppsNamespace
|
|
@@ -11207,6 +11588,7 @@ module Infrawrench
|
|
|
11207
11588
|
attr_reader environment_diff: EnvironmentDiffNamespace
|
|
11208
11589
|
attr_reader environments: EnvironmentsNamespace
|
|
11209
11590
|
attr_reader expiring: ExpiringNamespace
|
|
11591
|
+
attr_reader extended_support: ExtendedSupportNamespace
|
|
11210
11592
|
attr_reader github_issues: GithubIssuesNamespace
|
|
11211
11593
|
attr_reader iac: IacNamespace
|
|
11212
11594
|
attr_reader incidents: IncidentsNamespace
|
|
@@ -11237,6 +11619,7 @@ module Infrawrench
|
|
|
11237
11619
|
attr_reader rightsizing: RightsizingNamespace
|
|
11238
11620
|
attr_reader runbooks: RunbooksNamespace
|
|
11239
11621
|
attr_reader saved_cost_filters: SavedCostFiltersNamespace
|
|
11622
|
+
attr_reader savings: SavingsNamespace
|
|
11240
11623
|
attr_reader schedules: SchedulesNamespace
|
|
11241
11624
|
attr_reader search: SearchNamespace
|
|
11242
11625
|
attr_reader session_recordings: SessionRecordingsNamespace
|
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.73.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-10-05 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.73.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.73.0).
|
|
62
62
|
test_files: []
|