infrawrench-sdk 1.98.0 → 1.99.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.
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.98.0 | MIT | Copyright (c) 2026 Infrawrench Services, Inc.
3
+ # infrawrench-sdk v1.99.0 | MIT | Copyright (c) 2026 Infrawrench Services, Inc.
4
4
  # https://github.com/Infrawrench/Infrawrench
5
5
  #
6
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.98.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.99.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -38,12 +38,13 @@ module Infrawrench
38
38
  #
39
39
  # Raises on 400: Bad request
40
40
  #
41
- # Raises on 403: Self-approval, or granting beyond the approver's own
42
- # permissions
41
+ # Raises on 401: Unauthenticated
42
+ #
43
+ # Raises on 403: AccessDecisionForbidden
43
44
  #
44
45
  # Raises on 404: Not found
45
46
  #
46
- # Raises on 409: Already decided, or the request timed out
47
+ # Raises on 409: AccessDecisionConflict
47
48
  #
48
49
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
49
50
  # constructed with.
@@ -101,6 +102,8 @@ module Infrawrench
101
102
  #
102
103
  # Raises on 400: Bad request
103
104
  #
105
+ # Raises on 401: Unauthenticated
106
+ #
104
107
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
105
108
  # constructed with.
106
109
  # @param body [Hash, nil] Request body, shaped as `AccessRequestCreate`.
@@ -131,12 +134,13 @@ module Infrawrench
131
134
  #
132
135
  # Raises on 400: Bad request
133
136
  #
134
- # Raises on 403: Self-approval, or granting beyond the approver's own
135
- # permissions
137
+ # Raises on 401: Unauthenticated
138
+ #
139
+ # Raises on 403: AccessDecisionForbidden
136
140
  #
137
141
  # Raises on 404: Not found
138
142
  #
139
- # Raises on 409: Already decided, or the request timed out
143
+ # Raises on 409: AccessDecisionConflict
140
144
  #
141
145
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
142
146
  # constructed with.
@@ -197,9 +201,13 @@ module Infrawrench
197
201
  #
198
202
  # POST /api/org/{orgId}/access-requests/{requestId}/revoke
199
203
  #
204
+ # Raises on 401: Unauthenticated
205
+ #
206
+ # Raises on 403: Forbidden
207
+ #
200
208
  # Raises on 404: Not found
201
209
  #
202
- # Raises on 409: The grant is not active
210
+ # Raises on 409: AccessRevokeConflict
203
211
  #
204
212
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
205
213
  # constructed with.
@@ -226,9 +234,11 @@ module Infrawrench
226
234
  #
227
235
  # POST /api/org/{orgId}/access-requests/{requestId}/withdraw
228
236
  #
237
+ # Raises on 401: Unauthenticated
238
+ #
229
239
  # Raises on 404: Not found
230
240
  #
231
- # Raises on 409: Already decided or expired
241
+ # Raises on 409: AccessWithdrawConflict
232
242
  #
233
243
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
234
244
  # constructed with.
@@ -687,7 +697,7 @@ module Infrawrench
687
697
  #
688
698
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
689
699
  # constructed with.
690
- # @param body [Hash] Request body, shaped as `CreateAccountRequest & Hash`.
700
+ # @param body [Hash] Request body, shaped as `CreateAccountRequest`.
691
701
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
692
702
  # @return [Hash] Parsed JSON, shaped as `CreateAccountResponse` — see
693
703
  # `sig/infrawrench/sdk.rbs`.
@@ -1399,9 +1409,6 @@ module Infrawrench
1399
1409
  #
1400
1410
  # Raises on 503: A backing service this endpoint depends on is not available
1401
1411
  #
1402
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
1403
- # again and retry; the request itself was well-formed.
1404
- #
1405
1412
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1406
1413
  # constructed with.
1407
1414
  # @param id [String]
@@ -1440,9 +1447,6 @@ module Infrawrench
1440
1447
  #
1441
1448
  # Raises on 503: A backing service this endpoint depends on is not available
1442
1449
  #
1443
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
1444
- # again and retry; the request itself was well-formed.
1445
- #
1446
1450
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1447
1451
  # constructed with.
1448
1452
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -1493,9 +1497,6 @@ module Infrawrench
1493
1497
  #
1494
1498
  # Raises on 503: A backing service this endpoint depends on is not available
1495
1499
  #
1496
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
1497
- # again and retry; the request itself was well-formed.
1498
- #
1499
1500
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1500
1501
  # constructed with.
1501
1502
  # @param id [String]
@@ -1534,9 +1535,6 @@ module Infrawrench
1534
1535
  #
1535
1536
  # Raises on 503: A backing service this endpoint depends on is not available
1536
1537
  #
1537
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
1538
- # again and retry; the request itself was well-formed.
1539
- #
1540
1538
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1541
1539
  # constructed with.
1542
1540
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -1579,9 +1577,6 @@ module Infrawrench
1579
1577
  #
1580
1578
  # Raises on 503: A backing service this endpoint depends on is not available
1581
1579
  #
1582
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
1583
- # again and retry; the request itself was well-formed.
1584
- #
1585
1580
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1586
1581
  # constructed with.
1587
1582
  # @param id [String]
@@ -1745,7 +1740,7 @@ module Infrawrench
1745
1740
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1746
1741
  # constructed with.
1747
1742
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1748
- # @return [Hash, nil] Parsed JSON, shaped as `AgentSettings` — see
1743
+ # @return [Hash, nil] Parsed JSON, shaped as `AgentSettings | nil` — see
1749
1744
  # `sig/infrawrench/sdk.rbs`.
1750
1745
  # @raise [Infrawrench::ApiError] On any non-2xx response.
1751
1746
  def get(org_id: nil, request_options: nil)
@@ -1765,10 +1760,9 @@ module Infrawrench
1765
1760
  #
1766
1761
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1767
1762
  # constructed with.
1768
- # @param body [Hash] Request body, shaped as `AgentSettings & Hash`.
1763
+ # @param body [Hash] Request body, shaped as `AgentSettings`.
1769
1764
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1770
- # @return [Hash] Parsed JSON, shaped as `AgentSettings & Hash` — see
1771
- # `sig/infrawrench/sdk.rbs`.
1765
+ # @return [Hash] Parsed JSON, shaped as `AgentSettings` — see `sig/infrawrench/sdk.rbs`.
1772
1766
  # @raise [Infrawrench::ApiError] On any non-2xx response.
1773
1767
  def update(body:, org_id: nil, request_options: nil)
1774
1768
  @transport.request(
@@ -1800,6 +1794,8 @@ module Infrawrench
1800
1794
  # policy, that the policy does not fit, or that are still setting up are not
1801
1795
  # dialled. Requires `resources:execute`.
1802
1796
  #
1797
+ # _Requires permission: `resources:execute`._
1798
+ #
1803
1799
  # POST /api/org/{orgId}/agents/t3-policy/apply
1804
1800
  #
1805
1801
  # Raises on 400: Bad request
@@ -1897,6 +1893,8 @@ module Infrawrench
1897
1893
 
1898
1894
  # Map request-metadata keys to a caller dimension
1899
1895
  #
1896
+ # _Requires permission: `costs:write`._
1897
+ #
1900
1898
  # POST /api/org/{orgId}/ai-attribution/dimensions
1901
1899
  #
1902
1900
  # Raises on 400: Bad request
@@ -1922,6 +1920,8 @@ module Infrawrench
1922
1920
 
1923
1921
  # Delete a caller dimension
1924
1922
  #
1923
+ # _Requires permission: `costs:write`._
1924
+ #
1925
1925
  # DELETE /api/org/{orgId}/ai-attribution/dimensions/{id}
1926
1926
  #
1927
1927
  # Raises on 403: Forbidden
@@ -1945,6 +1945,8 @@ module Infrawrench
1945
1945
 
1946
1946
  # List caller dimensions
1947
1947
  #
1948
+ # _Requires permission: `costs:read`._
1949
+ #
1948
1950
  # GET /api/org/{orgId}/ai-attribution/dimensions
1949
1951
  #
1950
1952
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -1963,6 +1965,8 @@ module Infrawrench
1963
1965
 
1964
1966
  # Update a caller dimension
1965
1967
  #
1968
+ # _Requires permission: `costs:write`._
1969
+ #
1966
1970
  # PUT /api/org/{orgId}/ai-attribution/dimensions/{id}
1967
1971
  #
1968
1972
  # Raises on 400: Bad request
@@ -2004,6 +2008,8 @@ module Infrawrench
2004
2008
  # org's request logs, and the Bedrock CloudWatch kind runs a Logs Insights
2005
2009
  # query billed to the org's own AWS account per GB scanned. Audit-logged.
2006
2010
  #
2011
+ # _Requires permission: `org:settings:write`._
2012
+ #
2007
2013
  # POST /api/org/{orgId}/ai-attribution/sources
2008
2014
  #
2009
2015
  # Raises on 400: Bad request
@@ -2030,6 +2036,8 @@ module Infrawrench
2030
2036
 
2031
2037
  # Delete a request-log source
2032
2038
  #
2039
+ # _Requires permission: `org:settings:write`._
2040
+ #
2033
2041
  # DELETE /api/org/{orgId}/ai-attribution/sources/{id}
2034
2042
  #
2035
2043
  # Raises on 403: Forbidden
@@ -2053,6 +2061,8 @@ module Infrawrench
2053
2061
 
2054
2062
  # List request-log sources
2055
2063
  #
2064
+ # _Requires permission: `costs:read`._
2065
+ #
2056
2066
  # GET /api/org/{orgId}/ai-attribution/sources
2057
2067
  #
2058
2068
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -2071,6 +2081,8 @@ module Infrawrench
2071
2081
 
2072
2082
  # Read one request-log source
2073
2083
  #
2084
+ # _Requires permission: `costs:read`._
2085
+ #
2074
2086
  # GET /api/org/{orgId}/ai-attribution/sources/{id}
2075
2087
  #
2076
2088
  # Raises on 404: Not found
@@ -2096,6 +2108,8 @@ module Infrawrench
2096
2108
  # reaches history only by re-reading it. Clamped to the source kind's
2097
2109
  # history limit.
2098
2110
  #
2111
+ # _Requires permission: `org:settings:write`._
2112
+ #
2099
2113
  # POST /api/org/{orgId}/ai-attribution/sources/{id}/recollect
2100
2114
  #
2101
2115
  # Raises on 400: Bad request
@@ -2123,6 +2137,8 @@ module Infrawrench
2123
2137
  #
2124
2138
  # Pointing a source at a different location restarts its collection history.
2125
2139
  #
2140
+ # _Requires permission: `org:settings:write`._
2141
+ #
2126
2142
  # PUT /api/org/{orgId}/ai-attribution/sources/{id}
2127
2143
  #
2128
2144
  # Raises on 400: Bad request
@@ -2166,6 +2182,8 @@ module Infrawrench
2166
2182
 
2167
2183
  # Discover locations (buckets, log groups, gateways) for a source kind
2168
2184
  #
2185
+ # _Requires permission: `org:settings:write`._
2186
+ #
2169
2187
  # GET /api/org/{orgId}/ai-attribution/locations
2170
2188
  #
2171
2189
  # Raises on 400: Bad request
@@ -2174,6 +2192,8 @@ module Infrawrench
2174
2192
  #
2175
2193
  # Raises on 404: Not found
2176
2194
  #
2195
+ # Raises on 502: Bad gateway: an upstream service failed
2196
+ #
2177
2197
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
2178
2198
  # constructed with.
2179
2199
  # @param account_id [String]
@@ -2193,6 +2213,8 @@ module Infrawrench
2193
2213
 
2194
2214
  # Re-split a range of days now
2195
2215
  #
2216
+ # _Requires permission: `costs:write`._
2217
+ #
2196
2218
  # POST /api/org/{orgId}/ai-attribution/reattribute
2197
2219
  #
2198
2220
  # Raises on 400: Bad request
@@ -2217,6 +2239,8 @@ module Infrawrench
2217
2239
 
2218
2240
  # List the request-log source kinds the org can add
2219
2241
  #
2242
+ # _Requires permission: `costs:read`._
2243
+ #
2220
2244
  # GET /api/org/{orgId}/ai-attribution/source-kinds
2221
2245
  #
2222
2246
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -2239,6 +2263,8 @@ module Infrawrench
2239
2263
  # requests that lacked every mapped key. For time series, group a cost
2240
2264
  # report by the tag key `caller:<dimension>`.
2241
2265
  #
2266
+ # _Requires permission: `costs:read`._
2267
+ #
2242
2268
  # GET /api/org/{orgId}/ai-attribution/spend
2243
2269
  #
2244
2270
  # Raises on 400: Bad request
@@ -2263,6 +2289,8 @@ module Infrawrench
2263
2289
 
2264
2290
  # Match-rate statistics per source and coverage per provider
2265
2291
  #
2292
+ # _Requires permission: `costs:read`._
2293
+ #
2266
2294
  # GET /api/org/{orgId}/ai-attribution/stats
2267
2295
  #
2268
2296
  # Raises on 400: Bad request
@@ -2296,6 +2324,8 @@ module Infrawrench
2296
2324
 
2297
2325
  # Get the alert email policy and suppression list
2298
2326
  #
2327
+ # _Requires permission: `org:settings:write`._
2328
+ #
2299
2329
  # GET /api/org/{orgId}/alert-email/settings
2300
2330
  #
2301
2331
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -2319,6 +2349,8 @@ module Infrawrench
2319
2349
  # list: an address that no longer passes is skipped at send time, and
2320
2350
  # loosening the policy again brings it back.
2321
2351
  #
2352
+ # _Requires permission: `org:settings:write`._
2353
+ #
2322
2354
  # PUT /api/org/{orgId}/alert-email/settings
2323
2355
  #
2324
2356
  # Raises on 400: Bad request
@@ -2351,6 +2383,8 @@ module Infrawrench
2351
2383
 
2352
2384
  # Resume alert email to an unsubscribed address
2353
2385
  #
2386
+ # _Requires permission: `org:settings:write`._
2387
+ #
2354
2388
  # DELETE /api/org/{orgId}/alert-email/suppressions/{id}
2355
2389
  #
2356
2390
  # Raises on 404: Not found
@@ -2394,6 +2428,8 @@ module Infrawrench
2394
2428
  # anomaly settings or efficiency alert settings, or an email destination on
2395
2429
  # an alert routing rule. Requires `costs:read`.
2396
2430
  #
2431
+ # _Requires permission: `costs:read`._
2432
+ #
2397
2433
  # GET /api/org/{orgId}/alert-email
2398
2434
  #
2399
2435
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -2425,6 +2461,8 @@ module Infrawrench
2425
2461
  # two people pressing at once produce one acknowledgement and an alert that
2426
2462
  # already escalated cannot be retroactively silenced.
2427
2463
  #
2464
+ # _Requires permission: `org:settings:write`._
2465
+ #
2428
2466
  # POST /api/org/{orgId}/alert-rules/deliveries/{id}/ack
2429
2467
  #
2430
2468
  # Raises on 401: Unauthenticated
@@ -2450,6 +2488,8 @@ module Infrawrench
2450
2488
 
2451
2489
  # Drop held or awaiting-acknowledgement deliveries
2452
2490
  #
2491
+ # _Requires permission: `org:settings:write`._
2492
+ #
2453
2493
  # POST /api/org/{orgId}/alert-rules/deliveries/cancel
2454
2494
  #
2455
2495
  # Raises on 400: Bad request
@@ -2478,6 +2518,8 @@ module Infrawrench
2478
2518
  # quiet hours, or one waiting on an acknowledgement. An alert that went
2479
2519
  # straight out leaves no row.
2480
2520
  #
2521
+ # _Requires permission: `org:settings:write`._
2522
+ #
2481
2523
  # GET /api/org/{orgId}/alert-rules/deliveries
2482
2524
  #
2483
2525
  # Raises on 403: Forbidden
@@ -2516,6 +2558,8 @@ module Infrawrench
2516
2558
  #
2517
2559
  # A no-op when the organization already has rules.
2518
2560
  #
2561
+ # _Requires permission: `org:settings:write`._
2562
+ #
2519
2563
  # POST /api/org/{orgId}/alert-rules/adopt-defaults
2520
2564
  #
2521
2565
  # Raises on 403: Forbidden
@@ -2541,6 +2585,8 @@ module Infrawrench
2541
2585
  # that has saved no rules gets the synthesized default with `usingDefaults:
2542
2586
  # true`.
2543
2587
  #
2588
+ # _Requires permission: `org:settings:write`._
2589
+ #
2544
2590
  # GET /api/org/{orgId}/alert-rules
2545
2591
  #
2546
2592
  # Raises on 403: Forbidden
@@ -2567,6 +2613,8 @@ module Infrawrench
2567
2613
  # as several requests would leave a window in which alerts route somewhere
2568
2614
  # nobody asked for. Positions are re-derived from array order.
2569
2615
  #
2616
+ # _Requires permission: `org:settings:write`._
2617
+ #
2570
2618
  # PUT /api/org/{orgId}/alert-rules
2571
2619
  #
2572
2620
  # Raises on 400: Bad request
@@ -2600,8 +2648,12 @@ module Infrawrench
2600
2648
 
2601
2649
  # Create an API key (plaintext returned once)
2602
2650
  #
2651
+ # _Requires permission: `apikeys:write`._
2652
+ #
2603
2653
  # POST /api/org/{orgId}/api-keys
2604
2654
  #
2655
+ # Raises on 400: Bad request
2656
+ #
2605
2657
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
2606
2658
  # constructed with.
2607
2659
  # @param body [Hash] Request body, shaped as `CreateApiKeyRequest`.
@@ -2620,6 +2672,8 @@ module Infrawrench
2620
2672
 
2621
2673
  # List API keys (no plaintext)
2622
2674
  #
2675
+ # _Requires permission: `apikeys:read`._
2676
+ #
2623
2677
  # GET /api/org/{orgId}/api-keys
2624
2678
  #
2625
2679
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -2639,6 +2693,8 @@ module Infrawrench
2639
2693
 
2640
2694
  # Revoke an API key
2641
2695
  #
2696
+ # _Requires permission: `apikeys:write`._
2697
+ #
2642
2698
  # POST /api/org/{orgId}/api-keys/{id}/revoke
2643
2699
  #
2644
2700
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -2658,6 +2714,8 @@ module Infrawrench
2658
2714
 
2659
2715
  # Rotate an API key (revokes old, returns new)
2660
2716
  #
2717
+ # _Requires permission: `apikeys:write`._
2718
+ #
2661
2719
  # POST /api/org/{orgId}/api-keys/{id}/rotate
2662
2720
  #
2663
2721
  # Raises on 404: Not found
@@ -2693,6 +2751,8 @@ module Infrawrench
2693
2751
  # it opens a connection to the named host and must never be cached; its
2694
2752
  # whole value is saying what the host is now.
2695
2753
  #
2754
+ # _Requires permission: `resources:execute`._
2755
+ #
2696
2756
  # POST /api/org/{orgId}/apps/check
2697
2757
  #
2698
2758
  # Raises on 400: Bad request
@@ -2732,14 +2792,17 @@ module Infrawrench
2732
2792
  # as `{"error":"…"}` inside the stream, because the status line has already
2733
2793
  # been sent by then.
2734
2794
  #
2795
+ # _Requires permission: `resources:execute`._
2796
+ #
2735
2797
  # POST /api/org/{orgId}/apps/setup
2736
2798
  #
2737
2799
  # Raises on 400: Bad request
2738
2800
  #
2739
2801
  # Raises on 404: Not found
2740
2802
  #
2741
- # Raises on 409: A change freeze is in effect, or the host key needs
2742
- # trusting
2803
+ # Raises on 423: Blocked by an active change freeze. Retry with the
2804
+ # `x-change-freeze-override: true` header if you hold `freezes:override`;
2805
+ # both blocks and overrides are audit-logged.
2743
2806
  #
2744
2807
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
2745
2808
  # constructed with.
@@ -3042,10 +3105,14 @@ module Infrawrench
3042
3105
  # reporting what you did, and the person who spent Saturday restoring a
3043
3106
  # database is rarely the person who set the recovery objective.
3044
3107
  #
3108
+ # _Requires permission: `resources:write`._
3109
+ #
3045
3110
  # POST /api/org/{orgId}/backups/drills
3046
3111
  #
3047
3112
  # Raises on 400: Bad request
3048
3113
  #
3114
+ # Raises on 404: Not found
3115
+ #
3049
3116
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3050
3117
  # constructed with.
3051
3118
  # @param body [Hash, nil] Request body, shaped as `RestoreDrillCreate`.
@@ -3068,6 +3135,8 @@ module Infrawrench
3068
3135
  # deleting evidence that a restore failed is exactly the edit a reviewer
3069
3136
  # would want to know about.
3070
3137
  #
3138
+ # _Requires permission: `resources:write`._
3139
+ #
3071
3140
  # DELETE /api/org/{orgId}/backups/drills/{drillId}
3072
3141
  #
3073
3142
  # Raises on 404: Not found
@@ -3099,6 +3168,8 @@ module Infrawrench
3099
3168
  # with production, and cannot be generically verified. What the product can
3100
3169
  # do is make the exercise scheduled, recorded and visible when it lapses.
3101
3170
  #
3171
+ # _Requires permission: `resources:read`._
3172
+ #
3102
3173
  # GET /api/org/{orgId}/backups/drills
3103
3174
  #
3104
3175
  # Raises on 400: Bad request
@@ -3123,6 +3194,8 @@ module Infrawrench
3123
3194
 
3124
3195
  # List recorded restore drills
3125
3196
  #
3197
+ # _Requires permission: `resources:read`._
3198
+ #
3126
3199
  # GET /api/org/{orgId}/backups/drills/log
3127
3200
  #
3128
3201
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -3157,10 +3230,14 @@ module Infrawrench
3157
3230
  # protection while providing none. An empty `resourceTypeIds` selects every
3158
3231
  # stateful resource type.
3159
3232
  #
3233
+ # _Requires permission: `org:settings:write`._
3234
+ #
3160
3235
  # POST /api/org/{orgId}/backups/policies
3161
3236
  #
3162
3237
  # Raises on 400: Bad request
3163
3238
  #
3239
+ # Raises on 404: Not found
3240
+ #
3164
3241
  # Raises on 409: Conflict
3165
3242
  #
3166
3243
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -3184,6 +3261,8 @@ module Infrawrench
3184
3261
  # Removes the objective. To stop a policy judging without losing it, set
3185
3262
  # `enabled` to false instead.
3186
3263
  #
3264
+ # _Requires permission: `org:settings:write`._
3265
+ #
3187
3266
  # DELETE /api/org/{orgId}/backups/policies/{policyId}
3188
3267
  #
3189
3268
  # Raises on 404: Not found
@@ -3210,6 +3289,8 @@ module Infrawrench
3210
3289
  # resources by type and/or tag and demands a maximum RPO, a minimum
3211
3290
  # retention, or both.
3212
3291
  #
3292
+ # _Requires permission: `resources:read`._
3293
+ #
3213
3294
  # GET /api/org/{orgId}/backups/policies
3214
3295
  #
3215
3296
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -3233,12 +3314,16 @@ module Infrawrench
3233
3314
  # after merging, so a patch that would leave the policy demanding nothing is
3234
3315
  # rejected.
3235
3316
  #
3317
+ # _Requires permission: `org:settings:write`._
3318
+ #
3236
3319
  # PATCH /api/org/{orgId}/backups/policies/{policyId}
3237
3320
  #
3238
3321
  # Raises on 400: Bad request
3239
3322
  #
3240
3323
  # Raises on 404: Not found
3241
3324
  #
3325
+ # Raises on 409: Conflict
3326
+ #
3242
3327
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3243
3328
  # constructed with.
3244
3329
  # @param policy_id [String]
@@ -3282,6 +3367,8 @@ module Infrawrench
3282
3367
  # Orphaned backups carry a trailing-30-day spend quote when billing data is
3283
3368
  # available.
3284
3369
  #
3370
+ # _Requires permission: `resources:read`._
3371
+ #
3285
3372
  # GET /api/org/{orgId}/backups
3286
3373
  #
3287
3374
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -3397,6 +3484,8 @@ module Infrawrench
3397
3484
  # 400 for complimentary organizations, and 503 when the deployment has no
3398
3485
  # one-time capacity price configured.
3399
3486
  #
3487
+ # _Requires permission: `billing:write`._
3488
+ #
3400
3489
  # POST /api/org/{orgId}/billing/capacity/checkout
3401
3490
  #
3402
3491
  # Raises on 400: Bad request
@@ -3811,6 +3900,10 @@ module Infrawrench
3811
3900
  #
3812
3901
  # Raises on 400: Bad request
3813
3902
  #
3903
+ # Raises on 403: Forbidden
3904
+ #
3905
+ # Raises on 409: Conflict
3906
+ #
3814
3907
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3815
3908
  # constructed with.
3816
3909
  # @param body [Hash] Request body, shaped as `PricingPreviewRequest`.
@@ -3914,11 +4007,12 @@ module Infrawrench
3914
4007
  #
3915
4008
  # GET /api/org/{orgId}/blast-radius
3916
4009
  #
3917
- # Raises on 400: Missing resourceId
4010
+ # Raises on 400: Bad request
3918
4011
  #
3919
4012
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3920
4013
  # constructed with.
3921
- # @param resource_id [Hash]
4014
+ # @param resource_id [String] The resource to report on. A query parameter rather than a
4015
+ # path segment because composite resource ids contain slashes and colons.
3922
4016
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3923
4017
  # @return [Hash] Parsed JSON, shaped as `BlastRadiusReport` — see `sig/infrawrench/sdk.rbs`.
3924
4018
  # @raise [Infrawrench::ApiError] On any non-2xx response.
@@ -3943,6 +4037,8 @@ module Infrawrench
3943
4037
 
3944
4038
  # Alert event history for a budget
3945
4039
  #
4040
+ # _Requires permission: `budgets:read`._
4041
+ #
3946
4042
  # GET /api/org/{orgId}/budgets/{id}/events
3947
4043
  #
3948
4044
  # Raises on 404: Not found
@@ -3980,6 +4076,8 @@ module Infrawrench
3980
4076
  #
3981
4077
  # Raises on 400: Bad request
3982
4078
  #
4079
+ # Raises on 403: Forbidden
4080
+ #
3983
4081
  # Raises on 404: Not found
3984
4082
  #
3985
4083
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -4016,6 +4114,8 @@ module Infrawrench
4016
4114
 
4017
4115
  # Create a budget
4018
4116
  #
4117
+ # _Requires permission: `budgets:write`._
4118
+ #
4019
4119
  # POST /api/org/{orgId}/budgets
4020
4120
  #
4021
4121
  # Raises on 400: Bad request
@@ -4038,6 +4138,8 @@ module Infrawrench
4038
4138
 
4039
4139
  # Delete a budget
4040
4140
  #
4141
+ # _Requires permission: `budgets:write`._
4142
+ #
4041
4143
  # DELETE /api/org/{orgId}/budgets/{id}
4042
4144
  #
4043
4145
  # Raises on 404: Not found
@@ -4059,6 +4161,8 @@ module Infrawrench
4059
4161
 
4060
4162
  # Get a budget with current-period status
4061
4163
  #
4164
+ # _Requires permission: `budgets:read`._
4165
+ #
4062
4166
  # GET /api/org/{orgId}/budgets/{id}
4063
4167
  #
4064
4168
  # Raises on 404: Not found
@@ -4080,6 +4184,8 @@ module Infrawrench
4080
4184
 
4081
4185
  # List budgets with current-period actuals and forecasts
4082
4186
  #
4187
+ # _Requires permission: `budgets:read`._
4188
+ #
4083
4189
  # GET /api/org/{orgId}/budgets
4084
4190
  #
4085
4191
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -4099,6 +4205,8 @@ module Infrawrench
4099
4205
 
4100
4206
  # Update a budget
4101
4207
  #
4208
+ # _Requires permission: `budgets:write`._
4209
+ #
4102
4210
  # PUT /api/org/{orgId}/budgets/{id}
4103
4211
  #
4104
4212
  # Raises on 400: Bad request
@@ -4350,6 +4458,8 @@ module Infrawrench
4350
4458
  #
4351
4459
  # Raises on 400: Bad request
4352
4460
  #
4461
+ # Raises on 403: Forbidden
4462
+ #
4353
4463
  # Raises on 404: Not found
4354
4464
  #
4355
4465
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -4413,6 +4523,8 @@ module Infrawrench
4413
4523
  #
4414
4524
  # Raises on 400: Bad request
4415
4525
  #
4526
+ # Raises on 403: Forbidden
4527
+ #
4416
4528
  # Raises on 404: Not found
4417
4529
  #
4418
4530
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -4420,7 +4532,7 @@ module Infrawrench
4420
4532
  # @param id [String] Metric id or key
4421
4533
  # @param body [Hash] Request body, shaped as `BusinessMetricImporterInput`.
4422
4534
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4423
- # @return [Hash] Parsed JSON, shaped as `BusinessMetricImporter & Hash` — see
4535
+ # @return [Hash] Parsed JSON, shaped as `BusinessMetricImporter` — see
4424
4536
  # `sig/infrawrench/sdk.rbs`.
4425
4537
  # @raise [Infrawrench::ApiError] On any non-2xx response.
4426
4538
  def update(id:, body:, org_id: nil, request_options: nil)
@@ -4544,6 +4656,8 @@ module Infrawrench
4544
4656
  # bought the denominator. A bucket with no usage is a gap (`no_usage`),
4545
4657
  # never 0. Labels do not apply.
4546
4658
  #
4659
+ # _Requires permission: `costs:read`._
4660
+ #
4547
4661
  # POST /api/org/{orgId}/business-metrics/usage-unit-costs
4548
4662
  #
4549
4663
  # Raises on 400: Bad request
@@ -4712,7 +4826,7 @@ module Infrawrench
4712
4826
  #
4713
4827
  # Raises on 400: Bad request
4714
4828
  #
4715
- # Raises on 409: A live metric already uses this key.
4829
+ # Raises on 409: Conflict
4716
4830
  #
4717
4831
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4718
4832
  # constructed with.
@@ -4770,6 +4884,8 @@ module Infrawrench
4770
4884
  #
4771
4885
  # Raises on 400: Bad request
4772
4886
  #
4887
+ # Raises on 403: Forbidden
4888
+ #
4773
4889
  # Raises on 404: Not found
4774
4890
  #
4775
4891
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -4801,6 +4917,8 @@ module Infrawrench
4801
4917
  #
4802
4918
  # Raises on 400: Bad request
4803
4919
  #
4920
+ # Raises on 403: Forbidden
4921
+ #
4804
4922
  # Raises on 404: Not found
4805
4923
  #
4806
4924
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -4850,6 +4968,8 @@ module Infrawrench
4850
4968
  # (at most 500) and its cost mapping. A mapped label nobody has reported yet
4851
4969
  # is listed with no values.
4852
4970
  #
4971
+ # _Requires permission: `costs:read`._
4972
+ #
4853
4973
  # GET /api/org/{orgId}/business-metrics/{id}/labels
4854
4974
  #
4855
4975
  # Raises on 404: Not found
@@ -4884,7 +5004,7 @@ module Infrawrench
4884
5004
  #
4885
5005
  # Raises on 404: Not found
4886
5006
  #
4887
- # Raises on 409: A live metric already uses this key.
5007
+ # Raises on 409: Conflict
4888
5008
  #
4889
5009
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4890
5010
  # constructed with.
@@ -4909,6 +5029,8 @@ module Infrawrench
4909
5029
  # 90 days, most spend first, with a few of the services reporting each.
4910
5030
  # Backs the per-usage-unit picker.
4911
5031
  #
5032
+ # _Requires permission: `costs:read`._
5033
+ #
4912
5034
  # GET /api/org/{orgId}/business-metrics/usage-units
4913
5035
  #
4914
5036
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -4943,6 +5065,8 @@ module Infrawrench
4943
5065
  #
4944
5066
  # An organization may hold 25 live subscriptions; revoking makes room.
4945
5067
  #
5068
+ # _Requires permission: `org:settings:write`._
5069
+ #
4946
5070
  # POST /api/org/{orgId}/calendar/subscriptions
4947
5071
  #
4948
5072
  # Raises on 400: Bad request
@@ -4969,6 +5093,8 @@ module Infrawrench
4969
5093
  # The URL stops working immediately. The row is kept, and revoking twice is
4970
5094
  # not an error.
4971
5095
  #
5096
+ # _Requires permission: `org:settings:write`._
5097
+ #
4972
5098
  # DELETE /api/org/{orgId}/calendar/subscriptions/{subscriptionId}
4973
5099
  #
4974
5100
  # Raises on 404: Not found
@@ -4995,6 +5121,8 @@ module Infrawrench
4995
5121
  # kept so the audit trail still resolves. The token itself is never
4996
5122
  # returned.
4997
5123
  #
5124
+ # _Requires permission: `org:settings:write`._
5125
+ #
4998
5126
  # GET /api/org/{orgId}/calendar/subscriptions
4999
5127
  #
5000
5128
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5038,6 +5166,8 @@ module Infrawrench
5038
5166
  # 400. Recurring sources are expanded to at most 400 occurrences each, so
5039
5167
  # one nightly schedule cannot flood a year-long query.
5040
5168
  #
5169
+ # _Requires permission: `resources:read`._
5170
+ #
5041
5171
  # GET /api/org/{orgId}/calendar
5042
5172
  #
5043
5173
  # Raises on 400: Bad request
@@ -5297,6 +5427,8 @@ module Infrawrench
5297
5427
  # Who receives it is the `resourceDrift` opt-in on push preferences, Slack
5298
5428
  # channels and Teams webhooks; off by default on all three.
5299
5429
  #
5430
+ # _Requires permission: `org:settings:write`._
5431
+ #
5300
5432
  # GET /api/org/{orgId}/changes/alert-settings
5301
5433
  #
5302
5434
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5321,6 +5453,8 @@ module Infrawrench
5321
5453
  # notification rate would follow the sync rate again, which is what the
5322
5454
  # batching exists to prevent.
5323
5455
  #
5456
+ # _Requires permission: `org:settings:write`._
5457
+ #
5324
5458
  # PUT /api/org/{orgId}/changes/alert-settings
5325
5459
  #
5326
5460
  # Raises on 400: Bad request
@@ -5411,27 +5545,23 @@ module Infrawrench
5411
5545
  # poll observes the reverted state and records it as an ordinary change
5412
5546
  # event.
5413
5547
  #
5548
+ # _Requires permission: `resources:write`._
5549
+ #
5414
5550
  # POST /api/org/{orgId}/changes/{changeId}/revert
5415
5551
  #
5416
5552
  # Raises on 400: Bad request
5417
5553
  #
5418
5554
  # Raises on 404: Not found
5419
5555
  #
5420
- # Raises on 409: Already reverted, another revert holds the event, nothing
5421
- # in the plan is writable, or this attempt was superseded mid-write (its
5422
- # lease lapsed). The body carries `code: change_revert_conflict` for all but
5423
- # the writability case, and `appliedFields` when the provider write had
5424
- # already landed.
5556
+ # Raises on 409: Conflict
5425
5557
  #
5426
5558
  # Raises on 423: Blocked by an active change freeze. Retry with the
5427
5559
  # `x-change-freeze-override: true` header if you hold `freezes:override`;
5428
5560
  # both blocks and overrides are audit-logged.
5429
5561
  #
5430
- # Raises on 500: The provider accepted the write but it could not be
5431
- # recorded against the event. The resource *has* been put back;
5432
- # `appliedFields` names what changed. A later retry reconciles the timeline.
5562
+ # Raises on 500: Server error
5433
5563
  #
5434
- # Raises on 502: The provider couldn't be read. Nothing was written.
5564
+ # Raises on 502: Bad gateway: an upstream service failed
5435
5565
  #
5436
5566
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
5437
5567
  # constructed with.
@@ -5465,12 +5595,13 @@ module Infrawrench
5465
5595
  # Gated on `resources:write` rather than `resources:read`: the plan names
5466
5596
  # the write it is offering to make.
5467
5597
  #
5598
+ # _Requires permission: `resources:write`._
5599
+ #
5468
5600
  # GET /api/org/{orgId}/changes/{changeId}/revert
5469
5601
  #
5470
5602
  # Raises on 404: Not found
5471
5603
  #
5472
- # Raises on 502: The provider couldn't be read, so no plan can be made
5473
- # safely. Nothing was written.
5604
+ # Raises on 502: Bad gateway: an upstream service failed
5474
5605
  #
5475
5606
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
5476
5607
  # constructed with.
@@ -5525,6 +5656,8 @@ module Infrawrench
5525
5656
  #
5526
5657
  # Raises on 400: Bad request
5527
5658
  #
5659
+ # Raises on 403: Forbidden
5660
+ #
5528
5661
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
5529
5662
  # constructed with.
5530
5663
  # @param body [Hash, nil] Request body, shaped as `ChangeCostImpactsRequest`.
@@ -5677,6 +5810,50 @@ module Infrawrench
5677
5810
  request_options: request_options
5678
5811
  )
5679
5812
  end
5813
+
5814
+ # Approve or reject a pending tool call
5815
+ #
5816
+ # Approving runs the tool now, before answering; a tool that fails answers
5817
+ # 500 with its error and the action is recorded as `errored`. Not for
5818
+ # `ask_question` actions, which take answers instead.
5819
+ #
5820
+ # _Requires permission: `chat:write`._
5821
+ #
5822
+ # POST
5823
+ # /api/org/{orgId}/chat/conversations/{conversationId}/pending/{pendingId}
5824
+ #
5825
+ # Raises on 400: Bad request
5826
+ #
5827
+ # Raises on 403: Forbidden
5828
+ #
5829
+ # Raises on 404: Not found
5830
+ #
5831
+ # Raises on 409: Conflict
5832
+ #
5833
+ # Raises on 500: Server error
5834
+ #
5835
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
5836
+ # constructed with.
5837
+ # @param conversation_id [String] Chat conversation id
5838
+ # @param pending_id [String] Pending ask_question action id
5839
+ # @param body [Hash] Request body, shaped as `ChatPendingDecisionInput`.
5840
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
5841
+ # @return [Hash] Parsed JSON, shaped as `ChatPendingDecisionResult` — see
5842
+ # `sig/infrawrench/sdk.rbs`.
5843
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
5844
+ def create(conversation_id:, pending_id:, body:, org_id: nil, request_options: nil)
5845
+ @transport.request(
5846
+ http_method: "POST",
5847
+ path: "/api/org/{orgId}/chat/conversations/{conversationId}/pending/{pendingId}",
5848
+ path_params: {
5849
+ "orgId" => org_id,
5850
+ "conversationId" => conversation_id,
5851
+ "pendingId" => pending_id
5852
+ },
5853
+ body: body,
5854
+ request_options: request_options
5855
+ )
5856
+ end
5680
5857
  end
5681
5858
 
5682
5859
  # `client.chat.conversations.secret_requests`
@@ -5742,71 +5919,221 @@ module Infrawrench
5742
5919
  @pending = ChatConversationsPendingNamespace.new(@transport)
5743
5920
  @secret_requests = ChatConversationsSecretRequestsNamespace.new(@transport)
5744
5921
  end
5745
- end
5746
-
5747
- # `client.chat`
5748
- class ChatNamespace
5749
- # @return [ChatConversationsNamespace] `client.chat.conversations`
5750
- attr_reader :conversations
5751
-
5752
- # @api private
5753
- # @param transport [Transport]
5754
- def initialize(transport)
5755
- @transport = transport
5756
- @conversations = ChatConversationsNamespace.new(@transport)
5757
- end
5758
- end
5759
-
5760
- # `client.commitments`
5761
- class CommitmentsNamespace
5762
- # @api private
5763
- # @param transport [Transport]
5764
- def initialize(transport)
5765
- @transport = transport
5766
- end
5767
5922
 
5768
- # Reservations, savings plans and committed-use discounts
5769
- #
5770
- # The organization's purchased commitments (reserved instances, savings
5771
- # plans, committed-use discounts) with three derived readings.
5772
- #
5773
- # **Coverage** is a range, not a number: the broad ratio counts every
5774
- # uncovered usage dollar in the denominator (a lower bound; egress and
5775
- # per-request charges can never be committed against), the narrow ratio only
5776
- # uncovered usage in cells where a commitment demonstrably landed (an upper
5777
- # bound). Accounts whose plugin cannot distinguish charge types are excluded
5778
- # and listed; a scope where every account is excluded reports unavailable,
5779
- # not 0%.
5923
+ # Start a chat conversation
5780
5924
  #
5781
- # **Utilization** is measured only over days cost data was actually
5782
- # collected; a collection gap is reported as missing days, never counted as
5783
- # idle commitment. Unit-denominated commitments (GCP) report null with a
5784
- # reason, never 0%. Azure's own reported utilization rides on each holding
5785
- # separately and is never blended with the derived figure.
5925
+ # Creates an empty conversation owned by the caller. Send its first message
5926
+ # with `POST /conversations/{conversationId}/messages`.
5786
5927
  #
5787
- # **The planner** recommends committing at the p10 floor of daily uncovered
5788
- # spend, gated on presence, trend, floor and materiality. Savings are quoted
5789
- # against published "up to" discount rates and marked as such. Nothing is
5790
- # ever purchased automatically.
5928
+ # _Requires permission: `chat:write`._
5791
5929
  #
5792
- # _Requires permission: `costs:read`._
5930
+ # POST /api/org/{orgId}/chat/conversations
5793
5931
  #
5794
- # GET /api/org/{orgId}/commitments
5932
+ # Raises on 400: Bad request
5795
5933
  #
5796
5934
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
5797
5935
  # constructed with.
5936
+ # @param body [Hash] Request body, shaped as `ChatConversationCreateInput`.
5798
5937
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
5799
- # @return [Hash] Parsed JSON, shaped as `CommitmentsFeed` — see `sig/infrawrench/sdk.rbs`.
5938
+ # @return [Hash] Parsed JSON, shaped as `ChatConversationCreated` — see
5939
+ # `sig/infrawrench/sdk.rbs`.
5800
5940
  # @raise [Infrawrench::ApiError] On any non-2xx response.
5801
- def get(org_id: nil, request_options: nil)
5941
+ def create(body:, org_id: nil, request_options: nil)
5802
5942
  @transport.request(
5803
- http_method: "GET",
5804
- path: "/api/org/{orgId}/commitments",
5943
+ http_method: "POST",
5944
+ path: "/api/org/{orgId}/chat/conversations",
5805
5945
  path_params: { "orgId" => org_id },
5946
+ body: body,
5806
5947
  request_options: request_options
5807
5948
  )
5808
5949
  end
5809
- end
5950
+
5951
+ # Archive a conversation
5952
+ #
5953
+ # Hides the conversation from the list; its history is kept. Answers `ok`
5954
+ # whether or not the conversation was the caller's.
5955
+ #
5956
+ # _Requires permission: `chat:write`._
5957
+ #
5958
+ # DELETE /api/org/{orgId}/chat/conversations/{conversationId}
5959
+ #
5960
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
5961
+ # constructed with.
5962
+ # @param conversation_id [String] Chat conversation id
5963
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
5964
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
5965
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
5966
+ def delete(conversation_id:, org_id: nil, request_options: nil)
5967
+ @transport.request(
5968
+ http_method: "DELETE",
5969
+ path: "/api/org/{orgId}/chat/conversations/{conversationId}",
5970
+ path_params: { "orgId" => org_id, "conversationId" => conversation_id },
5971
+ request_options: request_options
5972
+ )
5973
+ end
5974
+
5975
+ # List the caller's chat conversations
5976
+ #
5977
+ # _Requires permission: `chat:read`._
5978
+ #
5979
+ # GET /api/org/{orgId}/chat/conversations
5980
+ #
5981
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
5982
+ # constructed with.
5983
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
5984
+ # @return [Hash] Parsed JSON, shaped as `ChatConversationList` — see
5985
+ # `sig/infrawrench/sdk.rbs`.
5986
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
5987
+ def get(org_id: nil, request_options: nil)
5988
+ @transport.request(
5989
+ http_method: "GET",
5990
+ path: "/api/org/{orgId}/chat/conversations",
5991
+ path_params: { "orgId" => org_id },
5992
+ request_options: request_options
5993
+ )
5994
+ end
5995
+
5996
+ # A conversation with its messages and pending items
5997
+ #
5998
+ # _Requires permission: `chat:read`._
5999
+ #
6000
+ # GET /api/org/{orgId}/chat/conversations/{conversationId}
6001
+ #
6002
+ # Raises on 404: Not found
6003
+ #
6004
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6005
+ # constructed with.
6006
+ # @param conversation_id [String] Chat conversation id
6007
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6008
+ # @return [Hash] Parsed JSON, shaped as `ChatConversationDetail` — see
6009
+ # `sig/infrawrench/sdk.rbs`.
6010
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6011
+ def get_org_org_id_chat_conversations_conversation_id(
6012
+ conversation_id:,
6013
+ org_id: nil,
6014
+ request_options: nil
6015
+ )
6016
+ @transport.request(
6017
+ http_method: "GET",
6018
+ path: "/api/org/{orgId}/chat/conversations/{conversationId}",
6019
+ path_params: { "orgId" => org_id, "conversationId" => conversation_id },
6020
+ request_options: request_options
6021
+ )
6022
+ end
6023
+
6024
+ # Switch a conversation's model
6025
+ #
6026
+ # Takes effect on the conversation's next turn.
6027
+ #
6028
+ # _Requires permission: `chat:write`._
6029
+ #
6030
+ # PATCH /api/org/{orgId}/chat/conversations/{conversationId}
6031
+ #
6032
+ # Raises on 400: Bad request
6033
+ #
6034
+ # Raises on 404: Not found
6035
+ #
6036
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6037
+ # constructed with.
6038
+ # @param conversation_id [String] Chat conversation id
6039
+ # @param body [Hash] Request body, shaped as `ChatConversationModelInput`.
6040
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6041
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
6042
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6043
+ def update(conversation_id:, body:, org_id: nil, request_options: nil)
6044
+ @transport.request(
6045
+ http_method: "PATCH",
6046
+ path: "/api/org/{orgId}/chat/conversations/{conversationId}",
6047
+ path_params: { "orgId" => org_id, "conversationId" => conversation_id },
6048
+ body: body,
6049
+ request_options: request_options
6050
+ )
6051
+ end
6052
+ end
6053
+
6054
+ # `client.chat`
6055
+ class ChatNamespace
6056
+ # @return [ChatConversationsNamespace] `client.chat.conversations`
6057
+ attr_reader :conversations
6058
+
6059
+ # @api private
6060
+ # @param transport [Transport]
6061
+ def initialize(transport)
6062
+ @transport = transport
6063
+ @conversations = ChatConversationsNamespace.new(@transport)
6064
+ end
6065
+
6066
+ # Month-to-date chat spend and cap
6067
+ #
6068
+ # _Requires permission: `chat:read`._
6069
+ #
6070
+ # GET /api/org/{orgId}/chat/spend
6071
+ #
6072
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6073
+ # constructed with.
6074
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6075
+ # @return [Hash] Parsed JSON, shaped as `ChatSpendStatus` — see `sig/infrawrench/sdk.rbs`.
6076
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6077
+ def spend(org_id: nil, request_options: nil)
6078
+ @transport.request(
6079
+ http_method: "GET",
6080
+ path: "/api/org/{orgId}/chat/spend",
6081
+ path_params: { "orgId" => org_id },
6082
+ request_options: request_options
6083
+ )
6084
+ end
6085
+ end
6086
+
6087
+ # `client.commitments`
6088
+ class CommitmentsNamespace
6089
+ # @api private
6090
+ # @param transport [Transport]
6091
+ def initialize(transport)
6092
+ @transport = transport
6093
+ end
6094
+
6095
+ # Reservations, savings plans and committed-use discounts
6096
+ #
6097
+ # The organization's purchased commitments (reserved instances, savings
6098
+ # plans, committed-use discounts) with three derived readings.
6099
+ #
6100
+ # **Coverage** is a range, not a number: the broad ratio counts every
6101
+ # uncovered usage dollar in the denominator (a lower bound; egress and
6102
+ # per-request charges can never be committed against), the narrow ratio only
6103
+ # uncovered usage in cells where a commitment demonstrably landed (an upper
6104
+ # bound). Accounts whose plugin cannot distinguish charge types are excluded
6105
+ # and listed; a scope where every account is excluded reports unavailable,
6106
+ # not 0%.
6107
+ #
6108
+ # **Utilization** is measured only over days cost data was actually
6109
+ # collected; a collection gap is reported as missing days, never counted as
6110
+ # idle commitment. Unit-denominated commitments (GCP) report null with a
6111
+ # reason, never 0%. Azure's own reported utilization rides on each holding
6112
+ # separately and is never blended with the derived figure.
6113
+ #
6114
+ # **The planner** recommends committing at the p10 floor of daily uncovered
6115
+ # spend, gated on presence, trend, floor and materiality. Savings are quoted
6116
+ # against published "up to" discount rates and marked as such. Nothing is
6117
+ # ever purchased automatically.
6118
+ #
6119
+ # _Requires permission: `costs:read`._
6120
+ #
6121
+ # GET /api/org/{orgId}/commitments
6122
+ #
6123
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6124
+ # constructed with.
6125
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6126
+ # @return [Hash] Parsed JSON, shaped as `CommitmentsFeed` — see `sig/infrawrench/sdk.rbs`.
6127
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6128
+ def get(org_id: nil, request_options: nil)
6129
+ @transport.request(
6130
+ http_method: "GET",
6131
+ path: "/api/org/{orgId}/commitments",
6132
+ path_params: { "orgId" => org_id },
6133
+ request_options: request_options
6134
+ )
6135
+ end
6136
+ end
5810
6137
 
5811
6138
  # `client.compliance.controls`
5812
6139
  class ComplianceControlsNamespace
@@ -5822,6 +6149,8 @@ module Infrawrench
5822
6149
  #
5823
6150
  # DELETE /api/org/{orgId}/compliance/controls/{frameworkId}/{controlId}
5824
6151
  #
6152
+ # Raises on 400: Bad request
6153
+ #
5825
6154
  # Raises on 404: Not found
5826
6155
  #
5827
6156
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5854,6 +6183,8 @@ module Infrawrench
5854
6183
  #
5855
6184
  # GET /api/org/{orgId}/compliance/controls
5856
6185
  #
6186
+ # Raises on 400: Bad request
6187
+ #
5857
6188
  # Raises on 404: Not found
5858
6189
  #
5859
6190
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5878,6 +6209,8 @@ module Infrawrench
5878
6209
  #
5879
6210
  # GET /api/org/{orgId}/compliance/controls/{frameworkId}/{controlId}
5880
6211
  #
6212
+ # Raises on 400: Bad request
6213
+ #
5881
6214
  # Raises on 404: Not found
5882
6215
  #
5883
6216
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5989,6 +6322,8 @@ module Infrawrench
5989
6322
  #
5990
6323
  # DELETE /api/org/{orgId}/compliance/schedules/{id}
5991
6324
  #
6325
+ # Raises on 400: Bad request
6326
+ #
5992
6327
  # Raises on 404: Not found
5993
6328
  #
5994
6329
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -6013,6 +6348,8 @@ module Infrawrench
6013
6348
  #
6014
6349
  # GET /api/org/{orgId}/compliance/schedules/{id}
6015
6350
  #
6351
+ # Raises on 400: Bad request
6352
+ #
6016
6353
  # Raises on 404: Not found
6017
6354
  #
6018
6355
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -6192,8 +6529,8 @@ module Infrawrench
6192
6529
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6193
6530
  # constructed with.
6194
6531
  # @param framework [String] Framework registry id: `soc2` or `iso27001`.
6195
- # @param from [String, nil] First day of the period (UTC). Defaults to 90 days before `to`.
6196
- # @param to [String, nil] Last day of the period, inclusive (UTC). Defaults to today.
6532
+ # @param from [Object, nil]
6533
+ # @param to [Object, nil]
6197
6534
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6198
6535
  # @return [Hash] Parsed JSON, shaped as `ComplianceStatus` — see `sig/infrawrench/sdk.rbs`.
6199
6536
  # @raise [Infrawrench::ApiError] On any non-2xx response.
@@ -6226,8 +6563,8 @@ module Infrawrench
6226
6563
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6227
6564
  # constructed with.
6228
6565
  # @param framework [String] Framework registry id: `soc2` or `iso27001`.
6229
- # @param from [String, nil] First day of the period (UTC). Defaults to 90 days before `to`.
6230
- # @param to [String, nil] Last day of the period, inclusive (UTC). Defaults to today.
6566
+ # @param from [Object, nil]
6567
+ # @param to [Object, nil]
6231
6568
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6232
6569
  # @return [String] Raw response bytes.
6233
6570
  # @raise [Infrawrench::ApiError] On any non-2xx response.
@@ -6379,6 +6716,8 @@ module Infrawrench
6379
6716
  #
6380
6717
  # Raises on 404: Not found
6381
6718
  #
6719
+ # Raises on 409: The host key is new or has changed; trust it and retry
6720
+ #
6382
6721
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6383
6722
  # constructed with.
6384
6723
  # @param body [Hash] Request body, shaped as `ConnectEnvDeployRequest`.
@@ -6960,6 +7299,10 @@ module Infrawrench
6960
7299
  #
6961
7300
  # POST /api/org/{orgId}/cost-canvases/{id}/conversation
6962
7301
  #
7302
+ # Raises on 400: Bad request
7303
+ #
7304
+ # Raises on 403: Forbidden
7305
+ #
6963
7306
  # Raises on 404: Not found
6964
7307
  #
6965
7308
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -7041,6 +7384,8 @@ module Infrawrench
7041
7384
  #
7042
7385
  # Raises on 400: Bad request
7043
7386
  #
7387
+ # Raises on 403: Forbidden
7388
+ #
7044
7389
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
7045
7390
  # constructed with.
7046
7391
  # @param body [Hash] Request body, shaped as `CostCanvasDraftInput`.
@@ -8834,6 +9179,8 @@ module Infrawrench
8834
9179
  #
8835
9180
  # DELETE /api/org/{orgId}/cost-visibility/{principalKind}/{principalId}
8836
9181
  #
9182
+ # Raises on 400: Bad request
9183
+ #
8837
9184
  # Raises on 403: Forbidden
8838
9185
  #
8839
9186
  # Raises on 404: Not found
@@ -9027,6 +9374,8 @@ module Infrawrench
9027
9374
  # again on a later day, that is a new anomaly and it is detected and alerted
9028
9375
  # on as normal.
9029
9376
  #
9377
+ # _Requires permission: `costs:write`._
9378
+ #
9030
9379
  # POST /api/org/{orgId}/costs/anomalies/{anomalyId}/acknowledge
9031
9380
  #
9032
9381
  # Raises on 400: Bad request
@@ -9174,13 +9523,15 @@ module Infrawrench
9174
9523
  #
9175
9524
  # Raises on 400: Bad request
9176
9525
  #
9526
+ # Raises on 404: Not found
9527
+ #
9177
9528
  # Raises on 409: Conflict
9178
9529
  #
9179
9530
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
9180
9531
  # constructed with.
9181
9532
  # @param body [Hash] Request body, shaped as `CostAnomalySuppressionInput`.
9182
9533
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
9183
- # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression & Hash` — see
9534
+ # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression` — see
9184
9535
  # `sig/infrawrench/sdk.rbs`.
9185
9536
  # @raise [Infrawrench::ApiError] On any non-2xx response.
9186
9537
  def create(body:, org_id: nil, request_options: nil)
@@ -9257,7 +9608,7 @@ module Infrawrench
9257
9608
  # constructed with.
9258
9609
  # @param suppression_id [String]
9259
9610
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
9260
- # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression & Hash` — see
9611
+ # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression` — see
9261
9612
  # `sig/infrawrench/sdk.rbs`.
9262
9613
  # @raise [Infrawrench::ApiError] On any non-2xx response.
9263
9614
  def get_org_org_id_costs_anomaly_suppressions_suppression_id(
@@ -9285,12 +9636,14 @@ module Infrawrench
9285
9636
  #
9286
9637
  # Raises on 404: Not found
9287
9638
  #
9639
+ # Raises on 409: Conflict
9640
+ #
9288
9641
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
9289
9642
  # constructed with.
9290
9643
  # @param suppression_id [String]
9291
9644
  # @param body [Hash] Request body, shaped as `CostAnomalySuppressionInput`.
9292
9645
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
9293
- # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression & Hash` — see
9646
+ # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression` — see
9294
9647
  # `sig/infrawrench/sdk.rbs`.
9295
9648
  # @raise [Infrawrench::ApiError] On any non-2xx response.
9296
9649
  def update(suppression_id:, body:, org_id: nil, request_options: nil)
@@ -10151,6 +10504,8 @@ module Infrawrench
10151
10504
  # display currency, else EUR), plus the feed's state. Readable whether or
10152
10505
  # not the organization has automatic rates on.
10153
10506
  #
10507
+ # _Requires permission: `costs:read`._
10508
+ #
10154
10509
  # GET /api/org/{orgId}/currency/feed
10155
10510
  #
10156
10511
  # Raises on 400: Bad request
@@ -10205,6 +10560,8 @@ module Infrawrench
10205
10560
  # `rateBasis`) and explains the outcome. `to` defaults to the display
10206
10561
  # currency; `date` defaults to today.
10207
10562
  #
10563
+ # _Requires permission: `costs:read`._
10564
+ #
10208
10565
  # GET /api/org/{orgId}/currency/lookup
10209
10566
  #
10210
10567
  # Raises on 400: Bad request
@@ -10277,7 +10634,7 @@ module Infrawrench
10277
10634
  #
10278
10635
  # POST /api/org/{orgId}/custom-cost-sources/{id}/uploads/{uploadId}/complete
10279
10636
  #
10280
- # Raises on 400: Already complete
10637
+ # Raises on 400: Bad request
10281
10638
  #
10282
10639
  # Raises on 404: Not found
10283
10640
  #
@@ -10868,6 +11225,8 @@ module Infrawrench
10868
11225
  #
10869
11226
  # GET /api/org/{orgId}/dashboards/default/full
10870
11227
  #
11228
+ # Raises on 404: Not found
11229
+ #
10871
11230
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
10872
11231
  # constructed with.
10873
11232
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -11148,6 +11507,8 @@ module Infrawrench
11148
11507
  # auto-routes between raw, 1-minute, and 1-hour rollups based on span: ≤2h
11149
11508
  # raw, ≤7d 1m, >7d 1h.
11150
11509
  #
11510
+ # _Requires permission: `dashboards:read`._
11511
+ #
11151
11512
  # GET /api/org/{orgId}/dashboards/pin/{pinId}/range
11152
11513
  #
11153
11514
  # Raises on 400: Bad request
@@ -11157,8 +11518,8 @@ module Infrawrench
11157
11518
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11158
11519
  # constructed with.
11159
11520
  # @param pin_id [String]
11160
- # @param from_ms [Integer, nil, nil]
11161
- # @param to_ms [Integer, nil, nil]
11521
+ # @param from_ms [Integer, nil]
11522
+ # @param to_ms [Integer, nil]
11162
11523
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
11163
11524
  # @return [Hash] Parsed JSON, shaped as `PinRangeResponse` — see `sig/infrawrench/sdk.rbs`.
11164
11525
  # @raise [Infrawrench::ApiError] On any non-2xx response.
@@ -11272,6 +11633,8 @@ module Infrawrench
11272
11633
 
11273
11634
  # Add a widget (cost graph, report, budget, KPI, text, ...) to a dashboard
11274
11635
  #
11636
+ # _Requires permission: `dashboards:write`._
11637
+ #
11275
11638
  # POST /api/org/{orgId}/dashboards/widgets
11276
11639
  #
11277
11640
  # Raises on 400: Bad request
@@ -11297,6 +11660,8 @@ module Infrawrench
11297
11660
 
11298
11661
  # Remove a widget from a dashboard
11299
11662
  #
11663
+ # _Requires permission: `dashboards:write`._
11664
+ #
11300
11665
  # DELETE /api/org/{orgId}/dashboards/widgets/{widgetId}
11301
11666
  #
11302
11667
  # Raises on 404: Not found
@@ -11323,6 +11688,8 @@ module Infrawrench
11323
11688
  # or report card is a second view onto the same budget or report.
11324
11689
  # Audit-logged.
11325
11690
  #
11691
+ # _Requires permission: `dashboards:write`._
11692
+ #
11326
11693
  # POST /api/org/{orgId}/dashboards/widgets/{widgetId}/duplicate
11327
11694
  #
11328
11695
  # Raises on 400: Bad request
@@ -11347,6 +11714,8 @@ module Infrawrench
11347
11714
 
11348
11715
  # Update a widget's title, config, or layout
11349
11716
  #
11717
+ # _Requires permission: `dashboards:write`._
11718
+ #
11350
11719
  # PATCH /api/org/{orgId}/dashboards/widgets/{widgetId}
11351
11720
  #
11352
11721
  # Raises on 400: Bad request
@@ -11474,6 +11843,8 @@ module Infrawrench
11474
11843
  # preview it. Needs `costs:read`, plus `budgets:read` for a budget source;
11475
11844
  # figures are measured inside the caller's cost visibility scope.
11476
11845
  #
11846
+ # _Requires permission: `dashboards:read`._
11847
+ #
11477
11848
  # POST /api/org/{orgId}/dashboards/kpi
11478
11849
  #
11479
11850
  # Raises on 400: Bad request
@@ -11582,6 +11953,8 @@ module Infrawrench
11582
11953
  #
11583
11954
  # POST /api/org/{orgId}/dashboards/{id}/rename
11584
11955
  #
11956
+ # Raises on 404: Not found
11957
+ #
11585
11958
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11586
11959
  # constructed with.
11587
11960
  # @param id [String]
@@ -11609,6 +11982,8 @@ module Infrawrench
11609
11982
  #
11610
11983
  # POST /api/org/{orgId}/dashboards/{id}/reorder
11611
11984
  #
11985
+ # Raises on 400: Bad request
11986
+ #
11612
11987
  # Raises on 404: Not found
11613
11988
  #
11614
11989
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -11677,6 +12052,8 @@ module Infrawrench
11677
12052
 
11678
12053
  # Pin a workflow's metrics to a dashboard
11679
12054
  #
12055
+ # _Requires permission: `dashboards:write`._
12056
+ #
11680
12057
  # POST /api/org/{orgId}/dashboards/workflow-pin
11681
12058
  #
11682
12059
  # Raises on 404: Not found
@@ -11699,6 +12076,8 @@ module Infrawrench
11699
12076
 
11700
12077
  # Unpin a workflow from a dashboard
11701
12078
  #
12079
+ # _Requires permission: `dashboards:write`._
12080
+ #
11702
12081
  # POST /api/org/{orgId}/dashboards/workflow-unpin
11703
12082
  #
11704
12083
  # Raises on 404: Not found
@@ -11737,7 +12116,9 @@ module Infrawrench
11737
12116
  #
11738
12117
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11739
12118
  # constructed with.
11740
- # @param resource_id [Hash, nil]
12119
+ # @param resource_id [String, nil] Narrow the graph to this resource's direct neighbourhood;
12120
+ # only edges with it at one end, and only the nodes those edges touch. Omit for the whole
12121
+ # org.
11741
12122
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
11742
12123
  # @return [Hash] Parsed JSON, shaped as `DependencyGraphResponse` — see
11743
12124
  # `sig/infrawrench/sdk.rbs`.
@@ -11773,18 +12154,15 @@ module Infrawrench
11773
12154
  #
11774
12155
  # Raises on 400: Bad request
11775
12156
  #
12157
+ # Raises on 403: Forbidden
12158
+ #
11776
12159
  # Raises on 404: Not found
11777
12160
  #
11778
12161
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11779
12162
  # constructed with.
11780
12163
  # @param id [String]
11781
12164
  # @param window_days [Integer, nil]
11782
- # @param cost_basis [String, nil] Which charge-type basis both windows are read on. `cash`
11783
- # (the default) is what the provider charged on the day it charged it; `amortized` spreads a
11784
- # commitment's up-front fee across the term it buys; `blended` also spreads each
11785
- # commitment's discount evenly over the usage it could cover. It is echoed on every response
11786
- # because a delta whose basis is unstated is unreadable: an amortized 'after' against a cash
11787
- # 'before' looks exactly like a saving.
12165
+ # @param cost_basis [String, nil]
11788
12166
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
11789
12167
  # @return [Hash] Parsed JSON, shaped as `DeploymentCostImpact` — see
11790
12168
  # `sig/infrawrench/sdk.rbs`.
@@ -12034,6 +12412,8 @@ module Infrawrench
12034
12412
  #
12035
12413
  # PATCH /api/org/{orgId}/deployments/triggers/{id}
12036
12414
  #
12415
+ # Raises on 400: Bad request
12416
+ #
12037
12417
  # Raises on 401: Unauthenticated
12038
12418
  #
12039
12419
  # Raises on 403: Forbidden
@@ -12181,6 +12561,8 @@ module Infrawrench
12181
12561
  # Adding an address the organization already has is a no-op that returns the
12182
12562
  # existing entry, so a double submit cannot double-deliver.
12183
12563
  #
12564
+ # _Requires permission: `org:settings:write`._
12565
+ #
12184
12566
  # POST /api/org/{orgId}/digest/recipients
12185
12567
  #
12186
12568
  # Raises on 400: Bad request
@@ -12204,6 +12586,8 @@ module Infrawrench
12204
12586
 
12205
12587
  # Remove a digest email recipient
12206
12588
  #
12589
+ # _Requires permission: `org:settings:write`._
12590
+ #
12207
12591
  # DELETE /api/org/{orgId}/digest/recipients/{recipientId}
12208
12592
  #
12209
12593
  # Raises on 404: Not found
@@ -12230,6 +12614,8 @@ module Infrawrench
12230
12614
  # Addresses need not belong to Infrawrench users; a finance alias is a valid
12231
12615
  # recipient.
12232
12616
  #
12617
+ # _Requires permission: `org:settings:write`._
12618
+ #
12233
12619
  # GET /api/org/{orgId}/digest/recipients
12234
12620
  #
12235
12621
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -12269,6 +12655,8 @@ module Infrawrench
12269
12655
  # The response also carries the outcome of the most recent delivery attempt
12270
12656
  # so a silently failing digest is visible.
12271
12657
  #
12658
+ # _Requires permission: `org:settings:write`._
12659
+ #
12272
12660
  # GET /api/org/{orgId}/digest
12273
12661
  #
12274
12662
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -12293,6 +12681,8 @@ module Infrawrench
12293
12681
  # is never retried automatically. Fails when nothing is routed to receive
12294
12682
  # the digest, or when every destination rejected it.
12295
12683
  #
12684
+ # _Requires permission: `org:settings:write`._
12685
+ #
12296
12686
  # POST /api/org/{orgId}/digest/send
12297
12687
  #
12298
12688
  # Raises on 400: Bad request
@@ -12320,6 +12710,8 @@ module Infrawrench
12320
12710
  # Monday-to-Sunday week. Changing the schedule clears any parked failure
12321
12711
  # state but never replays a week that already went out.
12322
12712
  #
12713
+ # _Requires permission: `org:settings:write`._
12714
+ #
12323
12715
  # PUT /api/org/{orgId}/digest
12324
12716
  #
12325
12717
  # Raises on 400: Bad request
@@ -12884,9 +13276,11 @@ module Infrawrench
12884
13276
  #
12885
13277
  # PUT /api/org/{orgId}/environments/settings
12886
13278
  #
13279
+ # Raises on 400: Bad request
13280
+ #
12887
13281
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
12888
13282
  # constructed with.
12889
- # @param body [Hash, nil] Request body, shaped as `EnvironmentSettings`.
13283
+ # @param body [Hash, nil] Request body, shaped as `Hash`.
12890
13284
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
12891
13285
  # @return [Hash] Parsed JSON, shaped as `EnvironmentSettings` — see
12892
13286
  # `sig/infrawrench/sdk.rbs`.
@@ -13070,6 +13464,8 @@ module Infrawrench
13070
13464
  #
13071
13465
  # Raises on 400: Bad request
13072
13466
  #
13467
+ # Raises on 403: Forbidden
13468
+ #
13073
13469
  # Raises on 404: Not found
13074
13470
  #
13075
13471
  # Raises on 409: The organization is at its live-environment limit
@@ -13200,6 +13596,8 @@ module Infrawrench
13200
13596
  #
13201
13597
  # GET /api/org/{orgId}/event-subscriptions/deliveries
13202
13598
  #
13599
+ # Raises on 400: Bad request
13600
+ #
13203
13601
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13204
13602
  # constructed with.
13205
13603
  # @param subscription_id [String, nil]
@@ -13243,8 +13641,14 @@ module Infrawrench
13243
13641
  #
13244
13642
  # POST /api/org/{orgId}/event-subscriptions/deliveries/{id}/redeliver
13245
13643
  #
13644
+ # Raises on 400: Bad request
13645
+ #
13646
+ # Raises on 403: Forbidden
13647
+ #
13246
13648
  # Raises on 404: Not found
13247
13649
  #
13650
+ # Raises on 409: Conflict
13651
+ #
13248
13652
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13249
13653
  # constructed with.
13250
13654
  # @param id [String]
@@ -13362,6 +13766,8 @@ module Infrawrench
13362
13766
  #
13363
13767
  # Raises on 403: Forbidden
13364
13768
  #
13769
+ # Raises on 404: Not found
13770
+ #
13365
13771
  # Raises on 409: Conflict
13366
13772
  #
13367
13773
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -13441,8 +13847,12 @@ module Infrawrench
13441
13847
  #
13442
13848
  # Raises on 400: Bad request
13443
13849
  #
13850
+ # Raises on 403: Forbidden
13851
+ #
13444
13852
  # Raises on 404: Not found
13445
13853
  #
13854
+ # Raises on 409: Conflict
13855
+ #
13446
13856
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13447
13857
  # constructed with.
13448
13858
  # @param id [String]
@@ -13469,8 +13879,14 @@ module Infrawrench
13469
13879
  #
13470
13880
  # POST /api/org/{orgId}/event-subscriptions/{id}/test
13471
13881
  #
13882
+ # Raises on 400: Bad request
13883
+ #
13884
+ # Raises on 403: Forbidden
13885
+ #
13472
13886
  # Raises on 404: Not found
13473
13887
  #
13888
+ # Raises on 409: Conflict
13889
+ #
13474
13890
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13475
13891
  # constructed with.
13476
13892
  # @param id [String]
@@ -13501,6 +13917,8 @@ module Infrawrench
13501
13917
  #
13502
13918
  # Raises on 404: Not found
13503
13919
  #
13920
+ # Raises on 409: Conflict
13921
+ #
13504
13922
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13505
13923
  # constructed with.
13506
13924
  # @param id [String]
@@ -13729,19 +14147,130 @@ module Infrawrench
13729
14147
  end
13730
14148
  end
13731
14149
 
13732
- # `client.github_issues.links`
13733
- class GithubIssuesLinksNamespace
14150
+ # `client.github.installations`
14151
+ class GithubInstallationsNamespace
13734
14152
  # @api private
13735
14153
  # @param transport [Transport]
13736
14154
  def initialize(transport)
13737
14155
  @transport = transport
13738
14156
  end
13739
14157
 
13740
- # Look up filed GitHub issues for a set of findings
14158
+ # Disconnect a GitHub App installation
13741
14159
  #
13742
- # _Requires permission: `github-issues:read`._
14160
+ # Drops the connection here; the app stays installed on GitHub until
14161
+ # uninstalled there.
13743
14162
  #
13744
- # GET /api/org/{orgId}/github-issues/links
14163
+ # _Requires permission: `dashboards:write`._
14164
+ #
14165
+ # DELETE /api/org/{orgId}/github/installations/{installationId}
14166
+ #
14167
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14168
+ # constructed with.
14169
+ # @param installation_id [String]
14170
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14171
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
14172
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14173
+ def delete(installation_id:, org_id: nil, request_options: nil)
14174
+ @transport.request(
14175
+ http_method: "DELETE",
14176
+ path: "/api/org/{orgId}/github/installations/{installationId}",
14177
+ path_params: { "orgId" => org_id, "installationId" => installation_id },
14178
+ request_options: request_options
14179
+ )
14180
+ end
14181
+ end
14182
+
14183
+ # `client.github`
14184
+ class GithubNamespace
14185
+ # @return [GithubInstallationsNamespace] `client.github.installations`
14186
+ attr_reader :installations
14187
+
14188
+ # @api private
14189
+ # @param transport [Transport]
14190
+ def initialize(transport)
14191
+ @transport = transport
14192
+ @installations = GithubInstallationsNamespace.new(@transport)
14193
+ end
14194
+
14195
+ # GitHub App install URL
14196
+ #
14197
+ # _Requires permission: `dashboards:write`._
14198
+ #
14199
+ # GET /api/org/{orgId}/github/install-url
14200
+ #
14201
+ # Raises on 400: Bad request
14202
+ #
14203
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14204
+ # constructed with.
14205
+ # @param return_param [String, nil] The page (under the organization) the install flow
14206
+ # returns to. Anything else: `agents`.
14207
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14208
+ # @return [Hash] Parsed JSON, shaped as `GithubInstallUrl` — see `sig/infrawrench/sdk.rbs`.
14209
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14210
+ def install_url(org_id: nil, return_param: nil, request_options: nil)
14211
+ @transport.request(
14212
+ http_method: "GET",
14213
+ path: "/api/org/{orgId}/github/install-url",
14214
+ path_params: { "orgId" => org_id },
14215
+ query: { "return" => return_param },
14216
+ request_options: request_options
14217
+ )
14218
+ end
14219
+
14220
+ # Repositories the organization's installations can access
14221
+ #
14222
+ # _Requires permission: `dashboards:read`._
14223
+ #
14224
+ # GET /api/org/{orgId}/github/repos
14225
+ #
14226
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14227
+ # constructed with.
14228
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14229
+ # @return [Hash] Parsed JSON, shaped as `GithubAppRepos` — see `sig/infrawrench/sdk.rbs`.
14230
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14231
+ def repos(org_id: nil, request_options: nil)
14232
+ @transport.request(
14233
+ http_method: "GET",
14234
+ path: "/api/org/{orgId}/github/repos",
14235
+ path_params: { "orgId" => org_id },
14236
+ request_options: request_options
14237
+ )
14238
+ end
14239
+
14240
+ # GitHub App connection status
14241
+ #
14242
+ # _Requires permission: `dashboards:read`._
14243
+ #
14244
+ # GET /api/org/{orgId}/github/status
14245
+ #
14246
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14247
+ # constructed with.
14248
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14249
+ # @return [Hash] Parsed JSON, shaped as `GithubAppStatus` — see `sig/infrawrench/sdk.rbs`.
14250
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14251
+ def status(org_id: nil, request_options: nil)
14252
+ @transport.request(
14253
+ http_method: "GET",
14254
+ path: "/api/org/{orgId}/github/status",
14255
+ path_params: { "orgId" => org_id },
14256
+ request_options: request_options
14257
+ )
14258
+ end
14259
+ end
14260
+
14261
+ # `client.github_issues.links`
14262
+ class GithubIssuesLinksNamespace
14263
+ # @api private
14264
+ # @param transport [Transport]
14265
+ def initialize(transport)
14266
+ @transport = transport
14267
+ end
14268
+
14269
+ # Look up filed GitHub issues for a set of findings
14270
+ #
14271
+ # _Requires permission: `github-issues:read`._
14272
+ #
14273
+ # GET /api/org/{orgId}/github-issues/links
13745
14274
  #
13746
14275
  # Raises on 400: Bad request
13747
14276
  #
@@ -13776,10 +14305,10 @@ module Infrawrench
13776
14305
  #
13777
14306
  # Raises on 400: Bad request
13778
14307
  #
13779
- # Raises on 409: The GitHub App installation needs a permission an owner has
13780
- # not approved yet
14308
+ # Raises on 409: The installation has not accepted the permission this
14309
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13781
14310
  #
13782
- # Raises on 502: GitHub refused the request or was unreachable
14311
+ # Raises on 502: Bad gateway: an upstream service failed
13783
14312
  #
13784
14313
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13785
14314
  # constructed with.
@@ -13816,10 +14345,10 @@ module Infrawrench
13816
14345
  #
13817
14346
  # Raises on 400: Bad request
13818
14347
  #
13819
- # Raises on 409: The GitHub App installation needs a permission an owner has
13820
- # not approved yet
14348
+ # Raises on 409: The installation has not accepted the permission this
14349
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13821
14350
  #
13822
- # Raises on 502: GitHub refused the request or was unreachable
14351
+ # Raises on 502: Bad gateway: an upstream service failed
13823
14352
  #
13824
14353
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13825
14354
  # constructed with.
@@ -13849,10 +14378,10 @@ module Infrawrench
13849
14378
  #
13850
14379
  # Raises on 400: Bad request
13851
14380
  #
13852
- # Raises on 409: The GitHub App installation needs a permission an owner has
13853
- # not approved yet
14381
+ # Raises on 409: The installation has not accepted the permission this
14382
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13854
14383
  #
13855
- # Raises on 502: GitHub refused the request or was unreachable
14384
+ # Raises on 502: Bad gateway: an upstream service failed
13856
14385
  #
13857
14386
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13858
14387
  # constructed with.
@@ -13897,10 +14426,10 @@ module Infrawrench
13897
14426
  #
13898
14427
  # Raises on 400: Bad request
13899
14428
  #
13900
- # Raises on 409: The GitHub App installation needs a permission an owner has
13901
- # not approved yet
14429
+ # Raises on 409: The installation has not accepted the permission this
14430
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13902
14431
  #
13903
- # Raises on 502: GitHub refused the request or was unreachable
14432
+ # Raises on 502: Bad gateway: an upstream service failed
13904
14433
  #
13905
14434
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13906
14435
  # constructed with.
@@ -13930,10 +14459,10 @@ module Infrawrench
13930
14459
  #
13931
14460
  # Raises on 400: Bad request
13932
14461
  #
13933
- # Raises on 409: The GitHub App installation needs a permission an owner has
13934
- # not approved yet
14462
+ # Raises on 409: The installation has not accepted the permission this
14463
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13935
14464
  #
13936
- # Raises on 502: GitHub refused the request or was unreachable
14465
+ # Raises on 502: Bad gateway: an upstream service failed
13937
14466
  #
13938
14467
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13939
14468
  # constructed with.
@@ -13986,10 +14515,10 @@ module Infrawrench
13986
14515
  #
13987
14516
  # Raises on 400: Bad request
13988
14517
  #
13989
- # Raises on 409: The GitHub App installation needs a permission an owner has
13990
- # not approved yet
14518
+ # Raises on 409: The installation has not accepted the permission this
14519
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13991
14520
  #
13992
- # Raises on 502: GitHub refused the request or was unreachable
14521
+ # Raises on 502: Bad gateway: an upstream service failed
13993
14522
  #
13994
14523
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13995
14524
  # constructed with.
@@ -14018,10 +14547,10 @@ module Infrawrench
14018
14547
  #
14019
14548
  # Raises on 400: Bad request
14020
14549
  #
14021
- # Raises on 409: The GitHub App installation needs a permission an owner has
14022
- # not approved yet
14550
+ # Raises on 409: The installation has not accepted the permission this
14551
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
14023
14552
  #
14024
- # Raises on 502: GitHub refused the request or was unreachable
14553
+ # Raises on 502: Bad gateway: an upstream service failed
14025
14554
  #
14026
14555
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14027
14556
  # constructed with.
@@ -14075,6 +14604,11 @@ module Infrawrench
14075
14604
  #
14076
14605
  # Raises on 400: Bad request
14077
14606
  #
14607
+ # Raises on 409: The installation has not accepted the permission this
14608
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
14609
+ #
14610
+ # Raises on 502: Bad gateway: an upstream service failed
14611
+ #
14078
14612
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14079
14613
  # constructed with.
14080
14614
  # @param body [Hash] Request body, shaped as `GithubIssueSettingsInput`.
@@ -14109,6 +14643,8 @@ module Infrawrench
14109
14643
  # written. The format version is checked, not assumed: an unsupported
14110
14644
  # version is a 400 rather than a partial read.
14111
14645
  #
14646
+ # _Requires permission: `iac:write`._
14647
+ #
14112
14648
  # POST /api/org/{orgId}/iac/states
14113
14649
  #
14114
14650
  # Raises on 400: Bad request
@@ -14133,6 +14669,8 @@ module Infrawrench
14133
14669
 
14134
14670
  # Delete an uploaded state document
14135
14671
  #
14672
+ # _Requires permission: `iac:write`._
14673
+ #
14136
14674
  # DELETE /api/org/{orgId}/iac/states/{stateId}
14137
14675
  #
14138
14676
  # Raises on 404: Not found
@@ -14159,6 +14697,8 @@ module Infrawrench
14159
14697
  # documents themselves are never stored; only the parsed, redacted
14160
14698
  # projection.
14161
14699
  #
14700
+ # _Requires permission: `iac:read`._
14701
+ #
14162
14702
  # GET /api/org/{orgId}/iac/states
14163
14703
  #
14164
14704
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -14196,6 +14736,8 @@ module Infrawrench
14196
14736
  # "Export to Terraform…". Resources no plugin can express are returned in
14197
14737
  # `unsupported` with a reason, never dropped.
14198
14738
  #
14739
+ # _Requires permission: `iac:read`._
14740
+ #
14199
14741
  # POST /api/org/{orgId}/iac/import-plan
14200
14742
  #
14201
14743
  # Raises on 400: Bad request
@@ -14226,6 +14768,8 @@ module Infrawrench
14226
14768
  # resources carry the ownership and first-seen join that answers "who made
14227
14769
  # this by hand, and when".
14228
14770
  #
14771
+ # _Requires permission: `iac:read`._
14772
+ #
14229
14773
  # GET /api/org/{orgId}/iac/reconciliation
14230
14774
  #
14231
14775
  # Raises on 400: Bad request
@@ -14257,6 +14801,8 @@ module Infrawrench
14257
14801
  # parameter rather than a path segment because composite resource ids
14258
14802
  # contain slashes.
14259
14803
  #
14804
+ # _Requires permission: `iac:read`._
14805
+ #
14260
14806
  # GET /api/org/{orgId}/iac/resource
14261
14807
  #
14262
14808
  # Raises on 400: Bad request
@@ -14423,6 +14969,12 @@ module Infrawrench
14423
14969
  #
14424
14970
  # GET /api/org/{orgId}/incidents
14425
14971
  #
14972
+ # Raises on 400: Bad request
14973
+ #
14974
+ # Raises on 404: Not found
14975
+ #
14976
+ # Raises on 409: Conflict
14977
+ #
14426
14978
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14427
14979
  # constructed with.
14428
14980
  # @param status [String, nil] `open`, `mitigated`, `resolved`, or `all` (the default).
@@ -14486,14 +15038,16 @@ module Infrawrench
14486
15038
  #
14487
15039
  # Raises on 404: Not found
14488
15040
  #
15041
+ # Raises on 409: Conflict
15042
+ #
14489
15043
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14490
15044
  # constructed with.
14491
15045
  # @param incident_id [String]
14492
- # @param body [Hash, nil] Request body, shaped as `IncidentNoteCreate`.
15046
+ # @param body [Hash] Request body, shaped as `IncidentNoteCreate`.
14493
15047
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14494
15048
  # @return [Hash] Parsed JSON, shaped as `IncidentNote` — see `sig/infrawrench/sdk.rbs`.
14495
15049
  # @raise [Infrawrench::ApiError] On any non-2xx response.
14496
- def create(incident_id:, org_id: nil, body: nil, request_options: nil)
15050
+ def create(incident_id:, body:, org_id: nil, request_options: nil)
14497
15051
  @transport.request(
14498
15052
  http_method: "POST",
14499
15053
  path: "/api/org/{orgId}/incidents/{incidentId}/notes",
@@ -14559,13 +15113,17 @@ module Infrawrench
14559
15113
  #
14560
15114
  # Raises on 403: Forbidden
14561
15115
  #
15116
+ # Raises on 404: Not found
15117
+ #
15118
+ # Raises on 409: Conflict
15119
+ #
14562
15120
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14563
15121
  # constructed with.
14564
- # @param body [Hash, nil] Request body, shaped as `IncidentDeclare`.
15122
+ # @param body [Hash] Request body, shaped as `IncidentDeclare`.
14565
15123
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14566
15124
  # @return [Hash] Parsed JSON, shaped as `Incident` — see `sig/infrawrench/sdk.rbs`.
14567
15125
  # @raise [Infrawrench::ApiError] On any non-2xx response.
14568
- def create(org_id: nil, body: nil, request_options: nil)
15126
+ def create(body:, org_id: nil, request_options: nil)
14569
15127
  @transport.request(
14570
15128
  http_method: "POST",
14571
15129
  path: "/api/org/{orgId}/incidents",
@@ -14615,8 +15173,12 @@ module Infrawrench
14615
15173
  #
14616
15174
  # GET /api/org/{orgId}/incidents/{incidentId}/postmortem
14617
15175
  #
15176
+ # Raises on 400: Bad request
15177
+ #
14618
15178
  # Raises on 404: Not found
14619
15179
  #
15180
+ # Raises on 409: Conflict
15181
+ #
14620
15182
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14621
15183
  # constructed with.
14622
15184
  # @param incident_id [String]
@@ -14648,8 +15210,12 @@ module Infrawrench
14648
15210
  #
14649
15211
  # POST /api/org/{orgId}/incidents/{incidentId}/retry-artifacts
14650
15212
  #
15213
+ # Raises on 400: Bad request
15214
+ #
14651
15215
  # Raises on 404: Not found
14652
15216
  #
15217
+ # Raises on 409: Conflict
15218
+ #
14653
15219
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14654
15220
  # constructed with.
14655
15221
  # @param incident_id [String]
@@ -14683,8 +15249,12 @@ module Infrawrench
14683
15249
  #
14684
15250
  # GET /api/org/{orgId}/incidents/{incidentId}/timeline
14685
15251
  #
15252
+ # Raises on 400: Bad request
15253
+ #
14686
15254
  # Raises on 404: Not found
14687
15255
  #
15256
+ # Raises on 409: Conflict
15257
+ #
14688
15258
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14689
15259
  # constructed with.
14690
15260
  # @param incident_id [String]
@@ -14716,14 +15286,16 @@ module Infrawrench
14716
15286
  #
14717
15287
  # Raises on 404: Not found
14718
15288
  #
15289
+ # Raises on 409: Conflict
15290
+ #
14719
15291
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14720
15292
  # constructed with.
14721
15293
  # @param incident_id [String]
14722
- # @param body [Hash, nil] Request body, shaped as `IncidentPatch`.
15294
+ # @param body [Hash] Request body, shaped as `IncidentPatch`.
14723
15295
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14724
15296
  # @return [Hash] Parsed JSON, shaped as `Incident` — see `sig/infrawrench/sdk.rbs`.
14725
15297
  # @raise [Infrawrench::ApiError] On any non-2xx response.
14726
- def update(incident_id:, org_id: nil, body: nil, request_options: nil)
15298
+ def update(incident_id:, body:, org_id: nil, request_options: nil)
14727
15299
  @transport.request(
14728
15300
  http_method: "PATCH",
14729
15301
  path: "/api/org/{orgId}/incidents/{incidentId}",
@@ -15222,7 +15794,7 @@ module Infrawrench
15222
15794
  #
15223
15795
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15224
15796
  # constructed with.
15225
- # @param managed_account_id [String, nil]
15797
+ # @param managed_account_id [Object, nil]
15226
15798
  # @param status [String, nil]
15227
15799
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
15228
15800
  # @return [Array<Hash>] Parsed JSON, shaped as `Array<InvoiceSummary>` — see
@@ -15493,13 +16065,12 @@ module Infrawrench
15493
16065
  # Raises on 500: Processing failed; the tracker retries
15494
16066
  #
15495
16067
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
15496
- # @return [nil] This endpoint returns no content.
16068
+ # @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
15497
16069
  # @raise [Infrawrench::ApiError] On any non-2xx response.
15498
16070
  def github(request_options: nil)
15499
16071
  @transport.request(
15500
16072
  http_method: "POST",
15501
16073
  path: "/api/issue-webhooks/github",
15502
- accept: :empty,
15503
16074
  request_options: request_options
15504
16075
  )
15505
16076
  end
@@ -15552,7 +16123,7 @@ module Infrawrench
15552
16123
  #
15553
16124
  # Raises on 400: Bad request
15554
16125
  #
15555
- # Raises on 502: Jira refused or was unreachable
16126
+ # Raises on 502: Bad gateway: an upstream service failed
15556
16127
  #
15557
16128
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15558
16129
  # constructed with.
@@ -15590,6 +16161,8 @@ module Infrawrench
15590
16161
  #
15591
16162
  # Raises on 400: Bad request
15592
16163
  #
16164
+ # Raises on 502: Bad gateway: an upstream service failed
16165
+ #
15593
16166
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15594
16167
  # constructed with.
15595
16168
  # @param key [String]
@@ -15616,6 +16189,8 @@ module Infrawrench
15616
16189
  #
15617
16190
  # Raises on 400: Bad request
15618
16191
  #
16192
+ # Raises on 502: Bad gateway: an upstream service failed
16193
+ #
15619
16194
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15620
16195
  # constructed with.
15621
16196
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -15655,7 +16230,7 @@ module Infrawrench
15655
16230
  #
15656
16231
  # Raises on 400: Bad request
15657
16232
  #
15658
- # Raises on 502: Jira refused or was unreachable
16233
+ # Raises on 502: Bad gateway: an upstream service failed
15659
16234
  #
15660
16235
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15661
16236
  # constructed with.
@@ -15683,9 +16258,11 @@ module Infrawrench
15683
16258
  #
15684
16259
  # DELETE /api/org/{orgId}/jira/webhook
15685
16260
  #
16261
+ # Raises on 400: Bad request
16262
+ #
15686
16263
  # Raises on 404: Not found
15687
16264
  #
15688
- # Raises on 502: Jira refused or was unreachable
16265
+ # Raises on 502: Bad gateway: an upstream service failed
15689
16266
  #
15690
16267
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15691
16268
  # constructed with.
@@ -15779,7 +16356,7 @@ module Infrawrench
15779
16356
  #
15780
16357
  # Raises on 400: Bad request
15781
16358
  #
15782
- # Raises on 502: Jira refused to create the issue, or was unreachable
16359
+ # Raises on 502: Bad gateway: an upstream service failed
15783
16360
  #
15784
16361
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15785
16362
  # constructed with.
@@ -15806,12 +16383,13 @@ module Infrawrench
15806
16383
  #
15807
16384
  # Raises on 400: Bad request
15808
16385
  #
16386
+ # Raises on 502: Bad gateway: an upstream service failed
16387
+ #
15809
16388
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15810
16389
  # constructed with.
15811
16390
  # @param body [Hash] Request body, shaped as `JiraIntegrationInput`.
15812
16391
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
15813
- # @return [Hash] Parsed JSON, shaped as `JiraIntegration & Hash` — see
15814
- # `sig/infrawrench/sdk.rbs`.
16392
+ # @return [Hash] Parsed JSON, shaped as `JiraIntegration` — see `sig/infrawrench/sdk.rbs`.
15815
16393
  # @raise [Infrawrench::ApiError] On any non-2xx response.
15816
16394
  def update(body:, org_id: nil, request_options: nil)
15817
16395
  @transport.request(
@@ -15835,7 +16413,7 @@ module Infrawrench
15835
16413
  #
15836
16414
  # Raises on 400: Bad request
15837
16415
  #
15838
- # Raises on 502: Jira rejected the credentials or was unreachable
16416
+ # Raises on 502: Bad gateway: an upstream service failed
15839
16417
  #
15840
16418
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15841
16419
  # constructed with.
@@ -15892,7 +16470,9 @@ module Infrawrench
15892
16470
  #
15893
16471
  # GET /api/org/{orgId}/jit-access/accounts/{accountId}/roles
15894
16472
  #
15895
- # Raises on 502: Provider error
16473
+ # Raises on 400: Bad request
16474
+ #
16475
+ # Raises on 502: JitError
15896
16476
  #
15897
16477
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15898
16478
  # constructed with.
@@ -15921,7 +16501,7 @@ module Infrawrench
15921
16501
  #
15922
16502
  # GET /api/org/{orgId}/jit-access/accounts/{accountId}/scopes
15923
16503
  #
15924
- # Raises on 502: Provider error
16504
+ # Raises on 502: JitError
15925
16505
  #
15926
16506
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15927
16507
  # constructed with.
@@ -16053,7 +16633,9 @@ module Infrawrench
16053
16633
  #
16054
16634
  # GET /api/org/{orgId}/jit-access/policies/{policyId}/principal
16055
16635
  #
16056
- # Raises on 403: Not a requester
16636
+ # Raises on 401: Unauthenticated
16637
+ #
16638
+ # Raises on 403: JitError
16057
16639
  #
16058
16640
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16059
16641
  # constructed with.
@@ -16077,12 +16659,14 @@ module Infrawrench
16077
16659
  #
16078
16660
  # GET /api/org/{orgId}/jit-access/policies/{policyId}/principals
16079
16661
  #
16662
+ # Raises on 401: Unauthenticated
16663
+ #
16080
16664
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16081
16665
  # constructed with.
16082
16666
  # @param policy_id [String]
16083
16667
  # @param q [String, nil]
16084
16668
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
16085
- # @return [Array<Hash>] Parsed JSON, shaped as `Array<JitPrincipalOption & Hash>` — see
16669
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<JitPrincipalOption>` — see
16086
16670
  # `sig/infrawrench/sdk.rbs`.
16087
16671
  # @raise [Infrawrench::ApiError] On any non-2xx response.
16088
16672
  def principals(policy_id:, org_id: nil, q: nil, request_options: nil)
@@ -16145,11 +16729,15 @@ module Infrawrench
16145
16729
  #
16146
16730
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/approve
16147
16731
  #
16148
- # Raises on 403: Not allowed
16732
+ # Raises on 400: Bad request
16733
+ #
16734
+ # Raises on 401: Unauthenticated
16735
+ #
16736
+ # Raises on 403: JitError
16149
16737
  #
16150
16738
  # Raises on 404: Not found
16151
16739
  #
16152
- # Raises on 409: Already decided, timed out, or not in a state for this
16740
+ # Raises on 409: JitError
16153
16741
  #
16154
16742
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16155
16743
  # constructed with.
@@ -16176,11 +16764,15 @@ module Infrawrench
16176
16764
  #
16177
16765
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/cancel
16178
16766
  #
16179
- # Raises on 403: Not allowed
16767
+ # Raises on 400: Bad request
16768
+ #
16769
+ # Raises on 401: Unauthenticated
16770
+ #
16771
+ # Raises on 403: JitError
16180
16772
  #
16181
16773
  # Raises on 404: Not found
16182
16774
  #
16183
- # Raises on 409: Already decided, timed out, or not in a state for this
16775
+ # Raises on 409: JitError
16184
16776
  #
16185
16777
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16186
16778
  # constructed with.
@@ -16209,11 +16801,13 @@ module Infrawrench
16209
16801
  #
16210
16802
  # POST /api/org/{orgId}/jit-access/requests
16211
16803
  #
16212
- # Raises on 400: Invalid
16804
+ # Raises on 400: JitError
16805
+ #
16806
+ # Raises on 401: Unauthenticated
16213
16807
  #
16214
- # Raises on 403: Not a requester under this policy
16808
+ # Raises on 403: JitError
16215
16809
  #
16216
- # Raises on 409: A pending or active request already covers this
16810
+ # Raises on 409: JitError
16217
16811
  #
16218
16812
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16219
16813
  # constructed with.
@@ -16240,11 +16834,15 @@ module Infrawrench
16240
16834
  #
16241
16835
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/deny
16242
16836
  #
16243
- # Raises on 403: Not allowed
16837
+ # Raises on 400: Bad request
16838
+ #
16839
+ # Raises on 401: Unauthenticated
16840
+ #
16841
+ # Raises on 403: JitError
16244
16842
  #
16245
16843
  # Raises on 404: Not found
16246
16844
  #
16247
- # Raises on 409: Already decided, timed out, or not in a state for this
16845
+ # Raises on 409: JitError
16248
16846
  #
16249
16847
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16250
16848
  # constructed with.
@@ -16273,11 +16871,13 @@ module Infrawrench
16273
16871
  #
16274
16872
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/extend
16275
16873
  #
16276
- # Raises on 400: Beyond the policy maximum
16874
+ # Raises on 400: JitError
16875
+ #
16876
+ # Raises on 401: Unauthenticated
16277
16877
  #
16278
- # Raises on 403: Not an approver
16878
+ # Raises on 403: JitError
16279
16879
  #
16280
- # Raises on 409: Not active
16880
+ # Raises on 409: JitError
16281
16881
  #
16282
16882
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16283
16883
  # constructed with.
@@ -16307,6 +16907,8 @@ module Infrawrench
16307
16907
  #
16308
16908
  # GET /api/org/{orgId}/jit-access/requests/{requestId}
16309
16909
  #
16910
+ # Raises on 401: Unauthenticated
16911
+ #
16310
16912
  # Raises on 404: Not found
16311
16913
  #
16312
16914
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -16334,6 +16936,8 @@ module Infrawrench
16334
16936
  #
16335
16937
  # Raises on 400: Bad request
16336
16938
  #
16939
+ # Raises on 401: Unauthenticated
16940
+ #
16337
16941
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16338
16942
  # constructed with.
16339
16943
  # @param status [String, nil]
@@ -16360,11 +16964,15 @@ module Infrawrench
16360
16964
  #
16361
16965
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/revoke
16362
16966
  #
16363
- # Raises on 403: Not allowed
16967
+ # Raises on 400: Bad request
16968
+ #
16969
+ # Raises on 401: Unauthenticated
16970
+ #
16971
+ # Raises on 403: JitError
16364
16972
  #
16365
16973
  # Raises on 404: Not found
16366
16974
  #
16367
- # Raises on 409: Already decided, timed out, or not in a state for this
16975
+ # Raises on 409: JitError
16368
16976
  #
16369
16977
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16370
16978
  # constructed with.
@@ -16755,6 +17363,8 @@ module Infrawrench
16755
17363
  #
16756
17364
  # GET /api/org/{orgId}/leaked-secrets
16757
17365
  #
17366
+ # Raises on 400: Bad request
17367
+ #
16758
17368
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16759
17369
  # constructed with.
16760
17370
  # @param status [String, nil] `open` needs rotating; `rotated` was rotated through
@@ -16952,6 +17562,8 @@ module Infrawrench
16952
17562
  #
16953
17563
  # Raises on 400: Bad request
16954
17564
  #
17565
+ # Raises on 403: Forbidden
17566
+ #
16955
17567
  # Raises on 404: Not found
16956
17568
  #
16957
17569
  # Raises on 409: The resource already has an active lease
@@ -17062,6 +17674,8 @@ module Infrawrench
17062
17674
  #
17063
17675
  # Raises on 400: Bad request
17064
17676
  #
17677
+ # Raises on 403: Forbidden
17678
+ #
17065
17679
  # Raises on 404: Not found
17066
17680
  #
17067
17681
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17129,7 +17743,7 @@ module Infrawrench
17129
17743
  #
17130
17744
  # Raises on 400: Bad request
17131
17745
  #
17132
- # Raises on 502: Linear refused or was unreachable
17746
+ # Raises on 502: Bad gateway: an upstream service failed
17133
17747
  #
17134
17748
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17135
17749
  # constructed with.
@@ -17169,7 +17783,7 @@ module Infrawrench
17169
17783
  #
17170
17784
  # Raises on 400: Bad request
17171
17785
  #
17172
- # Raises on 502: Linear refused or was unreachable
17786
+ # Raises on 502: Bad gateway: an upstream service failed
17173
17787
  #
17174
17788
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17175
17789
  # constructed with.
@@ -17197,9 +17811,11 @@ module Infrawrench
17197
17811
  #
17198
17812
  # DELETE /api/org/{orgId}/linear/webhook
17199
17813
  #
17814
+ # Raises on 400: Bad request
17815
+ #
17200
17816
  # Raises on 404: Not found
17201
17817
  #
17202
- # Raises on 502: Linear refused or was unreachable
17818
+ # Raises on 502: Bad gateway: an upstream service failed
17203
17819
  #
17204
17820
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17205
17821
  # constructed with.
@@ -17227,6 +17843,8 @@ module Infrawrench
17227
17843
  #
17228
17844
  # Raises on 400: Bad request
17229
17845
  #
17846
+ # Raises on 502: Bad gateway: an upstream service failed
17847
+ #
17230
17848
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17231
17849
  # constructed with.
17232
17850
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -17316,7 +17934,7 @@ module Infrawrench
17316
17934
  #
17317
17935
  # Raises on 400: Bad request
17318
17936
  #
17319
- # Raises on 502: Linear refused to create the issue, or was unreachable
17937
+ # Raises on 502: Bad gateway: an upstream service failed
17320
17938
  #
17321
17939
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17322
17940
  # constructed with.
@@ -17346,6 +17964,8 @@ module Infrawrench
17346
17964
  #
17347
17965
  # Raises on 400: Bad request
17348
17966
  #
17967
+ # Raises on 502: Bad gateway: an upstream service failed
17968
+ #
17349
17969
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17350
17970
  # constructed with.
17351
17971
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -17369,12 +17989,13 @@ module Infrawrench
17369
17989
  #
17370
17990
  # Raises on 400: Bad request
17371
17991
  #
17992
+ # Raises on 502: Bad gateway: an upstream service failed
17993
+ #
17372
17994
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17373
17995
  # constructed with.
17374
17996
  # @param body [Hash] Request body, shaped as `LinearIntegrationInput`.
17375
17997
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
17376
- # @return [Hash] Parsed JSON, shaped as `LinearIntegration & Hash` — see
17377
- # `sig/infrawrench/sdk.rbs`.
17998
+ # @return [Hash] Parsed JSON, shaped as `LinearIntegration` — see `sig/infrawrench/sdk.rbs`.
17378
17999
  # @raise [Infrawrench::ApiError] On any non-2xx response.
17379
18000
  def update(body:, org_id: nil, request_options: nil)
17380
18001
  @transport.request(
@@ -17398,7 +18019,7 @@ module Infrawrench
17398
18019
  #
17399
18020
  # Raises on 400: Bad request
17400
18021
  #
17401
- # Raises on 502: Linear rejected the key or was unreachable
18022
+ # Raises on 502: Bad gateway: an upstream service failed
17402
18023
  #
17403
18024
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17404
18025
  # constructed with.
@@ -17625,6 +18246,8 @@ module Infrawrench
17625
18246
  #
17626
18247
  # Raises on 400: Bad request
17627
18248
  #
18249
+ # Raises on 403: Forbidden
18250
+ #
17628
18251
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17629
18252
  # constructed with.
17630
18253
  # @param body [Hash] Request body, shaped as `ManagedAccountAssignmentPreviewRequest`.
@@ -17774,6 +18397,8 @@ module Infrawrench
17774
18397
  #
17775
18398
  # Raises on 400: Bad request
17776
18399
  #
18400
+ # Raises on 403: Forbidden
18401
+ #
17777
18402
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17778
18403
  # constructed with.
17779
18404
  # @param from [String, nil] Defaults, with `to`, to the last full calendar month.
@@ -17842,6 +18467,8 @@ module Infrawrench
17842
18467
  # written. The poller evaluates enabled rules about once a minute and alerts
17843
18468
  # when the condition held for the whole trailing window.
17844
18469
  #
18470
+ # _Requires permission: `metric-alerts:write`._
18471
+ #
17845
18472
  # POST /api/org/{orgId}/metric-alerts
17846
18473
  #
17847
18474
  # Raises on 400: Bad request
@@ -17867,6 +18494,8 @@ module Infrawrench
17867
18494
  # Soft delete. The rule's firing history stays readable via
17868
18495
  # /metric-alerts/events.
17869
18496
  #
18497
+ # _Requires permission: `metric-alerts:write`._
18498
+ #
17870
18499
  # DELETE /api/org/{orgId}/metric-alerts/{id}
17871
18500
  #
17872
18501
  # Raises on 404: Not found
@@ -17888,6 +18517,8 @@ module Infrawrench
17888
18517
 
17889
18518
  # Recent metric alert firings
17890
18519
  #
18520
+ # _Requires permission: `metric-alerts:read`._
18521
+ #
17891
18522
  # GET /api/org/{orgId}/metric-alerts/events
17892
18523
  #
17893
18524
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17910,6 +18541,8 @@ module Infrawrench
17910
18541
 
17911
18542
  # Get a metric alert rule
17912
18543
  #
18544
+ # _Requires permission: `metric-alerts:read`._
18545
+ #
17913
18546
  # GET /api/org/{orgId}/metric-alerts/{id}
17914
18547
  #
17915
18548
  # Raises on 404: Not found
@@ -17931,6 +18564,8 @@ module Infrawrench
17931
18564
 
17932
18565
  # List metric alert rules with live firing status
17933
18566
  #
18567
+ # _Requires permission: `metric-alerts:read`._
18568
+ #
17934
18569
  # GET /api/org/{orgId}/metric-alerts
17935
18570
  #
17936
18571
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17954,6 +18589,8 @@ module Infrawrench
17954
18589
  # narrowed to one plugin and resource type; what the rule builder's metric
17955
18590
  # picker is fed from.
17956
18591
  #
18592
+ # _Requires permission: `metric-alerts:read`._
18593
+ #
17957
18594
  # GET /api/org/{orgId}/metric-alerts/metric-keys
17958
18595
  #
17959
18596
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17976,6 +18613,8 @@ module Infrawrench
17976
18613
 
17977
18614
  # List what the organization's resources offer to select on
17978
18615
  #
18616
+ # _Requires permission: `metric-alerts:read`._
18617
+ #
17979
18618
  # GET /api/org/{orgId}/metric-alerts/selector-options
17980
18619
  #
17981
18620
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17995,6 +18634,8 @@ module Infrawrench
17995
18634
 
17996
18635
  # Preview which resources a selector matches right now
17997
18636
  #
18637
+ # _Requires permission: `metric-alerts:read`._
18638
+ #
17998
18639
  # GET /api/org/{orgId}/metric-alerts/selector-preview
17999
18640
  #
18000
18641
  # Raises on 400: Bad request
@@ -18033,6 +18674,8 @@ module Infrawrench
18033
18674
 
18034
18675
  # Update a metric alert rule
18035
18676
  #
18677
+ # _Requires permission: `metric-alerts:write`._
18678
+ #
18036
18679
  # PUT /api/org/{orgId}/metric-alerts/{id}
18037
18680
  #
18038
18681
  # Raises on 400: Bad request
@@ -18083,6 +18726,8 @@ module Infrawrench
18083
18726
  #
18084
18727
  # Raises on 400: Bad request
18085
18728
  #
18729
+ # Raises on 403: Forbidden
18730
+ #
18086
18731
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18087
18732
  # constructed with.
18088
18733
  # @param at [String, nil] Centre of the window. Defaults to now.
@@ -18117,6 +18762,8 @@ module Infrawrench
18117
18762
  # channel routes nothing to it on its own. Responds 400 when the URL is not
18118
18763
  # https or its host is not Microsoft-operated.
18119
18764
  #
18765
+ # _Requires permission: `org:settings:write`._
18766
+ #
18120
18767
  # POST /api/org/{orgId}/msteams/webhooks
18121
18768
  #
18122
18769
  # Raises on 400: Bad request
@@ -18139,6 +18786,8 @@ module Infrawrench
18139
18786
 
18140
18787
  # Disconnect a Teams channel
18141
18788
  #
18789
+ # _Requires permission: `org:settings:write`._
18790
+ #
18142
18791
  # DELETE /api/org/{orgId}/msteams/webhooks/{id}
18143
18792
  #
18144
18793
  # Raises on 404: Not found
@@ -18163,6 +18812,8 @@ module Infrawrench
18163
18812
  # The webhook URL is immutable; remove the channel and re-add it to change
18164
18813
  # it.
18165
18814
  #
18815
+ # _Requires permission: `org:settings:write`._
18816
+ #
18166
18817
  # PATCH /api/org/{orgId}/msteams/webhooks/{id}
18167
18818
  #
18168
18819
  # Raises on 400: Bad request
@@ -18204,6 +18855,8 @@ module Infrawrench
18204
18855
  # Returns the Teams channels alerts can be routed to. Which alerts reach
18205
18856
  # each one is decided by /alert-rules. Webhook URLs are never included.
18206
18857
  #
18858
+ # _Requires permission: `org:settings:write`._
18859
+ #
18207
18860
  # GET /api/org/{orgId}/msteams/status
18208
18861
  #
18209
18862
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -18226,6 +18879,8 @@ module Infrawrench
18226
18879
  # Microsoft returned when nothing could be delivered (HTTP 404 usually means
18227
18880
  # the Workflow was deleted or turned off).
18228
18881
  #
18882
+ # _Requires permission: `org:settings:write`._
18883
+ #
18229
18884
  # POST /api/org/{orgId}/msteams/test
18230
18885
  #
18231
18886
  # Raises on 400: Bad request
@@ -18568,7 +19223,7 @@ module Infrawrench
18568
19223
  #
18569
19224
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18570
19225
  # constructed with.
18571
- # @param body [Hash] Request body, shaped as `NetworkFlowSettings`.
19226
+ # @param body [Hash] Request body, shaped as `NetworkFlowSettingsInput`.
18572
19227
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18573
19228
  # @return [Hash] Parsed JSON, shaped as `NetworkFlowSettings` — see
18574
19229
  # `sig/infrawrench/sdk.rbs`.
@@ -18735,19 +19390,23 @@ module Infrawrench
18735
19390
  # cover is audit-logged, which is the control that makes the looser
18736
19391
  # permission safe.
18737
19392
  #
19393
+ # _Requires permission: `team:read`._
19394
+ #
18738
19395
  # POST /api/org/{orgId}/on-call/overrides
18739
19396
  #
18740
19397
  # Raises on 400: Bad request
18741
19398
  #
18742
19399
  # Raises on 404: Not found
18743
19400
  #
19401
+ # Raises on 409: Conflict
19402
+ #
18744
19403
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18745
19404
  # constructed with.
18746
- # @param body [Hash, nil] Request body, shaped as `OnCallOverrideCreate`.
19405
+ # @param body [Hash] Request body, shaped as `OnCallOverrideCreate`.
18747
19406
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18748
19407
  # @return [Hash] Parsed JSON, shaped as `OnCallOverride` — see `sig/infrawrench/sdk.rbs`.
18749
19408
  # @raise [Infrawrench::ApiError] On any non-2xx response.
18750
- def create(org_id: nil, body: nil, request_options: nil)
19409
+ def create(body:, org_id: nil, request_options: nil)
18751
19410
  @transport.request(
18752
19411
  http_method: "POST",
18753
19412
  path: "/api/org/{orgId}/on-call/overrides",
@@ -18759,6 +19418,8 @@ module Infrawrench
18759
19418
 
18760
19419
  # Cancel a cover
18761
19420
  #
19421
+ # _Requires permission: `team:read`._
19422
+ #
18762
19423
  # DELETE /api/org/{orgId}/on-call/overrides/{overrideId}
18763
19424
  #
18764
19425
  # Raises on 404: Not found
@@ -18781,6 +19442,8 @@ module Infrawrench
18781
19442
 
18782
19443
  # List covers
18783
19444
  #
19445
+ # _Requires permission: `team:read`._
19446
+ #
18784
19447
  # GET /api/org/{orgId}/on-call/overrides
18785
19448
  #
18786
19449
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -18817,19 +19480,23 @@ module Infrawrench
18817
19480
  #
18818
19481
  # Writing takes `org:settings:write`: a rotation decides who gets woken up.
18819
19482
  #
19483
+ # _Requires permission: `org:settings:write`._
19484
+ #
18820
19485
  # POST /api/org/{orgId}/on-call/schedules
18821
19486
  #
18822
19487
  # Raises on 400: Bad request
18823
19488
  #
19489
+ # Raises on 404: Not found
19490
+ #
18824
19491
  # Raises on 409: Conflict
18825
19492
  #
18826
19493
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18827
19494
  # constructed with.
18828
- # @param body [Hash, nil] Request body, shaped as `OnCallScheduleCreate`.
19495
+ # @param body [Hash] Request body, shaped as `OnCallScheduleCreate`.
18829
19496
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18830
19497
  # @return [Hash] Parsed JSON, shaped as `OnCallSchedule` — see `sig/infrawrench/sdk.rbs`.
18831
19498
  # @raise [Infrawrench::ApiError] On any non-2xx response.
18832
- def create(org_id: nil, body: nil, request_options: nil)
19499
+ def create(body:, org_id: nil, request_options: nil)
18833
19500
  @transport.request(
18834
19501
  http_method: "POST",
18835
19502
  path: "/api/org/{orgId}/on-call/schedules",
@@ -18844,6 +19511,8 @@ module Infrawrench
18844
19511
  # Takes its covers with it. Routing rules naming it resolve to nobody
18845
19512
  # afterwards.
18846
19513
  #
19514
+ # _Requires permission: `org:settings:write`._
19515
+ #
18847
19516
  # DELETE /api/org/{orgId}/on-call/schedules/{scheduleId}
18848
19517
  #
18849
19518
  # Raises on 404: Not found
@@ -18866,6 +19535,8 @@ module Infrawrench
18866
19535
 
18867
19536
  # List on-call rotations
18868
19537
  #
19538
+ # _Requires permission: `team:read`._
19539
+ #
18869
19540
  # GET /api/org/{orgId}/on-call/schedules
18870
19541
  #
18871
19542
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -18888,6 +19559,8 @@ module Infrawrench
18888
19559
  # The same computation the alert path resolves with, so a preview can never
18889
19560
  # disagree with who actually gets woken up.
18890
19561
  #
19562
+ # _Requires permission: `team:read`._
19563
+ #
18891
19564
  # GET /api/org/{orgId}/on-call/schedules/{scheduleId}/shifts
18892
19565
  #
18893
19566
  # Raises on 400: Bad request
@@ -18918,6 +19591,8 @@ module Infrawrench
18918
19591
  # Sending `participantUserIds` replaces the list wholesale; position is
18919
19592
  # rotation order, so reordering re-plans the future.
18920
19593
  #
19594
+ # _Requires permission: `org:settings:write`._
19595
+ #
18921
19596
  # PATCH /api/org/{orgId}/on-call/schedules/{scheduleId}
18922
19597
  #
18923
19598
  # Raises on 400: Bad request
@@ -18929,11 +19604,11 @@ module Infrawrench
18929
19604
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18930
19605
  # constructed with.
18931
19606
  # @param schedule_id [String]
18932
- # @param body [Hash, nil] Request body, shaped as `OnCallScheduleUpdate`.
19607
+ # @param body [Hash] Request body, shaped as `OnCallScheduleUpdate`.
18933
19608
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18934
19609
  # @return [Hash] Parsed JSON, shaped as `OnCallSchedule` — see `sig/infrawrench/sdk.rbs`.
18935
19610
  # @raise [Infrawrench::ApiError] On any non-2xx response.
18936
- def update(schedule_id:, org_id: nil, body: nil, request_options: nil)
19611
+ def update(schedule_id:, body:, org_id: nil, request_options: nil)
18937
19612
  @transport.request(
18938
19613
  http_method: "PATCH",
18939
19614
  path: "/api/org/{orgId}/on-call/schedules/{scheduleId}",
@@ -18965,6 +19640,8 @@ module Infrawrench
18965
19640
  # rotation. Takes `team:read`: knowing who is on call is something every
18966
19641
  # member needs and nobody should have to ask an admin for.
18967
19642
  #
19643
+ # _Requires permission: `team:read`._
19644
+ #
18968
19645
  # GET /api/org/{orgId}/on-call/now
18969
19646
  #
18970
19647
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -19191,7 +19868,7 @@ module Infrawrench
19191
19868
  # constructed with.
19192
19869
  # @param body [Hash, nil] Request body, shaped as `ResourceOwnershipPatch`.
19193
19870
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
19194
- # @return [Hash] Parsed JSON, shaped as `ResourceOwnership & Hash | nil` — see
19871
+ # @return [Hash, nil] Parsed JSON, shaped as `ResourceOwnership | nil` — see
19195
19872
  # `sig/infrawrench/sdk.rbs`.
19196
19873
  # @raise [Infrawrench::ApiError] On any non-2xx response.
19197
19874
  def update(org_id: nil, body: nil, request_options: nil)
@@ -19300,6 +19977,8 @@ module Infrawrench
19300
19977
  # default user. The returned state is the provider's answer, not an
19301
19978
  # assumption.
19302
19979
  #
19980
+ # _Requires permission: `incidents:write`._
19981
+ #
19303
19982
  # POST /api/org/{orgId}/paging-incidents/{id}/acknowledge
19304
19983
  #
19305
19984
  # Raises on 400: Bad request
@@ -19317,10 +19996,9 @@ module Infrawrench
19317
19996
  #
19318
19997
  # Raises on 500: Server error
19319
19998
  #
19320
- # Raises on 503: A backing service this endpoint depends on is not available
19999
+ # Raises on 502: Bad gateway: an upstream service failed
19321
20000
  #
19322
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19323
- # again and retry; the request itself was well-formed.
20001
+ # Raises on 503: A backing service this endpoint depends on is not available
19324
20002
  #
19325
20003
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19326
20004
  # @param id [String]
@@ -19342,6 +20020,8 @@ module Infrawrench
19342
20020
  # by default; `status=all` includes resolved ones. These are a provider's
19343
20021
  # pages, distinct from incidents declared in Infrawrench (`/incidents`).
19344
20022
  #
20023
+ # _Requires permission: `incidents:read`._
20024
+ #
19345
20025
  # GET /api/org/{orgId}/paging-incidents
19346
20026
  #
19347
20027
  # Raises on 400: Bad request
@@ -19359,10 +20039,9 @@ module Infrawrench
19359
20039
  #
19360
20040
  # Raises on 500: Server error
19361
20041
  #
19362
- # Raises on 503: A backing service this endpoint depends on is not available
20042
+ # Raises on 502: Bad gateway: an upstream service failed
19363
20043
  #
19364
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19365
- # again and retry; the request itself was well-formed.
20044
+ # Raises on 503: A backing service this endpoint depends on is not available
19366
20045
  #
19367
20046
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19368
20047
  # constructed with.
@@ -19388,6 +20067,8 @@ module Infrawrench
19388
20067
  # default user. The returned state is the provider's answer, not an
19389
20068
  # assumption.
19390
20069
  #
20070
+ # _Requires permission: `incidents:write`._
20071
+ #
19391
20072
  # POST /api/org/{orgId}/paging-incidents/{id}/resolve
19392
20073
  #
19393
20074
  # Raises on 400: Bad request
@@ -19405,10 +20086,9 @@ module Infrawrench
19405
20086
  #
19406
20087
  # Raises on 500: Server error
19407
20088
  #
19408
- # Raises on 503: A backing service this endpoint depends on is not available
20089
+ # Raises on 502: Bad gateway: an upstream service failed
19409
20090
  #
19410
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19411
- # again and retry; the request itself was well-formed.
20091
+ # Raises on 503: A backing service this endpoint depends on is not available
19412
20092
  #
19413
20093
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19414
20094
  # @param id [String]
@@ -19439,6 +20119,8 @@ module Infrawrench
19439
20119
  # organization member by email; `memberUserId` is null for somebody who is
19440
20120
  # on call upstream but not a member here.
19441
20121
  #
20122
+ # _Requires permission: `team:read`._
20123
+ #
19442
20124
  # GET /api/org/{orgId}/paging-providers/{accountId}/on-call/{sourceId}
19443
20125
  #
19444
20126
  # Raises on 400: Bad request
@@ -19456,10 +20138,9 @@ module Infrawrench
19456
20138
  #
19457
20139
  # Raises on 500: Server error
19458
20140
  #
19459
- # Raises on 503: A backing service this endpoint depends on is not available
20141
+ # Raises on 502: Bad gateway: an upstream service failed
19460
20142
  #
19461
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19462
- # again and retry; the request itself was well-formed.
20143
+ # Raises on 503: A backing service this endpoint depends on is not available
19463
20144
  #
19464
20145
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19465
20146
  # @param account_id [String] A connected account whose plugin can page
@@ -19496,6 +20177,8 @@ module Infrawrench
19496
20177
  # failure is reported per account in `error` rather than failing the
19497
20178
  # response.
19498
20179
  #
20180
+ # _Requires permission: `org:settings:write`._
20181
+ #
19499
20182
  # GET /api/org/{orgId}/paging-providers/destinations
19500
20183
  #
19501
20184
  # Raises on 400: Bad request
@@ -19513,10 +20196,9 @@ module Infrawrench
19513
20196
  #
19514
20197
  # Raises on 500: Server error
19515
20198
  #
19516
- # Raises on 503: A backing service this endpoint depends on is not available
20199
+ # Raises on 502: Bad gateway: an upstream service failed
19517
20200
  #
19518
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19519
- # again and retry; the request itself was well-formed.
20201
+ # Raises on 503: A backing service this endpoint depends on is not available
19520
20202
  #
19521
20203
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19522
20204
  # constructed with.
@@ -19539,6 +20221,8 @@ module Infrawrench
19539
20221
  # and its resolution are one alert upstream. `pendingAction` is set while a
19540
20222
  # send is queued or being retried.
19541
20223
  #
20224
+ # _Requires permission: `org:settings:write`._
20225
+ #
19542
20226
  # GET /api/org/{orgId}/paging-providers/events
19543
20227
  #
19544
20228
  # Raises on 400: Bad request
@@ -19556,10 +20240,9 @@ module Infrawrench
19556
20240
  #
19557
20241
  # Raises on 500: Server error
19558
20242
  #
19559
- # Raises on 503: A backing service this endpoint depends on is not available
20243
+ # Raises on 502: Bad gateway: an upstream service failed
19560
20244
  #
19561
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19562
- # again and retry; the request itself was well-formed.
20245
+ # Raises on 503: A backing service this endpoint depends on is not available
19563
20246
  #
19564
20247
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19565
20248
  # constructed with.
@@ -19580,6 +20263,8 @@ module Infrawrench
19580
20263
 
19581
20264
  # List paging provider accounts and their settings
19582
20265
  #
20266
+ # _Requires permission: `org:settings:write`._
20267
+ #
19583
20268
  # GET /api/org/{orgId}/paging-providers
19584
20269
  #
19585
20270
  # Raises on 400: Bad request
@@ -19597,10 +20282,9 @@ module Infrawrench
19597
20282
  #
19598
20283
  # Raises on 500: Server error
19599
20284
  #
19600
- # Raises on 503: A backing service this endpoint depends on is not available
20285
+ # Raises on 502: Bad gateway: an upstream service failed
19601
20286
  #
19602
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19603
- # again and retry; the request itself was well-formed.
20287
+ # Raises on 503: A backing service this endpoint depends on is not available
19604
20288
  #
19605
20289
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19606
20290
  # constructed with.
@@ -19624,6 +20308,8 @@ module Infrawrench
19624
20308
  # mirrored incidents. A webhook that cannot be subscribed is reported in
19625
20309
  # `warning` and mirroring falls back to reconciling on a timer.
19626
20310
  #
20311
+ # _Requires permission: `org:settings:write`._
20312
+ #
19627
20313
  # PUT /api/org/{orgId}/paging-providers/{accountId}/settings
19628
20314
  #
19629
20315
  # Raises on 400: Bad request
@@ -19641,19 +20327,18 @@ module Infrawrench
19641
20327
  #
19642
20328
  # Raises on 500: Server error
19643
20329
  #
19644
- # Raises on 503: A backing service this endpoint depends on is not available
20330
+ # Raises on 502: Bad gateway: an upstream service failed
19645
20331
  #
19646
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19647
- # again and retry; the request itself was well-formed.
20332
+ # Raises on 503: A backing service this endpoint depends on is not available
19648
20333
  #
19649
20334
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19650
20335
  # @param account_id [String] A connected account whose plugin can page
19651
- # @param body [Hash, nil] Request body, shaped as `PagingProviderSettingsInput`.
20336
+ # @param body [Hash] Request body, shaped as `PagingProviderSettingsInput`.
19652
20337
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
19653
20338
  # @return [Hash] Parsed JSON, shaped as `PagingProviderSettingsResult` — see
19654
20339
  # `sig/infrawrench/sdk.rbs`.
19655
20340
  # @raise [Infrawrench::ApiError] On any non-2xx response.
19656
- def settings(account_id:, org_id: nil, body: nil, request_options: nil)
20341
+ def settings(account_id:, body:, org_id: nil, request_options: nil)
19657
20342
  @transport.request(
19658
20343
  http_method: "PUT",
19659
20344
  path: "/api/org/{orgId}/paging-providers/{accountId}/settings",
@@ -19665,6 +20350,8 @@ module Infrawrench
19665
20350
 
19666
20351
  # Reconcile an account's incidents now
19667
20352
  #
20353
+ # _Requires permission: `org:settings:write`._
20354
+ #
19668
20355
  # POST /api/org/{orgId}/paging-providers/{accountId}/sync
19669
20356
  #
19670
20357
  # Raises on 400: Bad request
@@ -19682,10 +20369,9 @@ module Infrawrench
19682
20369
  #
19683
20370
  # Raises on 500: Server error
19684
20371
  #
19685
- # Raises on 503: A backing service this endpoint depends on is not available
20372
+ # Raises on 502: Bad gateway: an upstream service failed
19686
20373
  #
19687
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19688
- # again and retry; the request itself was well-formed.
20374
+ # Raises on 503: A backing service this endpoint depends on is not available
19689
20375
  #
19690
20376
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19691
20377
  # @param account_id [String] A connected account whose plugin can page
@@ -19723,6 +20409,8 @@ module Infrawrench
19723
20409
  #
19724
20410
  # Raises on 404: Unknown token
19725
20411
  #
20412
+ # Raises on 500: Processing failed; the provider retries
20413
+ #
19726
20414
  # @param token [String]
19727
20415
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
19728
20416
  # @return [nil] This endpoint returns no content.
@@ -20096,7 +20784,7 @@ module Infrawrench
20096
20784
  #
20097
20785
  # Raises on 404: Not found
20098
20786
  #
20099
- # Raises on 502: GitHub refused the request or was unreachable
20787
+ # Raises on 502: Bad gateway: an upstream service failed
20100
20788
  #
20101
20789
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20102
20790
  # constructed with.
@@ -20120,6 +20808,8 @@ module Infrawrench
20120
20808
  #
20121
20809
  # GET /api/org/{orgId}/pr-checks/runs
20122
20810
  #
20811
+ # Raises on 400: Bad request
20812
+ #
20123
20813
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20124
20814
  # constructed with.
20125
20815
  # @param repository_id [String, nil]
@@ -20175,9 +20865,6 @@ module Infrawrench
20175
20865
  #
20176
20866
  # Raises on 503: A backing service this endpoint depends on is not available
20177
20867
  #
20178
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
20179
- # again and retry; the request itself was well-formed.
20180
- #
20181
20868
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20182
20869
  # constructed with.
20183
20870
  # @param vcpus [String, nil] Minimum vCPUs.
@@ -20255,9 +20942,6 @@ module Infrawrench
20255
20942
  #
20256
20943
  # Raises on 503: A backing service this endpoint depends on is not available
20257
20944
  #
20258
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
20259
- # again and retry; the request itself was well-formed.
20260
- #
20261
20945
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20262
20946
  # constructed with.
20263
20947
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -20300,9 +20984,6 @@ module Infrawrench
20300
20984
  #
20301
20985
  # Raises on 503: A backing service this endpoint depends on is not available
20302
20986
  #
20303
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
20304
- # again and retry; the request itself was well-formed.
20305
- #
20306
20987
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20307
20988
  # constructed with.
20308
20989
  # @param q [String, nil] Free text over SKU, name, series and GPU model.
@@ -20406,6 +21087,8 @@ module Infrawrench
20406
21087
  #
20407
21088
  # Raises on 404: Not found
20408
21089
  #
21090
+ # Raises on 409: Conflict
21091
+ #
20409
21092
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20410
21093
  # constructed with.
20411
21094
  # @param body [Hash, nil] Request body, shaped as `SyntheticProbeCreate`.
@@ -20431,8 +21114,12 @@ module Infrawrench
20431
21114
  #
20432
21115
  # DELETE /api/org/{orgId}/probes/{probeId}
20433
21116
  #
21117
+ # Raises on 400: Bad request
21118
+ #
20434
21119
  # Raises on 404: Not found
20435
21120
  #
21121
+ # Raises on 409: Conflict
21122
+ #
20436
21123
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20437
21124
  # constructed with.
20438
21125
  # @param probe_id [String]
@@ -20547,6 +21234,8 @@ module Infrawrench
20547
21234
  #
20548
21235
  # Raises on 404: Not found
20549
21236
  #
21237
+ # Raises on 409: Conflict
21238
+ #
20550
21239
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20551
21240
  # constructed with.
20552
21241
  # @param probe_id [String]
@@ -21001,6 +21690,8 @@ module Infrawrench
21001
21690
  # 400 when the plugin has no OAuth flow or this server has no client
21002
21691
  # configured for it.
21003
21692
  #
21693
+ # _Requires permission: `accounts:write`._
21694
+ #
21004
21695
  # POST /api/org/{orgId}/provider-oauth/{pluginId}/authorize
21005
21696
  #
21006
21697
  # Raises on 400: Bad request
@@ -21036,6 +21727,8 @@ module Infrawrench
21036
21727
 
21037
21728
  # List query monitors
21038
21729
  #
21730
+ # _Requires permission: `resources:read`._
21731
+ #
21039
21732
  # GET /api/org/{orgId}/query-monitors
21040
21733
  #
21041
21734
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -21054,6 +21747,8 @@ module Infrawrench
21054
21747
 
21055
21748
  # Get one query monitor
21056
21749
  #
21750
+ # _Requires permission: `resources:read`._
21751
+ #
21057
21752
  # GET /api/org/{orgId}/query-monitors/{monitorId}
21058
21753
  #
21059
21754
  # Raises on 404: Not found
@@ -21100,6 +21795,8 @@ module Infrawrench
21100
21795
  # for a query to run against a customer database on a schedule, forever,
21101
21796
  # which is a strictly larger act than running one while watching it.
21102
21797
  #
21798
+ # _Requires permission: `resources:execute`._
21799
+ #
21103
21800
  # POST /api/org/{orgId}/query-monitors
21104
21801
  #
21105
21802
  # Raises on 400: Bad request
@@ -21110,11 +21807,11 @@ module Infrawrench
21110
21807
  #
21111
21808
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21112
21809
  # constructed with.
21113
- # @param body [Hash, nil] Request body, shaped as `QueryMonitorCreate`.
21810
+ # @param body [Hash] Request body, shaped as `QueryMonitorCreate`.
21114
21811
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
21115
21812
  # @return [Hash] Parsed JSON, shaped as `QueryMonitor` — see `sig/infrawrench/sdk.rbs`.
21116
21813
  # @raise [Infrawrench::ApiError] On any non-2xx response.
21117
- def create(org_id: nil, body: nil, request_options: nil)
21814
+ def create(body:, org_id: nil, request_options: nil)
21118
21815
  @transport.request(
21119
21816
  http_method: "POST",
21120
21817
  path: "/api/org/{orgId}/query-monitors",
@@ -21126,6 +21823,8 @@ module Infrawrench
21126
21823
 
21127
21824
  # Delete a query monitor
21128
21825
  #
21826
+ # _Requires permission: `resources:execute`._
21827
+ #
21129
21828
  # DELETE /api/org/{orgId}/query-monitors/{monitorId}
21130
21829
  #
21131
21830
  # Raises on 404: Not found
@@ -21157,6 +21856,8 @@ module Infrawrench
21157
21856
  # fills it from the synced resource either way) when creating a monitor to
21158
21857
  # scope the query to that resource.
21159
21858
  #
21859
+ # _Requires permission: `resources:read`._
21860
+ #
21160
21861
  # GET /api/org/{orgId}/query-monitors/targets
21161
21862
  #
21162
21863
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -21182,18 +21883,20 @@ module Infrawrench
21182
21883
  # the answer says whether it *would* be breaching rather than leaving the
21183
21884
  # reader to compare two numbers.
21184
21885
  #
21886
+ # _Requires permission: `resources:execute`._
21887
+ #
21185
21888
  # POST /api/org/{orgId}/query-monitors/test
21186
21889
  #
21187
21890
  # Raises on 400: Bad request
21188
21891
  #
21189
21892
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21190
21893
  # constructed with.
21191
- # @param body [Hash, nil] Request body, shaped as `QueryMonitorCreate`.
21894
+ # @param body [Hash] Request body, shaped as `Hash`.
21192
21895
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
21193
21896
  # @return [Hash] Parsed JSON, shaped as `QueryMonitorTestResult` — see
21194
21897
  # `sig/infrawrench/sdk.rbs`.
21195
21898
  # @raise [Infrawrench::ApiError] On any non-2xx response.
21196
- def test(org_id: nil, body: nil, request_options: nil)
21899
+ def test(body:, org_id: nil, request_options: nil)
21197
21900
  @transport.request(
21198
21901
  http_method: "POST",
21199
21902
  path: "/api/org/{orgId}/query-monitors/test",
@@ -21211,6 +21914,8 @@ module Infrawrench
21211
21914
  # question, and carrying it forward would fire an alert on the first run of
21212
21915
  # a rule nobody has tested.
21213
21916
  #
21917
+ # _Requires permission: `resources:execute`._
21918
+ #
21214
21919
  # PATCH /api/org/{orgId}/query-monitors/{monitorId}
21215
21920
  #
21216
21921
  # Raises on 400: Bad request
@@ -21222,11 +21927,11 @@ module Infrawrench
21222
21927
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21223
21928
  # constructed with.
21224
21929
  # @param monitor_id [String]
21225
- # @param body [Hash, nil] Request body, shaped as `QueryMonitorUpdate`.
21930
+ # @param body [Hash] Request body, shaped as `QueryMonitorUpdate`.
21226
21931
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
21227
21932
  # @return [Hash] Parsed JSON, shaped as `QueryMonitor` — see `sig/infrawrench/sdk.rbs`.
21228
21933
  # @raise [Infrawrench::ApiError] On any non-2xx response.
21229
- def update(monitor_id:, org_id: nil, body: nil, request_options: nil)
21934
+ def update(monitor_id:, body:, org_id: nil, request_options: nil)
21230
21935
  @transport.request(
21231
21936
  http_method: "PATCH",
21232
21937
  path: "/api/org/{orgId}/query-monitors/{monitorId}",
@@ -21618,7 +22323,7 @@ module Infrawrench
21618
22323
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21619
22324
  # constructed with.
21620
22325
  # @param id [String]
21621
- # @param offset [Integer, nil, nil]
22326
+ # @param offset [Integer, nil]
21622
22327
  # @param limit [Integer, nil]
21623
22328
  # @param sort [String, nil] `<kind>:<key>`.
21624
22329
  # `core:name|type|provider|account|region|status|created|external_id`; `field:<key>` a key
@@ -22090,6 +22795,8 @@ module Infrawrench
22090
22795
  # with the `x-tag-policy-override: true` header if you hold
22091
22796
  # `tag-policy:override`; both blocks and overrides are audit-logged.
22092
22797
  #
22798
+ # Raises on 500: Server error
22799
+ #
22093
22800
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22094
22801
  # constructed with.
22095
22802
  # @param body [Hash] Request body, shaped as `CreateResourceRequest`.
@@ -22142,6 +22849,8 @@ module Infrawrench
22142
22849
  #
22143
22850
  # POST /api/org/{orgId}/resources/create-pricing
22144
22851
  #
22852
+ # Raises on 404: Not found
22853
+ #
22145
22854
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22146
22855
  # constructed with.
22147
22856
  # @param body [Hash] Request body, shaped as `CreatePricingRequest`.
@@ -22345,6 +23054,8 @@ module Infrawrench
22345
23054
  # the field; for `select` fields the optional `option` should be spliced
22346
23055
  # into the options list so the new value can be displayed.
22347
23056
  #
23057
+ # _Requires permission: `resources:write`._
23058
+ #
22348
23059
  # POST /api/org/{orgId}/resources/field-action
22349
23060
  #
22350
23061
  # Raises on 400: Bad request
@@ -22564,6 +23275,37 @@ module Infrawrench
22564
23275
  )
22565
23276
  end
22566
23277
 
23278
+ # Serve a host over a Cloudflare Tunnel
23279
+ #
23280
+ # Points the tunnel's ingress at the host's service, creates the routing DNS
23281
+ # record in `zoneId`, then connects to the host over SSH and installs and
23282
+ # runs cloudflared. A DNS record that could not be created (one may already
23283
+ # exist) is reported and the setup carries on; any other failed step is the
23284
+ # last of `steps`, and `connectCommand` is only sent when every step ran.
23285
+ #
23286
+ # _Requires permission: `resources:write`._
23287
+ #
23288
+ # POST /api/org/{orgId}/resources/tunnel-ssh-attach
23289
+ #
23290
+ # Raises on 400: Bad request
23291
+ #
23292
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
23293
+ # constructed with.
23294
+ # @param body [Hash] Request body, shaped as `TunnelSshAttachRequest`.
23295
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
23296
+ # @return [Hash] Parsed JSON, shaped as `TunnelSshAttachResult` — see
23297
+ # `sig/infrawrench/sdk.rbs`.
23298
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
23299
+ def tunnel_ssh_attach(body:, org_id: nil, request_options: nil)
23300
+ @transport.request(
23301
+ http_method: "POST",
23302
+ path: "/api/org/{orgId}/resources/tunnel-ssh-attach",
23303
+ path_params: { "orgId" => org_id },
23304
+ body: body,
23305
+ request_options: request_options
23306
+ )
23307
+ end
23308
+
22567
23309
  # Update a resource via its plugin
22568
23310
  #
22569
23311
  # Applies the supplied field changes upstream and persists the refreshed
@@ -22572,6 +23314,8 @@ module Infrawrench
22572
23314
  # freeze is in effect (this is also the path that applies right-sizing
22573
23315
  # recommendations); every applied update is audit-logged.
22574
23316
  #
23317
+ # _Requires permission: `resources:write`._
23318
+ #
22575
23319
  # POST /api/org/{orgId}/resources/update
22576
23320
  #
22577
23321
  # Raises on 400: Bad request
@@ -22656,6 +23400,8 @@ module Infrawrench
22656
23400
  # used. Reading takes `resources:read`: the person who can see the
22657
23401
  # infrastructure is the person who will be woken up about it.
22658
23402
  #
23403
+ # _Requires permission: `resources:read`._
23404
+ #
22659
23405
  # GET /api/org/{orgId}/runbooks
22660
23406
  #
22661
23407
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -22674,6 +23420,8 @@ module Infrawrench
22674
23420
 
22675
23421
  # Get one runbook
22676
23422
  #
23423
+ # _Requires permission: `resources:read`._
23424
+ #
22677
23425
  # GET /api/org/{orgId}/runbooks/{runbookId}
22678
23426
  #
22679
23427
  # Raises on 404: Not found
@@ -22711,21 +23459,25 @@ module Infrawrench
22711
23459
  # A closed run refuses updates, and reopening is not offered: a run is a
22712
23460
  # record of what happened. Start another run to record another attempt.
22713
23461
  #
23462
+ # _Requires permission: `resources:read`._
23463
+ #
22714
23464
  # PATCH /api/org/{orgId}/runbooks/runs/{runId}/steps/{stepId}
22715
23465
  #
22716
23466
  # Raises on 400: Bad request
22717
23467
  #
22718
23468
  # Raises on 404: Not found
22719
23469
  #
23470
+ # Raises on 409: Conflict
23471
+ #
22720
23472
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22721
23473
  # constructed with.
22722
23474
  # @param run_id [String]
22723
23475
  # @param step_id [String]
22724
- # @param body [Hash, nil] Request body, shaped as `RunbookStepUpdate`.
23476
+ # @param body [Hash] Request body, shaped as `RunbookStepUpdate`.
22725
23477
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22726
23478
  # @return [Hash] Parsed JSON, shaped as `RunbookRun` — see `sig/infrawrench/sdk.rbs`.
22727
23479
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22728
- def update(run_id:, step_id:, org_id: nil, body: nil, request_options: nil)
23480
+ def update(run_id:, step_id:, body:, org_id: nil, request_options: nil)
22729
23481
  @transport.request(
22730
23482
  http_method: "PATCH",
22731
23483
  path: "/api/org/{orgId}/runbooks/runs/{runId}/steps/{stepId}",
@@ -22755,6 +23507,8 @@ module Infrawrench
22755
23507
  # ended before the checklist did) and quietly marking them done would erase
22756
23508
  # the one thing a postmortem wants to know.
22757
23509
  #
23510
+ # _Requires permission: `resources:read`._
23511
+ #
22758
23512
  # POST /api/org/{orgId}/runbooks/runs/{runId}/close
22759
23513
  #
22760
23514
  # Raises on 400: Bad request
@@ -22766,11 +23520,11 @@ module Infrawrench
22766
23520
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22767
23521
  # constructed with.
22768
23522
  # @param run_id [String]
22769
- # @param body [Hash, nil] Request body, shaped as `RunbookRunClose`.
23523
+ # @param body [Hash] Request body, shaped as `RunbookRunClose`.
22770
23524
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22771
23525
  # @return [Hash] Parsed JSON, shaped as `RunbookRun` — see `sig/infrawrench/sdk.rbs`.
22772
23526
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22773
- def close(run_id:, org_id: nil, body: nil, request_options: nil)
23527
+ def close(run_id:, body:, org_id: nil, request_options: nil)
22774
23528
  @transport.request(
22775
23529
  http_method: "POST",
22776
23530
  path: "/api/org/{orgId}/runbooks/runs/{runId}/close",
@@ -22792,12 +23546,16 @@ module Infrawrench
22792
23546
  # and refusing the second would mean it goes unrecorded rather than not
22793
23547
  # happening.
22794
23548
  #
23549
+ # _Requires permission: `resources:read`._
23550
+ #
22795
23551
  # POST /api/org/{orgId}/runbooks/{runbookId}/runs
22796
23552
  #
22797
23553
  # Raises on 400: Bad request
22798
23554
  #
22799
23555
  # Raises on 404: Not found
22800
23556
  #
23557
+ # Raises on 409: Conflict
23558
+ #
22801
23559
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22802
23560
  # constructed with.
22803
23561
  # @param runbook_id [String]
@@ -22819,6 +23577,8 @@ module Infrawrench
22819
23577
  #
22820
23578
  # Newest first, optionally narrowed to one runbook or one incident.
22821
23579
  #
23580
+ # _Requires permission: `resources:read`._
23581
+ #
22822
23582
  # GET /api/org/{orgId}/runbooks/runs
22823
23583
  #
22824
23584
  # Raises on 400: Bad request
@@ -22843,6 +23603,8 @@ module Infrawrench
22843
23603
 
22844
23604
  # Get one runbook run
22845
23605
  #
23606
+ # _Requires permission: `resources:read`._
23607
+ #
22846
23608
  # GET /api/org/{orgId}/runbooks/runs/{runId}
22847
23609
  #
22848
23610
  # Raises on 404: Not found
@@ -22885,19 +23647,23 @@ module Infrawrench
22885
23647
  # Names are unique within an organization: two runbooks called "Failover" is
22886
23648
  # how the wrong one gets run.
22887
23649
  #
23650
+ # _Requires permission: `org:settings:write`._
23651
+ #
22888
23652
  # POST /api/org/{orgId}/runbooks
22889
23653
  #
22890
23654
  # Raises on 400: Bad request
22891
23655
  #
23656
+ # Raises on 404: Not found
23657
+ #
22892
23658
  # Raises on 409: Conflict
22893
23659
  #
22894
23660
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22895
23661
  # constructed with.
22896
- # @param body [Hash, nil] Request body, shaped as `RunbookCreate`.
23662
+ # @param body [Hash] Request body, shaped as `RunbookCreate`.
22897
23663
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22898
23664
  # @return [Hash] Parsed JSON, shaped as `Runbook` — see `sig/infrawrench/sdk.rbs`.
22899
23665
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22900
- def create(org_id: nil, body: nil, request_options: nil)
23666
+ def create(body:, org_id: nil, request_options: nil)
22901
23667
  @transport.request(
22902
23668
  http_method: "POST",
22903
23669
  path: "/api/org/{orgId}/runbooks",
@@ -22912,6 +23678,8 @@ module Infrawrench
22912
23678
  # Takes its run history with it. To retire a procedure without losing the
22913
23679
  # record of the runs performed against it, set `enabled` to false instead.
22914
23680
  #
23681
+ # _Requires permission: `org:settings:write`._
23682
+ #
22915
23683
  # DELETE /api/org/{orgId}/runbooks/{runbookId}
22916
23684
  #
22917
23685
  # Raises on 404: Not found
@@ -22939,6 +23707,8 @@ module Infrawrench
22939
23707
  # is valid as a whole. A step sent with its `id` keeps its identity, so a
22940
23708
  # run in progress still matches it.
22941
23709
  #
23710
+ # _Requires permission: `org:settings:write`._
23711
+ #
22942
23712
  # PATCH /api/org/{orgId}/runbooks/{runbookId}
22943
23713
  #
22944
23714
  # Raises on 400: Bad request
@@ -22950,11 +23720,11 @@ module Infrawrench
22950
23720
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22951
23721
  # constructed with.
22952
23722
  # @param runbook_id [String]
22953
- # @param body [Hash, nil] Request body, shaped as `RunbookUpdate`.
23723
+ # @param body [Hash] Request body, shaped as `RunbookUpdate`.
22954
23724
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22955
23725
  # @return [Hash] Parsed JSON, shaped as `Runbook` — see `sig/infrawrench/sdk.rbs`.
22956
23726
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22957
- def update(runbook_id:, org_id: nil, body: nil, request_options: nil)
23727
+ def update(runbook_id:, body:, org_id: nil, request_options: nil)
22958
23728
  @transport.request(
22959
23729
  http_method: "PATCH",
22960
23730
  path: "/api/org/{orgId}/runbooks/{runbookId}",
@@ -23161,6 +23931,8 @@ module Infrawrench
23161
23931
  # override, or an end date. The facts of an automatic event (what was done,
23162
23932
  # when, the projection) stay as observed.
23163
23933
  #
23934
+ # _Requires permission: `costs:write`._
23935
+ #
23164
23936
  # PATCH /api/org/{orgId}/savings/events/{id}
23165
23937
  #
23166
23938
  # Raises on 400: Bad request
@@ -23188,6 +23960,8 @@ module Infrawrench
23188
23960
  #
23189
23961
  # Full replace of a manual entry. Automatic events are a 400; use PATCH.
23190
23962
  #
23963
+ # _Requires permission: `costs:write`._
23964
+ #
23191
23965
  # PUT /api/org/{orgId}/savings/events/{id}
23192
23966
  #
23193
23967
  # Raises on 400: Bad request
@@ -23229,6 +24003,8 @@ module Infrawrench
23229
24003
  # Record a saving by hand, with the monthly amount and the day it began.
23230
24004
  # Leaves an org-wide cost annotation on that day. Requires `costs:write`.
23231
24005
  #
24006
+ # _Requires permission: `costs:write`._
24007
+ #
23232
24008
  # POST /api/org/{orgId}/savings/events
23233
24009
  #
23234
24010
  # Raises on 400: Bad request
@@ -23254,6 +24030,8 @@ module Infrawrench
23254
24030
  # Hard delete, together with the cost annotation the event left on the
23255
24031
  # charts.
23256
24032
  #
24033
+ # _Requires permission: `costs:write`._
24034
+ #
23257
24035
  # DELETE /api/org/{orgId}/savings/events/{id}
23258
24036
  #
23259
24037
  # Raises on 404: Not found
@@ -23303,12 +24081,13 @@ module Infrawrench
23303
24081
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
23304
24082
  # constructed with.
23305
24083
  # @param view [String, nil] Apply a saved view, by id or name. Explicit params override it.
23306
- # @param status [String, nil] A status, `open` (Ready or In progress), or `all`.
24084
+ # @param status [String, nil] Status tab. Defaults to `all` (or the view's).
23307
24085
  # @param kind [String, nil] Comma-separated finding kinds.
23308
24086
  # @param provider [String, nil] Comma-separated plugin ids.
23309
24087
  # @param account [String, nil] Comma-separated account ids.
23310
24088
  # @param region [String, nil] Comma-separated regions.
23311
- # @param tag [String, nil] `key` or `key=value`; repeat for more terms (all must match).
24089
+ # @param tag [Array<String>, nil] `key` or `key=value`; repeat for more terms (all must
24090
+ # match).
23312
24091
  # @param min_savings [String, nil] Minimum monthly savings, in each finding's own currency.
23313
24092
  # Unpriced findings never pass.
23314
24093
  # @param detected_from [String, nil] Detected on or after (UTC day).
@@ -23406,6 +24185,8 @@ module Infrawrench
23406
24185
  # The org's horizon, shortfall threshold and baseline window; defaults when
23407
24186
  # never saved.
23408
24187
  #
24188
+ # _Requires permission: `costs:read`._
24189
+ #
23409
24190
  # GET /api/org/{orgId}/savings/settings
23410
24191
  #
23411
24192
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -23427,6 +24208,8 @@ module Infrawrench
23427
24208
  #
23428
24209
  # Requires `costs:write`. Changes every figure in the report, retroactively.
23429
24210
  #
24211
+ # _Requires permission: `costs:write`._
24212
+ #
23430
24213
  # PUT /api/org/{orgId}/savings/settings
23431
24214
  #
23432
24215
  # Raises on 400: Bad request
@@ -23475,6 +24258,8 @@ module Infrawrench
23475
24258
  # as restated billing lands. Days collection has not covered are not
23476
24259
  # accrued. Per-currency throughout; never converted or merged.
23477
24260
  #
24261
+ # _Requires permission: `costs:read`._
24262
+ #
23478
24263
  # GET /api/org/{orgId}/savings/realized
23479
24264
  #
23480
24265
  # Raises on 400: Bad request
@@ -23877,6 +24662,8 @@ module Infrawrench
23877
24662
  # the poller records; days when nothing could be graded are absent rather
23878
24663
  # than zero. Does not seed the default scorecard.
23879
24664
  #
24665
+ # _Requires permission: `resources:read`._
24666
+ #
23880
24667
  # GET /api/org/{orgId}/scorecards/org
23881
24668
  #
23882
24669
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -23898,6 +24685,8 @@ module Infrawrench
23898
24685
  # The daily history alone, without computing the grade: the cheap read for a
23899
24686
  # sparkline.
23900
24687
  #
24688
+ # _Requires permission: `resources:read`._
24689
+ #
23901
24690
  # GET /api/org/{orgId}/scorecards/org/history
23902
24691
  #
23903
24692
  # Raises on 400: Bad request
@@ -23947,6 +24736,8 @@ module Infrawrench
23947
24736
  #
23948
24737
  # Raises on 400: Bad request
23949
24738
  #
24739
+ # Raises on 404: Not found
24740
+ #
23950
24741
  # Raises on 409: Conflict
23951
24742
  #
23952
24743
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -23973,8 +24764,12 @@ module Infrawrench
23973
24764
  #
23974
24765
  # DELETE /api/org/{orgId}/scorecards/{scorecardId}
23975
24766
  #
24767
+ # Raises on 400: Bad request
24768
+ #
23976
24769
  # Raises on 404: Not found
23977
24770
  #
24771
+ # Raises on 409: Conflict
24772
+ #
23978
24773
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
23979
24774
  # constructed with.
23980
24775
  # @param scorecard_id [String]
@@ -24000,8 +24795,12 @@ module Infrawrench
24000
24795
  #
24001
24796
  # POST /api/org/{orgId}/scorecards/{scorecardId}/evaluate
24002
24797
  #
24798
+ # Raises on 400: Bad request
24799
+ #
24003
24800
  # Raises on 404: Not found
24004
24801
  #
24802
+ # Raises on 409: Conflict
24803
+ #
24005
24804
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24006
24805
  # constructed with.
24007
24806
  # @param scorecard_id [String]
@@ -24101,6 +24900,8 @@ module Infrawrench
24101
24900
  #
24102
24901
  # Raises on 400: Bad request
24103
24902
  #
24903
+ # Raises on 403: Forbidden
24904
+ #
24104
24905
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24105
24906
  # constructed with.
24106
24907
  # @param q [String, nil]
@@ -24253,6 +25054,10 @@ module Infrawrench
24253
25054
  #
24254
25055
  # Raises on 409: Conflict
24255
25056
  #
25057
+ # Raises on 423: Blocked by an active change freeze. Retry with the
25058
+ # `x-change-freeze-override: true` header if you hold `freezes:override`;
25059
+ # both blocks and overrides are audit-logged.
25060
+ #
24256
25061
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24257
25062
  # constructed with.
24258
25063
  # @param seat_id [String]
@@ -24345,6 +25150,8 @@ module Infrawrench
24345
25150
  #
24346
25151
  # Raises on 404: Not found
24347
25152
  #
25153
+ # Raises on 409: Conflict
25154
+ #
24348
25155
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24349
25156
  # constructed with.
24350
25157
  # @param service_id [String] Service id or slug.
@@ -24372,8 +25179,12 @@ module Infrawrench
24372
25179
  #
24373
25180
  # DELETE /api/org/{orgId}/services/{serviceId}/members/{resourceId}
24374
25181
  #
25182
+ # Raises on 400: Bad request
25183
+ #
24375
25184
  # Raises on 404: Not found
24376
25185
  #
25186
+ # Raises on 409: Conflict
25187
+ #
24377
25188
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24378
25189
  # constructed with.
24379
25190
  # @param service_id [String] Service id or slug.
@@ -24448,8 +25259,12 @@ module Infrawrench
24448
25259
  #
24449
25260
  # DELETE /api/org/{orgId}/services/{serviceId}
24450
25261
  #
25262
+ # Raises on 400: Bad request
25263
+ #
24451
25264
  # Raises on 404: Not found
24452
25265
  #
25266
+ # Raises on 409: Conflict
25267
+ #
24453
25268
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24454
25269
  # constructed with.
24455
25270
  # @param service_id [String] Service id or slug.
@@ -24839,6 +25654,8 @@ module Infrawrench
24839
25654
  #
24840
25655
  # Raises on 404: Not found
24841
25656
  #
25657
+ # Raises on 409: The host key is new or has changed; trust it and retry
25658
+ #
24842
25659
  # Raises on 500: Server error
24843
25660
  #
24844
25661
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -24942,6 +25759,8 @@ module Infrawrench
24942
25759
  #
24943
25760
  # Raises on 404: Not found
24944
25761
  #
25762
+ # Raises on 409: The host key is new or has changed; trust it and retry
25763
+ #
24945
25764
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24946
25765
  # constructed with.
24947
25766
  # @param body [Hash] Sent as `multipart/form-data`; `file` carries the file bytes.
@@ -24976,6 +25795,8 @@ module Infrawrench
24976
25795
  #
24977
25796
  # POST /api/org/{orgId}/shared-consoles/{consoleId}/invites
24978
25797
  #
25798
+ # Raises on 400: Bad request
25799
+ #
24979
25800
  # Raises on 403: Forbidden
24980
25801
  #
24981
25802
  # Raises on 404: Not found
@@ -25405,6 +26226,8 @@ module Infrawrench
25405
26226
  #
25406
26227
  # DELETE /api/org/{orgId}/sharing/{objectType}/{objectId}
25407
26228
  #
26229
+ # Raises on 400: Bad request
26230
+ #
25408
26231
  # Raises on 403: Forbidden
25409
26232
  #
25410
26233
  # Raises on 404: Not found
@@ -25433,6 +26256,10 @@ module Infrawrench
25433
26256
  #
25434
26257
  # GET /api/org/{orgId}/sharing/{objectType}/{objectId}
25435
26258
  #
26259
+ # Raises on 400: Bad request
26260
+ #
26261
+ # Raises on 403: Forbidden
26262
+ #
25436
26263
  # Raises on 404: Not found
25437
26264
  #
25438
26265
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -25499,6 +26326,8 @@ module Infrawrench
25499
26326
  # drift, everywhere), so a freshly added channel starts receiving alerts
25500
26327
  # without a second step.
25501
26328
  #
26329
+ # _Requires permission: `org:settings:write`._
26330
+ #
25502
26331
  # POST /api/org/{orgId}/slack/channels
25503
26332
  #
25504
26333
  # Raises on 400: Bad request
@@ -25523,6 +26352,8 @@ module Infrawrench
25523
26352
 
25524
26353
  # Disconnect a channel
25525
26354
  #
26355
+ # _Requires permission: `org:settings:write`._
26356
+ #
25526
26357
  # DELETE /api/org/{orgId}/slack/channels/{id}
25527
26358
  #
25528
26359
  # Raises on 404: Not found
@@ -25544,8 +26375,12 @@ module Infrawrench
25544
26375
 
25545
26376
  # Refresh a channel's cached name
25546
26377
  #
26378
+ # _Requires permission: `org:settings:write`._
26379
+ #
25547
26380
  # PATCH /api/org/{orgId}/slack/channels/{id}
25548
26381
  #
26382
+ # Raises on 400: Bad request
26383
+ #
25549
26384
  # Raises on 404: Not found
25550
26385
  #
25551
26386
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -25579,6 +26414,8 @@ module Infrawrench
25579
26414
  # Live call to Slack's conversations.list, for populating a channel picker.
25580
26415
  # Returns non-archived public and private channels visible to the bot.
25581
26416
  #
26417
+ # _Requires permission: `org:settings:write`._
26418
+ #
25582
26419
  # GET
25583
26420
  # /api/org/{orgId}/slack/installations/{installationId}/available-channels
25584
26421
  #
@@ -25604,6 +26441,8 @@ module Infrawrench
25604
26441
  # Stops all delivery to this workspace. The channel routing is retained, so
25605
26442
  # re-installing restores it.
25606
26443
  #
26444
+ # _Requires permission: `org:settings:write`._
26445
+ #
25607
26446
  # DELETE /api/org/{orgId}/slack/installations/{installationId}
25608
26447
  #
25609
26448
  # Raises on 404: Not found
@@ -25648,6 +26487,8 @@ module Infrawrench
25648
26487
  # Slack redirects back to /api/slack/oauth/callback. The install only
25649
26488
  # completes in the browser that opened the link as that user.
25650
26489
  #
26490
+ # _Requires permission: `org:settings:write`._
26491
+ #
25651
26492
  # GET /api/org/{orgId}/slack/install-url
25652
26493
  #
25653
26494
  # Raises on 400: Bad request
@@ -25671,6 +26512,8 @@ module Infrawrench
25671
26512
  # Reports whether the server has a Slack app registered, which workspaces
25672
26513
  # this organization has connected, and which channels alerts are routed to.
25673
26514
  #
26515
+ # _Requires permission: `org:settings:write`._
26516
+ #
25674
26517
  # GET /api/org/{orgId}/slack/status
25675
26518
  #
25676
26519
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -25693,6 +26536,8 @@ module Infrawrench
25693
26536
  # error when nothing could be delivered (`not_in_channel` means the bot
25694
26537
  # needs inviting to a private channel).
25695
26538
  #
26539
+ # _Requires permission: `org:settings:write`._
26540
+ #
25696
26541
  # POST /api/org/{orgId}/slack/test
25697
26542
  #
25698
26543
  # Raises on 400: Bad request
@@ -25824,8 +26669,12 @@ module Infrawrench
25824
26669
  #
25825
26670
  # DELETE /api/org/{orgId}/slos/{sloId}
25826
26671
  #
26672
+ # Raises on 400: Bad request
26673
+ #
25827
26674
  # Raises on 404: Not found
25828
26675
  #
26676
+ # Raises on 409: Conflict
26677
+ #
25829
26678
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
25830
26679
  # constructed with.
25831
26680
  # @param slo_id [String]
@@ -25861,8 +26710,7 @@ module Infrawrench
25861
26710
  # @param slo_id [String]
25862
26711
  # @param body [Hash, nil] Request body, shaped as `SloFreezeRequest`.
25863
26712
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
25864
- # @return [Hash] Parsed JSON, shaped as `SloActiveFreeze & Hash` — see
25865
- # `sig/infrawrench/sdk.rbs`.
26713
+ # @return [Hash] Parsed JSON, shaped as `SloActiveFreeze` — see `sig/infrawrench/sdk.rbs`.
25866
26714
  # @raise [Infrawrench::ApiError] On any non-2xx response.
25867
26715
  def post_org_org_id_slos_slo_id_freeze(slo_id:, org_id: nil, body: nil, request_options: nil)
25868
26716
  @transport.request(
@@ -26243,6 +27091,8 @@ module Infrawrench
26243
27091
  #
26244
27092
  # DELETE /api/org/{orgId}/ssh-keys/{id}
26245
27093
  #
27094
+ # Raises on 404: Not found
27095
+ #
26246
27096
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26247
27097
  # constructed with.
26248
27098
  # @param id [String]
@@ -26312,6 +27162,8 @@ module Infrawrench
26312
27162
  # authority as opening a shell. Imported keys cannot sign (only their public
26313
27163
  # half is stored). Every call is audited.
26314
27164
  #
27165
+ # _Requires permission: `resources:execute`._
27166
+ #
26315
27167
  # POST /api/org/{orgId}/ssh-keys/{id}/sign
26316
27168
  #
26317
27169
  # Raises on 400: Bad request
@@ -26399,6 +27251,8 @@ module Infrawrench
26399
27251
  #
26400
27252
  # Raises on 404: Not found
26401
27253
  #
27254
+ # Raises on 409: The host key is new or has changed; trust it and retry
27255
+ #
26402
27256
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26403
27257
  # constructed with.
26404
27258
  # @param body [Hash] Request body, shaped as `SshTunnelCreateAccountRequest`.
@@ -26424,8 +27278,12 @@ module Infrawrench
26424
27278
  #
26425
27279
  # Raises on 400: Bad request
26426
27280
  #
27281
+ # Raises on 403: Forbidden
27282
+ #
26427
27283
  # Raises on 404: Not found
26428
27284
  #
27285
+ # Raises on 409: The host key is new or has changed; trust it and retry
27286
+ #
26429
27287
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26430
27288
  # constructed with.
26431
27289
  # @param body [Hash] Request body, shaped as `SshExecRequest`.
@@ -26448,8 +27306,12 @@ module Infrawrench
26448
27306
  #
26449
27307
  # POST /api/org/{orgId}/ssh-tunnels/open
26450
27308
  #
27309
+ # Raises on 400: Bad request
27310
+ #
26451
27311
  # Raises on 404: Not found
26452
27312
  #
27313
+ # Raises on 409: The host key is new or has changed; trust it and retry
27314
+ #
26453
27315
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26454
27316
  # constructed with.
26455
27317
  # @param body [Hash] Request body, shaped as `Hash`.
@@ -27116,15 +27978,18 @@ module Infrawrench
27116
27978
  #
27117
27979
  # POST /api/org/{orgId}/team/invitations
27118
27980
  #
27981
+ # Raises on 400: Bad request
27982
+ #
27119
27983
  # Raises on 402: Payment required: the organization's plan does not include
27120
27984
  # this
27121
27985
  #
27122
- # Raises on 403: The role would grant permissions the caller does not hold,
27123
- # or the caller is not an owner and tried to invite an owner
27986
+ # Raises on 403: Forbidden
27124
27987
  #
27125
- # Raises on 409: All seats are in use; retry with addSeat to buy one more
27988
+ # Raises on 404: Not found
27989
+ #
27990
+ # Raises on 409: SeatLimitResponse
27126
27991
  #
27127
- # Raises on 502: Buying the extra seat failed; the invitation was not sent
27992
+ # Raises on 502: Bad gateway: an upstream service failed
27128
27993
  #
27129
27994
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27130
27995
  # constructed with.
@@ -27201,6 +28066,10 @@ module Infrawrench
27201
28066
  #
27202
28067
  # DELETE /api/org/{orgId}/team/members/{id}
27203
28068
  #
28069
+ # Raises on 400: Bad request
28070
+ #
28071
+ # Raises on 403: Forbidden
28072
+ #
27204
28073
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27205
28074
  # constructed with.
27206
28075
  # @param id [String]
@@ -27243,6 +28112,12 @@ module Infrawrench
27243
28112
  #
27244
28113
  # PATCH /api/org/{orgId}/team/members/{id}/role
27245
28114
  #
28115
+ # Raises on 400: Bad request
28116
+ #
28117
+ # Raises on 403: Forbidden
28118
+ #
28119
+ # Raises on 404: Not found
28120
+ #
27246
28121
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27247
28122
  # constructed with.
27248
28123
  # @param id [String]
@@ -27275,6 +28150,10 @@ module Infrawrench
27275
28150
  #
27276
28151
  # POST /api/org/{orgId}/team/roles
27277
28152
  #
28153
+ # Raises on 400: Bad request
28154
+ #
28155
+ # Raises on 403: Forbidden
28156
+ #
27278
28157
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27279
28158
  # constructed with.
27280
28159
  # @param body [Hash] Request body, shaped as `RoleCreateRequest`.
@@ -27301,7 +28180,8 @@ module Infrawrench
27301
28180
  #
27302
28181
  # Raises on 409: Conflict
27303
28182
  #
27304
- # Raises on 422: Bad request
28183
+ # Raises on 422: Unprocessable: the request is well formed but cannot be
28184
+ # acted on
27305
28185
  #
27306
28186
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27307
28187
  # constructed with.
@@ -27345,9 +28225,14 @@ module Infrawrench
27345
28225
  #
27346
28226
  # PATCH /api/org/{orgId}/team/roles/{id}
27347
28227
  #
28228
+ # Raises on 400: Bad request
28229
+ #
28230
+ # Raises on 403: Forbidden
28231
+ #
27348
28232
  # Raises on 404: Not found
27349
28233
  #
27350
- # Raises on 422: Bad request
28234
+ # Raises on 422: Unprocessable: the request is well formed but cannot be
28235
+ # acted on
27351
28236
  #
27352
28237
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27353
28238
  # constructed with.
@@ -27559,8 +28444,7 @@ module Infrawrench
27559
28444
  # constructed with.
27560
28445
  # @param body [Hash] Request body, shaped as `VirtualTagInput`.
27561
28446
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
27562
- # @return [Hash] Parsed JSON, shaped as `VirtualTagStats & Hash` — see
27563
- # `sig/infrawrench/sdk.rbs`.
28447
+ # @return [Hash] Parsed JSON, shaped as `VirtualTagStats` — see `sig/infrawrench/sdk.rbs`.
27564
28448
  # @raise [Infrawrench::ApiError] On any non-2xx response.
27565
28449
  def preview(body:, org_id: nil, request_options: nil)
27566
28450
  @transport.request(
@@ -27640,6 +28524,8 @@ module Infrawrench
27640
28524
  # repository, so it survives rebuilds) or, with `artifactKey: "*"`,
27641
28525
  # everywhere. Idempotent.
27642
28526
  #
28527
+ # _Requires permission: `resources:write`._
28528
+ #
27643
28529
  # POST /api/org/{orgId}/vulnerabilities/dismissals
27644
28530
  #
27645
28531
  # Raises on 400: Bad request
@@ -27665,6 +28551,8 @@ module Infrawrench
27665
28551
  #
27666
28552
  # The key is in the query string because artifact keys contain slashes.
27667
28553
  #
28554
+ # _Requires permission: `resources:write`._
28555
+ #
27668
28556
  # DELETE /api/org/{orgId}/vulnerabilities/dismissals
27669
28557
  #
27670
28558
  # Raises on 400: Bad request
@@ -27702,6 +28590,8 @@ module Infrawrench
27702
28590
  #
27703
28591
  # Defaults when never saved: alerts on, critical only, running only.
27704
28592
  #
28593
+ # _Requires permission: `org:settings:write`._
28594
+ #
27705
28595
  # GET /api/org/{orgId}/vulnerabilities/settings
27706
28596
  #
27707
28597
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -27723,6 +28613,8 @@ module Infrawrench
27723
28613
  #
27724
28614
  # Saving never resets the alert cooldown.
27725
28615
  #
28616
+ # _Requires permission: `org:settings:write`._
28617
+ #
27726
28618
  # PUT /api/org/{orgId}/vulnerabilities/settings
27727
28619
  #
27728
28620
  # Raises on 400: Bad request
@@ -27774,6 +28666,8 @@ module Infrawrench
27774
28666
  # those running there and recompute the counts; `sources` always describes
27775
28667
  # every scanner.
27776
28668
  #
28669
+ # _Requires permission: `resources:read`._
28670
+ #
27777
28671
  # GET /api/org/{orgId}/vulnerabilities
27778
28672
  #
27779
28673
  # Raises on 400: Bad request
@@ -27824,6 +28718,8 @@ module Infrawrench
27824
28718
  # and a screen in an office is exactly what a visitor photographs. The
27825
28719
  # machine driving the wall signs in once.
27826
28720
  #
28721
+ # _Requires permission: `resources:read`._
28722
+ #
27827
28723
  # GET /api/org/{orgId}/wallboard
27828
28724
  #
27829
28725
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28129,6 +29025,8 @@ module Infrawrench
28129
29025
  #
28130
29026
  # DELETE /api/org/{orgId}/workflows/{id}/schedule
28131
29027
  #
29028
+ # Raises on 400: Bad request
29029
+ #
28132
29030
  # Raises on 404: Not found
28133
29031
  #
28134
29032
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28190,6 +29088,8 @@ module Infrawrench
28190
29088
  #
28191
29089
  # Raises on 400: Bad request
28192
29090
  #
29091
+ # Raises on 403: Forbidden
29092
+ #
28193
29093
  # Raises on 404: Not found
28194
29094
  #
28195
29095
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28253,6 +29153,8 @@ module Infrawrench
28253
29153
  #
28254
29154
  # Raises on 400: Bad request
28255
29155
  #
29156
+ # Raises on 403: Forbidden
29157
+ #
28256
29158
  # Raises on 404: Not found
28257
29159
  #
28258
29160
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28289,6 +29191,216 @@ module Infrawrench
28289
29191
  @secrets = WorkflowsSecretsNamespace.new(@transport)
28290
29192
  end
28291
29193
 
29194
+ # Type-check workflow source
29195
+ #
29196
+ # Checks `source` (or the stored source) against the workflow's generated
29197
+ # typings, the same check the editor runs. Needs `secrets:read` as well,
29198
+ # since the typings name the assigned secrets.
29199
+ #
29200
+ # _Requires permission: `workflows:read`._
29201
+ #
29202
+ # POST /api/org/{orgId}/workflows/{id}/check
29203
+ #
29204
+ # Raises on 403: Forbidden
29205
+ #
29206
+ # Raises on 404: Not found
29207
+ #
29208
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29209
+ # constructed with.
29210
+ # @param id [String] Workflow id
29211
+ # @param body [Hash] Request body, shaped as `WorkflowCheckInput`.
29212
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29213
+ # @return [Hash] Parsed JSON, shaped as `WorkflowTypecheckResult` — see
29214
+ # `sig/infrawrench/sdk.rbs`.
29215
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29216
+ def check(id:, body:, org_id: nil, request_options: nil)
29217
+ @transport.request(
29218
+ http_method: "POST",
29219
+ path: "/api/org/{orgId}/workflows/{id}/check",
29220
+ path_params: { "orgId" => org_id, "id" => id },
29221
+ body: body,
29222
+ request_options: request_options
29223
+ )
29224
+ end
29225
+
29226
+ # Create a workflow
29227
+ #
29228
+ # Every field is optional: an empty body creates an enabled, manually
29229
+ # triggered workflow with no source. Assigning secrets (`secretIds`) also
29230
+ # needs `secrets:read`.
29231
+ #
29232
+ # _Requires permission: `workflows:write`._
29233
+ #
29234
+ # POST /api/org/{orgId}/workflows
29235
+ #
29236
+ # Raises on 400: Bad request
29237
+ #
29238
+ # Raises on 403: Forbidden
29239
+ #
29240
+ # Raises on 404: Not found
29241
+ #
29242
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29243
+ # constructed with.
29244
+ # @param body [Hash] Request body, shaped as `WorkflowInput`.
29245
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29246
+ # @return [Hash] Parsed JSON, shaped as `Workflow` — see `sig/infrawrench/sdk.rbs`.
29247
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29248
+ def create(body:, org_id: nil, request_options: nil)
29249
+ @transport.request(
29250
+ http_method: "POST",
29251
+ path: "/api/org/{orgId}/workflows",
29252
+ path_params: { "orgId" => org_id },
29253
+ body: body,
29254
+ request_options: request_options
29255
+ )
29256
+ end
29257
+
29258
+ # Delete a workflow
29259
+ #
29260
+ # _Requires permission: `workflows:write`._
29261
+ #
29262
+ # DELETE /api/org/{orgId}/workflows/{id}
29263
+ #
29264
+ # Raises on 400: Bad request
29265
+ #
29266
+ # Raises on 404: Not found
29267
+ #
29268
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29269
+ # constructed with.
29270
+ # @param id [String] Workflow id
29271
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29272
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
29273
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29274
+ def delete(id:, org_id: nil, request_options: nil)
29275
+ @transport.request(
29276
+ http_method: "DELETE",
29277
+ path: "/api/org/{orgId}/workflows/{id}",
29278
+ path_params: { "orgId" => org_id, "id" => id },
29279
+ request_options: request_options
29280
+ )
29281
+ end
29282
+
29283
+ # Get a workflow
29284
+ #
29285
+ # _Requires permission: `workflows:read`._
29286
+ #
29287
+ # GET /api/org/{orgId}/workflows/{id}
29288
+ #
29289
+ # Raises on 404: Not found
29290
+ #
29291
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29292
+ # constructed with.
29293
+ # @param id [String] Workflow id
29294
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29295
+ # @return [Hash] Parsed JSON, shaped as `Workflow` — see `sig/infrawrench/sdk.rbs`.
29296
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29297
+ def get(id:, org_id: nil, request_options: nil)
29298
+ @transport.request(
29299
+ http_method: "GET",
29300
+ path: "/api/org/{orgId}/workflows/{id}",
29301
+ path_params: { "orgId" => org_id, "id" => id },
29302
+ request_options: request_options
29303
+ )
29304
+ end
29305
+
29306
+ # List workflows
29307
+ #
29308
+ # _Requires permission: `workflows:read`._
29309
+ #
29310
+ # GET /api/org/{orgId}/workflows
29311
+ #
29312
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29313
+ # constructed with.
29314
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29315
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<Workflow>` — see
29316
+ # `sig/infrawrench/sdk.rbs`.
29317
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29318
+ def list(org_id: nil, request_options: nil)
29319
+ @transport.request(
29320
+ http_method: "GET",
29321
+ path: "/api/org/{orgId}/workflows",
29322
+ path_params: { "orgId" => org_id },
29323
+ request_options: request_options
29324
+ )
29325
+ end
29326
+
29327
+ # A workflow's metric values
29328
+ #
29329
+ # _Requires permission: `workflows:read`._
29330
+ #
29331
+ # GET /api/org/{orgId}/workflows/{id}/metrics
29332
+ #
29333
+ # Raises on 404: Not found
29334
+ #
29335
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29336
+ # constructed with.
29337
+ # @param id [String] Workflow id
29338
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29339
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<WorkflowMetric>` — see
29340
+ # `sig/infrawrench/sdk.rbs`.
29341
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29342
+ def metrics(id:, org_id: nil, request_options: nil)
29343
+ @transport.request(
29344
+ http_method: "GET",
29345
+ path: "/api/org/{orgId}/workflows/{id}/metrics",
29346
+ path_params: { "orgId" => org_id, "id" => id },
29347
+ request_options: request_options
29348
+ )
29349
+ end
29350
+
29351
+ # Run a workflow now
29352
+ #
29353
+ # Runs the workflow to completion with the caller's permissions and answers
29354
+ # its outcome. Non-interactive: an `infra.prompt` gets no answer.
29355
+ #
29356
+ # _Requires permission: `workflows:write`._
29357
+ #
29358
+ # POST /api/org/{orgId}/workflows/{id}/run
29359
+ #
29360
+ # Raises on 401: Unauthenticated
29361
+ #
29362
+ # Raises on 404: Not found
29363
+ #
29364
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29365
+ # constructed with.
29366
+ # @param id [String] Workflow id
29367
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29368
+ # @return [Hash] Parsed JSON, shaped as `WorkflowRunOutcome` — see
29369
+ # `sig/infrawrench/sdk.rbs`.
29370
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29371
+ def run(id:, org_id: nil, request_options: nil)
29372
+ @transport.request(
29373
+ http_method: "POST",
29374
+ path: "/api/org/{orgId}/workflows/{id}/run",
29375
+ path_params: { "orgId" => org_id, "id" => id },
29376
+ request_options: request_options
29377
+ )
29378
+ end
29379
+
29380
+ # A workflow's recent runs
29381
+ #
29382
+ # _Requires permission: `workflows:read`._
29383
+ #
29384
+ # GET /api/org/{orgId}/workflows/{id}/runs
29385
+ #
29386
+ # Raises on 404: Not found
29387
+ #
29388
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29389
+ # constructed with.
29390
+ # @param id [String] Workflow id
29391
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29392
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<WorkflowRun>` — see
29393
+ # `sig/infrawrench/sdk.rbs`.
29394
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29395
+ def runs(id:, org_id: nil, request_options: nil)
29396
+ @transport.request(
29397
+ http_method: "GET",
29398
+ path: "/api/org/{orgId}/workflows/{id}/runs",
29399
+ path_params: { "orgId" => org_id, "id" => id },
29400
+ request_options: request_options
29401
+ )
29402
+ end
29403
+
28292
29404
  # Generated infra.d.ts for a workflow
28293
29405
  #
28294
29406
  # The ambient TypeScript declarations workflow source is written against,
@@ -28303,6 +29415,8 @@ module Infrawrench
28303
29415
  #
28304
29416
  # GET /api/org/{orgId}/workflows/{id}/typings
28305
29417
  #
29418
+ # Raises on 403: Forbidden
29419
+ #
28306
29420
  # Raises on 404: Not found
28307
29421
  #
28308
29422
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28323,6 +29437,40 @@ module Infrawrench
28323
29437
  request_options: request_options
28324
29438
  )
28325
29439
  end
29440
+
29441
+ # Update a workflow
29442
+ #
29443
+ # An omitted field keeps its stored value. Changing the source, trigger or
29444
+ # assigned secrets makes automated runs act with the caller's permissions
29445
+ # from then on; when the workflow has secrets assigned, any edit also needs
29446
+ # `secrets:read`.
29447
+ #
29448
+ # _Requires permission: `workflows:write`._
29449
+ #
29450
+ # PUT /api/org/{orgId}/workflows/{id}
29451
+ #
29452
+ # Raises on 400: Bad request
29453
+ #
29454
+ # Raises on 403: Forbidden
29455
+ #
29456
+ # Raises on 404: Not found
29457
+ #
29458
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29459
+ # constructed with.
29460
+ # @param id [String] Workflow id
29461
+ # @param body [Hash] Request body, shaped as `WorkflowInput`.
29462
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29463
+ # @return [Hash] Parsed JSON, shaped as `Workflow` — see `sig/infrawrench/sdk.rbs`.
29464
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29465
+ def update(id:, body:, org_id: nil, request_options: nil)
29466
+ @transport.request(
29467
+ http_method: "PUT",
29468
+ path: "/api/org/{orgId}/workflows/{id}",
29469
+ path_params: { "orgId" => org_id, "id" => id },
29470
+ body: body,
29471
+ request_options: request_options
29472
+ )
29473
+ end
28326
29474
  end
28327
29475
 
28328
29476
  # A client for the Infrawrench API.
@@ -28467,6 +29615,8 @@ module Infrawrench
28467
29615
  attr_reader :expiring
28468
29616
  # @return [ExtendedSupportNamespace] `client.extended_support`
28469
29617
  attr_reader :extended_support
29618
+ # @return [GithubNamespace] `client.github`
29619
+ attr_reader :github
28470
29620
  # @return [GithubIssuesNamespace] `client.github_issues`
28471
29621
  attr_reader :github_issues
28472
29622
  # @return [IacNamespace] `client.iac`
@@ -28686,6 +29836,7 @@ module Infrawrench
28686
29836
  @event_subscriptions = EventSubscriptionsNamespace.new(@transport)
28687
29837
  @expiring = ExpiringNamespace.new(@transport)
28688
29838
  @extended_support = ExtendedSupportNamespace.new(@transport)
29839
+ @github = GithubNamespace.new(@transport)
28689
29840
  @github_issues = GithubIssuesNamespace.new(@transport)
28690
29841
  @iac = IacNamespace.new(@transport)
28691
29842
  @idle_findings = IdleFindingsNamespace.new(@transport)