infrawrench-sdk 1.98.0 → 1.100.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.100.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.100.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,538 @@ 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.ci.accounts`
6088
+ class CiAccountsNamespace
6089
+ # @api private
6090
+ # @param transport [Transport]
6091
+ def initialize(transport)
6092
+ @transport = transport
6093
+ end
6094
+
6095
+ # Run CI, or stop running it, for a connected GitHub account
6096
+ #
6097
+ # _Requires permission: `ci:write`._
6098
+ #
6099
+ # PUT /api/org/{orgId}/ci/accounts/{installationId}
6100
+ #
6101
+ # Raises on 400: Bad request
6102
+ #
6103
+ # Raises on 404: Not found
6104
+ #
6105
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6106
+ # constructed with.
6107
+ # @param installation_id [String]
6108
+ # @param body [Hash] Request body, shaped as `Hash`.
6109
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6110
+ # @return [Hash] Parsed JSON, shaped as `CiAccount` — see `sig/infrawrench/sdk.rbs`.
6111
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6112
+ def update(installation_id:, body:, org_id: nil, request_options: nil)
6113
+ @transport.request(
6114
+ http_method: "PUT",
6115
+ path: "/api/org/{orgId}/ci/accounts/{installationId}",
6116
+ path_params: { "orgId" => org_id, "installationId" => installation_id },
6117
+ body: body,
6118
+ request_options: request_options
6119
+ )
6120
+ end
6121
+ end
6122
+
6123
+ # `client.ci.runs`
6124
+ class CiRunsNamespace
6125
+ # @api private
6126
+ # @param transport [Transport]
6127
+ def initialize(transport)
6128
+ @transport = transport
6129
+ end
6130
+
6131
+ # Approve a fork's pull request commit
6132
+ #
6133
+ # Runs CI for this one commit of a pull request from a fork, without the
6134
+ # organization's or repository's secrets. A later commit needs approving
6135
+ # again.
6136
+ #
6137
+ # _Requires permission: `ci:approve`._
6138
+ #
6139
+ # POST /api/org/{orgId}/ci/runs/{runId}/approve
6140
+ #
6141
+ # Raises on 404: Not found
6142
+ #
6143
+ # Raises on 409: Conflict
6144
+ #
6145
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6146
+ # constructed with.
6147
+ # @param run_id [String]
6148
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6149
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
6150
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6151
+ def approve(run_id:, org_id: nil, request_options: nil)
6152
+ @transport.request(
6153
+ http_method: "POST",
6154
+ path: "/api/org/{orgId}/ci/runs/{runId}/approve",
6155
+ path_params: { "orgId" => org_id, "runId" => run_id },
6156
+ request_options: request_options
6157
+ )
6158
+ end
6159
+
6160
+ # List CI runs, newest first
6161
+ #
6162
+ # _Requires permission: `ci:read`._
6163
+ #
6164
+ # GET /api/org/{orgId}/ci/runs
6165
+ #
6166
+ # Raises on 404: Not found
6167
+ #
6168
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6169
+ # constructed with.
6170
+ # @param status [String, nil]
6171
+ # @param limit [Integer, nil]
6172
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6173
+ # @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
6174
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6175
+ def get(org_id: nil, status: nil, limit: nil, request_options: nil)
6176
+ @transport.request(
6177
+ http_method: "GET",
6178
+ path: "/api/org/{orgId}/ci/runs",
6179
+ path_params: { "orgId" => org_id },
6180
+ query: { "status" => status, "limit" => limit },
6181
+ request_options: request_options
6182
+ )
6183
+ end
6184
+
6185
+ # A CI run, with each job's output once it has finished
6186
+ #
6187
+ # _Requires permission: `ci:read`._
6188
+ #
6189
+ # GET /api/org/{orgId}/ci/runs/{runId}
6190
+ #
6191
+ # Raises on 404: Not found
6192
+ #
6193
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6194
+ # constructed with.
6195
+ # @param run_id [String]
6196
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6197
+ # @return [Hash] Parsed JSON, shaped as `CiRunDetail` — see `sig/infrawrench/sdk.rbs`.
6198
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6199
+ def get_org_org_id_ci_runs_run_id(run_id:, org_id: nil, request_options: nil)
6200
+ @transport.request(
6201
+ http_method: "GET",
6202
+ path: "/api/org/{orgId}/ci/runs/{runId}",
6203
+ path_params: { "orgId" => org_id, "runId" => run_id },
6204
+ request_options: request_options
6205
+ )
6206
+ end
6207
+
6208
+ # Decline to run a fork's pull request commit
6209
+ #
6210
+ # _Requires permission: `ci:approve`._
6211
+ #
6212
+ # POST /api/org/{orgId}/ci/runs/{runId}/reject
6213
+ #
6214
+ # Raises on 404: Not found
6215
+ #
6216
+ # Raises on 409: Conflict
6217
+ #
6218
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6219
+ # constructed with.
6220
+ # @param run_id [String]
6221
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6222
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
6223
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6224
+ def reject(run_id:, org_id: nil, request_options: nil)
6225
+ @transport.request(
6226
+ http_method: "POST",
6227
+ path: "/api/org/{orgId}/ci/runs/{runId}/reject",
6228
+ path_params: { "orgId" => org_id, "runId" => run_id },
6229
+ request_options: request_options
6230
+ )
6231
+ end
6232
+ end
6233
+
6234
+ # `client.ci.values`
6235
+ class CiValuesNamespace
6236
+ # @api private
6237
+ # @param transport [Transport]
6238
+ def initialize(transport)
6239
+ @transport = transport
6240
+ end
6241
+
6242
+ # Remove a CI secret or variable
6243
+ #
6244
+ # _Requires permission: `ci:write`._
6245
+ #
6246
+ # DELETE /api/org/{orgId}/ci/values/{kind}/{name}
6247
+ #
6248
+ # Raises on 400: Bad request
6249
+ #
6250
+ # Raises on 404: Not found
6251
+ #
6252
+ # Raises on 409: Conflict
6253
+ #
6254
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6255
+ # constructed with.
6256
+ # @param kind [String]
6257
+ # @param name [String]
6258
+ # @param installation_id [Integer] The GitHub App installation of an account that runs CI.
6259
+ # @param repo [String, nil] A repository's name, for its own values. Omitted: the whole
6260
+ # account's.
6261
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6262
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
6263
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6264
+ def delete(kind:, name:, installation_id:, org_id: nil, repo: nil, request_options: nil)
6265
+ @transport.request(
6266
+ http_method: "DELETE",
6267
+ path: "/api/org/{orgId}/ci/values/{kind}/{name}",
6268
+ path_params: { "orgId" => org_id, "kind" => kind, "name" => name },
6269
+ query: { "installationId" => installation_id, "repo" => repo },
6270
+ request_options: request_options
6271
+ )
6272
+ end
6273
+
6274
+ # List an account's or a repository's CI secrets and variables
6275
+ #
6276
+ # A repository's own value overrides the account's of the same name.
6277
+ # Pipelines read them as `${{ secrets.NAME }}` and `${{ vars.NAME }}`; a
6278
+ # fork's pull request gets variables but never secrets.
6279
+ #
6280
+ # _Requires permission: `ci:write`._
6281
+ #
6282
+ # GET /api/org/{orgId}/ci/values
6283
+ #
6284
+ # Raises on 400: Bad request
6285
+ #
6286
+ # Raises on 404: Not found
6287
+ #
6288
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6289
+ # constructed with.
6290
+ # @param installation_id [Integer] The GitHub App installation of an account that runs CI.
6291
+ # @param repo [String, nil] A repository's name, for its own values. Omitted: the whole
6292
+ # account's.
6293
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6294
+ # @return [Hash] Parsed JSON, shaped as `CiValues` — see `sig/infrawrench/sdk.rbs`.
6295
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6296
+ def get(installation_id:, org_id: nil, repo: nil, request_options: nil)
6297
+ @transport.request(
6298
+ http_method: "GET",
6299
+ path: "/api/org/{orgId}/ci/values",
6300
+ path_params: { "orgId" => org_id },
6301
+ query: { "installationId" => installation_id, "repo" => repo },
6302
+ request_options: request_options
6303
+ )
6304
+ end
6305
+
6306
+ # Set a CI secret or variable
6307
+ #
6308
+ # _Requires permission: `ci:write`._
6309
+ #
6310
+ # PUT /api/org/{orgId}/ci/values/{kind}/{name}
6311
+ #
6312
+ # Raises on 400: Bad request
6313
+ #
6314
+ # Raises on 404: Not found
6315
+ #
6316
+ # Raises on 409: Conflict
6317
+ #
6318
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6319
+ # constructed with.
6320
+ # @param kind [String]
6321
+ # @param name [String]
6322
+ # @param installation_id [Integer] The GitHub App installation of an account that runs CI.
6323
+ # @param repo [String, nil] A repository's name, for its own values. Omitted: the whole
6324
+ # account's.
6325
+ # @param body [Hash] Request body, shaped as `Hash`.
6326
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6327
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
6328
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6329
+ def update(kind:, name:, installation_id:, body:, org_id: nil, repo: nil, request_options: nil)
6330
+ @transport.request(
6331
+ http_method: "PUT",
6332
+ path: "/api/org/{orgId}/ci/values/{kind}/{name}",
6333
+ path_params: { "orgId" => org_id, "kind" => kind, "name" => name },
6334
+ query: { "installationId" => installation_id, "repo" => repo },
6335
+ body: body,
6336
+ request_options: request_options
6337
+ )
6338
+ end
6339
+ end
6340
+
6341
+ # `client.ci`
6342
+ class CiNamespace
6343
+ # @return [CiAccountsNamespace] `client.ci.accounts`
6344
+ attr_reader :accounts
6345
+ # @return [CiRunsNamespace] `client.ci.runs`
6346
+ attr_reader :runs
6347
+ # @return [CiValuesNamespace] `client.ci.values`
6348
+ attr_reader :values
6349
+
6350
+ # @api private
6351
+ # @param transport [Transport]
6352
+ def initialize(transport)
6353
+ @transport = transport
6354
+ @accounts = CiAccountsNamespace.new(@transport)
6355
+ @runs = CiRunsNamespace.new(@transport)
6356
+ @values = CiValuesNamespace.new(@transport)
6357
+ end
6358
+
6359
+ # CI status and the GitHub accounts that run it
6360
+ #
6361
+ # _Requires permission: `ci:read`._
6362
+ #
6363
+ # GET /api/org/{orgId}/ci
6364
+ #
6365
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6366
+ # constructed with.
6367
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6368
+ # @return [Hash] Parsed JSON, shaped as `CiStatus` — see `sig/infrawrench/sdk.rbs`.
6369
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6370
+ def get(org_id: nil, request_options: nil)
6371
+ @transport.request(
6372
+ http_method: "GET",
6373
+ path: "/api/org/{orgId}/ci",
6374
+ path_params: { "orgId" => org_id },
6375
+ request_options: request_options
6376
+ )
6377
+ end
6378
+
6379
+ # CI usage in a month: runs, compute and cache storage
6380
+ #
6381
+ # _Requires permission: `ci:read`._
6382
+ #
6383
+ # GET /api/org/{orgId}/ci/usage
6384
+ #
6385
+ # Raises on 404: Not found
6386
+ #
6387
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6388
+ # constructed with.
6389
+ # @param month [String, nil]
6390
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6391
+ # @return [Hash] Parsed JSON, shaped as `CiUsage` — see `sig/infrawrench/sdk.rbs`.
6392
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6393
+ def usage(org_id: nil, month: nil, request_options: nil)
6394
+ @transport.request(
6395
+ http_method: "GET",
6396
+ path: "/api/org/{orgId}/ci/usage",
6397
+ path_params: { "orgId" => org_id },
6398
+ query: { "month" => month },
6399
+ request_options: request_options
6400
+ )
6401
+ end
6402
+ end
6403
+
6404
+ # `client.commitments`
6405
+ class CommitmentsNamespace
6406
+ # @api private
6407
+ # @param transport [Transport]
6408
+ def initialize(transport)
6409
+ @transport = transport
6410
+ end
6411
+
6412
+ # Reservations, savings plans and committed-use discounts
6413
+ #
6414
+ # The organization's purchased commitments (reserved instances, savings
6415
+ # plans, committed-use discounts) with three derived readings.
6416
+ #
6417
+ # **Coverage** is a range, not a number: the broad ratio counts every
6418
+ # uncovered usage dollar in the denominator (a lower bound; egress and
6419
+ # per-request charges can never be committed against), the narrow ratio only
6420
+ # uncovered usage in cells where a commitment demonstrably landed (an upper
6421
+ # bound). Accounts whose plugin cannot distinguish charge types are excluded
6422
+ # and listed; a scope where every account is excluded reports unavailable,
6423
+ # not 0%.
6424
+ #
6425
+ # **Utilization** is measured only over days cost data was actually
6426
+ # collected; a collection gap is reported as missing days, never counted as
6427
+ # idle commitment. Unit-denominated commitments (GCP) report null with a
6428
+ # reason, never 0%. Azure's own reported utilization rides on each holding
6429
+ # separately and is never blended with the derived figure.
6430
+ #
6431
+ # **The planner** recommends committing at the p10 floor of daily uncovered
6432
+ # spend, gated on presence, trend, floor and materiality. Savings are quoted
6433
+ # against published "up to" discount rates and marked as such. Nothing is
6434
+ # ever purchased automatically.
6435
+ #
6436
+ # _Requires permission: `costs:read`._
6437
+ #
6438
+ # GET /api/org/{orgId}/commitments
6439
+ #
6440
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6441
+ # constructed with.
6442
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6443
+ # @return [Hash] Parsed JSON, shaped as `CommitmentsFeed` — see `sig/infrawrench/sdk.rbs`.
6444
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
6445
+ def get(org_id: nil, request_options: nil)
6446
+ @transport.request(
6447
+ http_method: "GET",
6448
+ path: "/api/org/{orgId}/commitments",
6449
+ path_params: { "orgId" => org_id },
6450
+ request_options: request_options
6451
+ )
6452
+ end
6453
+ end
5810
6454
 
5811
6455
  # `client.compliance.controls`
5812
6456
  class ComplianceControlsNamespace
@@ -5822,6 +6466,8 @@ module Infrawrench
5822
6466
  #
5823
6467
  # DELETE /api/org/{orgId}/compliance/controls/{frameworkId}/{controlId}
5824
6468
  #
6469
+ # Raises on 400: Bad request
6470
+ #
5825
6471
  # Raises on 404: Not found
5826
6472
  #
5827
6473
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5854,6 +6500,8 @@ module Infrawrench
5854
6500
  #
5855
6501
  # GET /api/org/{orgId}/compliance/controls
5856
6502
  #
6503
+ # Raises on 400: Bad request
6504
+ #
5857
6505
  # Raises on 404: Not found
5858
6506
  #
5859
6507
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5878,6 +6526,8 @@ module Infrawrench
5878
6526
  #
5879
6527
  # GET /api/org/{orgId}/compliance/controls/{frameworkId}/{controlId}
5880
6528
  #
6529
+ # Raises on 400: Bad request
6530
+ #
5881
6531
  # Raises on 404: Not found
5882
6532
  #
5883
6533
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -5989,6 +6639,8 @@ module Infrawrench
5989
6639
  #
5990
6640
  # DELETE /api/org/{orgId}/compliance/schedules/{id}
5991
6641
  #
6642
+ # Raises on 400: Bad request
6643
+ #
5992
6644
  # Raises on 404: Not found
5993
6645
  #
5994
6646
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -6013,6 +6665,8 @@ module Infrawrench
6013
6665
  #
6014
6666
  # GET /api/org/{orgId}/compliance/schedules/{id}
6015
6667
  #
6668
+ # Raises on 400: Bad request
6669
+ #
6016
6670
  # Raises on 404: Not found
6017
6671
  #
6018
6672
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -6192,8 +6846,8 @@ module Infrawrench
6192
6846
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6193
6847
  # constructed with.
6194
6848
  # @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.
6849
+ # @param from [Object, nil]
6850
+ # @param to [Object, nil]
6197
6851
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6198
6852
  # @return [Hash] Parsed JSON, shaped as `ComplianceStatus` — see `sig/infrawrench/sdk.rbs`.
6199
6853
  # @raise [Infrawrench::ApiError] On any non-2xx response.
@@ -6226,8 +6880,8 @@ module Infrawrench
6226
6880
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6227
6881
  # constructed with.
6228
6882
  # @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.
6883
+ # @param from [Object, nil]
6884
+ # @param to [Object, nil]
6231
6885
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6232
6886
  # @return [String] Raw response bytes.
6233
6887
  # @raise [Infrawrench::ApiError] On any non-2xx response.
@@ -6379,6 +7033,8 @@ module Infrawrench
6379
7033
  #
6380
7034
  # Raises on 404: Not found
6381
7035
  #
7036
+ # Raises on 409: The host key is new or has changed; trust it and retry
7037
+ #
6382
7038
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6383
7039
  # constructed with.
6384
7040
  # @param body [Hash] Request body, shaped as `ConnectEnvDeployRequest`.
@@ -6960,6 +7616,10 @@ module Infrawrench
6960
7616
  #
6961
7617
  # POST /api/org/{orgId}/cost-canvases/{id}/conversation
6962
7618
  #
7619
+ # Raises on 400: Bad request
7620
+ #
7621
+ # Raises on 403: Forbidden
7622
+ #
6963
7623
  # Raises on 404: Not found
6964
7624
  #
6965
7625
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -7041,6 +7701,8 @@ module Infrawrench
7041
7701
  #
7042
7702
  # Raises on 400: Bad request
7043
7703
  #
7704
+ # Raises on 403: Forbidden
7705
+ #
7044
7706
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
7045
7707
  # constructed with.
7046
7708
  # @param body [Hash] Request body, shaped as `CostCanvasDraftInput`.
@@ -8834,6 +9496,8 @@ module Infrawrench
8834
9496
  #
8835
9497
  # DELETE /api/org/{orgId}/cost-visibility/{principalKind}/{principalId}
8836
9498
  #
9499
+ # Raises on 400: Bad request
9500
+ #
8837
9501
  # Raises on 403: Forbidden
8838
9502
  #
8839
9503
  # Raises on 404: Not found
@@ -9027,6 +9691,8 @@ module Infrawrench
9027
9691
  # again on a later day, that is a new anomaly and it is detected and alerted
9028
9692
  # on as normal.
9029
9693
  #
9694
+ # _Requires permission: `costs:write`._
9695
+ #
9030
9696
  # POST /api/org/{orgId}/costs/anomalies/{anomalyId}/acknowledge
9031
9697
  #
9032
9698
  # Raises on 400: Bad request
@@ -9174,13 +9840,15 @@ module Infrawrench
9174
9840
  #
9175
9841
  # Raises on 400: Bad request
9176
9842
  #
9843
+ # Raises on 404: Not found
9844
+ #
9177
9845
  # Raises on 409: Conflict
9178
9846
  #
9179
9847
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
9180
9848
  # constructed with.
9181
9849
  # @param body [Hash] Request body, shaped as `CostAnomalySuppressionInput`.
9182
9850
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
9183
- # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression & Hash` — see
9851
+ # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression` — see
9184
9852
  # `sig/infrawrench/sdk.rbs`.
9185
9853
  # @raise [Infrawrench::ApiError] On any non-2xx response.
9186
9854
  def create(body:, org_id: nil, request_options: nil)
@@ -9257,7 +9925,7 @@ module Infrawrench
9257
9925
  # constructed with.
9258
9926
  # @param suppression_id [String]
9259
9927
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
9260
- # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression & Hash` — see
9928
+ # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression` — see
9261
9929
  # `sig/infrawrench/sdk.rbs`.
9262
9930
  # @raise [Infrawrench::ApiError] On any non-2xx response.
9263
9931
  def get_org_org_id_costs_anomaly_suppressions_suppression_id(
@@ -9285,12 +9953,14 @@ module Infrawrench
9285
9953
  #
9286
9954
  # Raises on 404: Not found
9287
9955
  #
9956
+ # Raises on 409: Conflict
9957
+ #
9288
9958
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
9289
9959
  # constructed with.
9290
9960
  # @param suppression_id [String]
9291
9961
  # @param body [Hash] Request body, shaped as `CostAnomalySuppressionInput`.
9292
9962
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
9293
- # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression & Hash` — see
9963
+ # @return [Hash] Parsed JSON, shaped as `CostAnomalySuppression` — see
9294
9964
  # `sig/infrawrench/sdk.rbs`.
9295
9965
  # @raise [Infrawrench::ApiError] On any non-2xx response.
9296
9966
  def update(suppression_id:, body:, org_id: nil, request_options: nil)
@@ -10151,6 +10821,8 @@ module Infrawrench
10151
10821
  # display currency, else EUR), plus the feed's state. Readable whether or
10152
10822
  # not the organization has automatic rates on.
10153
10823
  #
10824
+ # _Requires permission: `costs:read`._
10825
+ #
10154
10826
  # GET /api/org/{orgId}/currency/feed
10155
10827
  #
10156
10828
  # Raises on 400: Bad request
@@ -10205,6 +10877,8 @@ module Infrawrench
10205
10877
  # `rateBasis`) and explains the outcome. `to` defaults to the display
10206
10878
  # currency; `date` defaults to today.
10207
10879
  #
10880
+ # _Requires permission: `costs:read`._
10881
+ #
10208
10882
  # GET /api/org/{orgId}/currency/lookup
10209
10883
  #
10210
10884
  # Raises on 400: Bad request
@@ -10277,7 +10951,7 @@ module Infrawrench
10277
10951
  #
10278
10952
  # POST /api/org/{orgId}/custom-cost-sources/{id}/uploads/{uploadId}/complete
10279
10953
  #
10280
- # Raises on 400: Already complete
10954
+ # Raises on 400: Bad request
10281
10955
  #
10282
10956
  # Raises on 404: Not found
10283
10957
  #
@@ -10868,6 +11542,8 @@ module Infrawrench
10868
11542
  #
10869
11543
  # GET /api/org/{orgId}/dashboards/default/full
10870
11544
  #
11545
+ # Raises on 404: Not found
11546
+ #
10871
11547
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
10872
11548
  # constructed with.
10873
11549
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -11148,6 +11824,8 @@ module Infrawrench
11148
11824
  # auto-routes between raw, 1-minute, and 1-hour rollups based on span: ≤2h
11149
11825
  # raw, ≤7d 1m, >7d 1h.
11150
11826
  #
11827
+ # _Requires permission: `dashboards:read`._
11828
+ #
11151
11829
  # GET /api/org/{orgId}/dashboards/pin/{pinId}/range
11152
11830
  #
11153
11831
  # Raises on 400: Bad request
@@ -11157,8 +11835,8 @@ module Infrawrench
11157
11835
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11158
11836
  # constructed with.
11159
11837
  # @param pin_id [String]
11160
- # @param from_ms [Integer, nil, nil]
11161
- # @param to_ms [Integer, nil, nil]
11838
+ # @param from_ms [Integer, nil]
11839
+ # @param to_ms [Integer, nil]
11162
11840
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
11163
11841
  # @return [Hash] Parsed JSON, shaped as `PinRangeResponse` — see `sig/infrawrench/sdk.rbs`.
11164
11842
  # @raise [Infrawrench::ApiError] On any non-2xx response.
@@ -11272,6 +11950,8 @@ module Infrawrench
11272
11950
 
11273
11951
  # Add a widget (cost graph, report, budget, KPI, text, ...) to a dashboard
11274
11952
  #
11953
+ # _Requires permission: `dashboards:write`._
11954
+ #
11275
11955
  # POST /api/org/{orgId}/dashboards/widgets
11276
11956
  #
11277
11957
  # Raises on 400: Bad request
@@ -11297,6 +11977,8 @@ module Infrawrench
11297
11977
 
11298
11978
  # Remove a widget from a dashboard
11299
11979
  #
11980
+ # _Requires permission: `dashboards:write`._
11981
+ #
11300
11982
  # DELETE /api/org/{orgId}/dashboards/widgets/{widgetId}
11301
11983
  #
11302
11984
  # Raises on 404: Not found
@@ -11323,6 +12005,8 @@ module Infrawrench
11323
12005
  # or report card is a second view onto the same budget or report.
11324
12006
  # Audit-logged.
11325
12007
  #
12008
+ # _Requires permission: `dashboards:write`._
12009
+ #
11326
12010
  # POST /api/org/{orgId}/dashboards/widgets/{widgetId}/duplicate
11327
12011
  #
11328
12012
  # Raises on 400: Bad request
@@ -11347,6 +12031,8 @@ module Infrawrench
11347
12031
 
11348
12032
  # Update a widget's title, config, or layout
11349
12033
  #
12034
+ # _Requires permission: `dashboards:write`._
12035
+ #
11350
12036
  # PATCH /api/org/{orgId}/dashboards/widgets/{widgetId}
11351
12037
  #
11352
12038
  # Raises on 400: Bad request
@@ -11474,6 +12160,8 @@ module Infrawrench
11474
12160
  # preview it. Needs `costs:read`, plus `budgets:read` for a budget source;
11475
12161
  # figures are measured inside the caller's cost visibility scope.
11476
12162
  #
12163
+ # _Requires permission: `dashboards:read`._
12164
+ #
11477
12165
  # POST /api/org/{orgId}/dashboards/kpi
11478
12166
  #
11479
12167
  # Raises on 400: Bad request
@@ -11582,6 +12270,8 @@ module Infrawrench
11582
12270
  #
11583
12271
  # POST /api/org/{orgId}/dashboards/{id}/rename
11584
12272
  #
12273
+ # Raises on 404: Not found
12274
+ #
11585
12275
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11586
12276
  # constructed with.
11587
12277
  # @param id [String]
@@ -11609,6 +12299,8 @@ module Infrawrench
11609
12299
  #
11610
12300
  # POST /api/org/{orgId}/dashboards/{id}/reorder
11611
12301
  #
12302
+ # Raises on 400: Bad request
12303
+ #
11612
12304
  # Raises on 404: Not found
11613
12305
  #
11614
12306
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -11677,6 +12369,8 @@ module Infrawrench
11677
12369
 
11678
12370
  # Pin a workflow's metrics to a dashboard
11679
12371
  #
12372
+ # _Requires permission: `dashboards:write`._
12373
+ #
11680
12374
  # POST /api/org/{orgId}/dashboards/workflow-pin
11681
12375
  #
11682
12376
  # Raises on 404: Not found
@@ -11699,6 +12393,8 @@ module Infrawrench
11699
12393
 
11700
12394
  # Unpin a workflow from a dashboard
11701
12395
  #
12396
+ # _Requires permission: `dashboards:write`._
12397
+ #
11702
12398
  # POST /api/org/{orgId}/dashboards/workflow-unpin
11703
12399
  #
11704
12400
  # Raises on 404: Not found
@@ -11737,7 +12433,9 @@ module Infrawrench
11737
12433
  #
11738
12434
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11739
12435
  # constructed with.
11740
- # @param resource_id [Hash, nil]
12436
+ # @param resource_id [String, nil] Narrow the graph to this resource's direct neighbourhood;
12437
+ # only edges with it at one end, and only the nodes those edges touch. Omit for the whole
12438
+ # org.
11741
12439
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
11742
12440
  # @return [Hash] Parsed JSON, shaped as `DependencyGraphResponse` — see
11743
12441
  # `sig/infrawrench/sdk.rbs`.
@@ -11773,18 +12471,15 @@ module Infrawrench
11773
12471
  #
11774
12472
  # Raises on 400: Bad request
11775
12473
  #
12474
+ # Raises on 403: Forbidden
12475
+ #
11776
12476
  # Raises on 404: Not found
11777
12477
  #
11778
12478
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
11779
12479
  # constructed with.
11780
12480
  # @param id [String]
11781
12481
  # @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.
12482
+ # @param cost_basis [String, nil]
11788
12483
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
11789
12484
  # @return [Hash] Parsed JSON, shaped as `DeploymentCostImpact` — see
11790
12485
  # `sig/infrawrench/sdk.rbs`.
@@ -12034,6 +12729,8 @@ module Infrawrench
12034
12729
  #
12035
12730
  # PATCH /api/org/{orgId}/deployments/triggers/{id}
12036
12731
  #
12732
+ # Raises on 400: Bad request
12733
+ #
12037
12734
  # Raises on 401: Unauthenticated
12038
12735
  #
12039
12736
  # Raises on 403: Forbidden
@@ -12181,6 +12878,8 @@ module Infrawrench
12181
12878
  # Adding an address the organization already has is a no-op that returns the
12182
12879
  # existing entry, so a double submit cannot double-deliver.
12183
12880
  #
12881
+ # _Requires permission: `org:settings:write`._
12882
+ #
12184
12883
  # POST /api/org/{orgId}/digest/recipients
12185
12884
  #
12186
12885
  # Raises on 400: Bad request
@@ -12204,6 +12903,8 @@ module Infrawrench
12204
12903
 
12205
12904
  # Remove a digest email recipient
12206
12905
  #
12906
+ # _Requires permission: `org:settings:write`._
12907
+ #
12207
12908
  # DELETE /api/org/{orgId}/digest/recipients/{recipientId}
12208
12909
  #
12209
12910
  # Raises on 404: Not found
@@ -12230,6 +12931,8 @@ module Infrawrench
12230
12931
  # Addresses need not belong to Infrawrench users; a finance alias is a valid
12231
12932
  # recipient.
12232
12933
  #
12934
+ # _Requires permission: `org:settings:write`._
12935
+ #
12233
12936
  # GET /api/org/{orgId}/digest/recipients
12234
12937
  #
12235
12938
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -12269,6 +12972,8 @@ module Infrawrench
12269
12972
  # The response also carries the outcome of the most recent delivery attempt
12270
12973
  # so a silently failing digest is visible.
12271
12974
  #
12975
+ # _Requires permission: `org:settings:write`._
12976
+ #
12272
12977
  # GET /api/org/{orgId}/digest
12273
12978
  #
12274
12979
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -12293,6 +12998,8 @@ module Infrawrench
12293
12998
  # is never retried automatically. Fails when nothing is routed to receive
12294
12999
  # the digest, or when every destination rejected it.
12295
13000
  #
13001
+ # _Requires permission: `org:settings:write`._
13002
+ #
12296
13003
  # POST /api/org/{orgId}/digest/send
12297
13004
  #
12298
13005
  # Raises on 400: Bad request
@@ -12320,6 +13027,8 @@ module Infrawrench
12320
13027
  # Monday-to-Sunday week. Changing the schedule clears any parked failure
12321
13028
  # state but never replays a week that already went out.
12322
13029
  #
13030
+ # _Requires permission: `org:settings:write`._
13031
+ #
12323
13032
  # PUT /api/org/{orgId}/digest
12324
13033
  #
12325
13034
  # Raises on 400: Bad request
@@ -12884,9 +13593,11 @@ module Infrawrench
12884
13593
  #
12885
13594
  # PUT /api/org/{orgId}/environments/settings
12886
13595
  #
13596
+ # Raises on 400: Bad request
13597
+ #
12887
13598
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
12888
13599
  # constructed with.
12889
- # @param body [Hash, nil] Request body, shaped as `EnvironmentSettings`.
13600
+ # @param body [Hash, nil] Request body, shaped as `Hash`.
12890
13601
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
12891
13602
  # @return [Hash] Parsed JSON, shaped as `EnvironmentSettings` — see
12892
13603
  # `sig/infrawrench/sdk.rbs`.
@@ -13070,6 +13781,8 @@ module Infrawrench
13070
13781
  #
13071
13782
  # Raises on 400: Bad request
13072
13783
  #
13784
+ # Raises on 403: Forbidden
13785
+ #
13073
13786
  # Raises on 404: Not found
13074
13787
  #
13075
13788
  # Raises on 409: The organization is at its live-environment limit
@@ -13200,6 +13913,8 @@ module Infrawrench
13200
13913
  #
13201
13914
  # GET /api/org/{orgId}/event-subscriptions/deliveries
13202
13915
  #
13916
+ # Raises on 400: Bad request
13917
+ #
13203
13918
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13204
13919
  # constructed with.
13205
13920
  # @param subscription_id [String, nil]
@@ -13243,8 +13958,14 @@ module Infrawrench
13243
13958
  #
13244
13959
  # POST /api/org/{orgId}/event-subscriptions/deliveries/{id}/redeliver
13245
13960
  #
13961
+ # Raises on 400: Bad request
13962
+ #
13963
+ # Raises on 403: Forbidden
13964
+ #
13246
13965
  # Raises on 404: Not found
13247
13966
  #
13967
+ # Raises on 409: Conflict
13968
+ #
13248
13969
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13249
13970
  # constructed with.
13250
13971
  # @param id [String]
@@ -13362,6 +14083,8 @@ module Infrawrench
13362
14083
  #
13363
14084
  # Raises on 403: Forbidden
13364
14085
  #
14086
+ # Raises on 404: Not found
14087
+ #
13365
14088
  # Raises on 409: Conflict
13366
14089
  #
13367
14090
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -13441,8 +14164,12 @@ module Infrawrench
13441
14164
  #
13442
14165
  # Raises on 400: Bad request
13443
14166
  #
14167
+ # Raises on 403: Forbidden
14168
+ #
13444
14169
  # Raises on 404: Not found
13445
14170
  #
14171
+ # Raises on 409: Conflict
14172
+ #
13446
14173
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13447
14174
  # constructed with.
13448
14175
  # @param id [String]
@@ -13469,8 +14196,14 @@ module Infrawrench
13469
14196
  #
13470
14197
  # POST /api/org/{orgId}/event-subscriptions/{id}/test
13471
14198
  #
14199
+ # Raises on 400: Bad request
14200
+ #
14201
+ # Raises on 403: Forbidden
14202
+ #
13472
14203
  # Raises on 404: Not found
13473
14204
  #
14205
+ # Raises on 409: Conflict
14206
+ #
13474
14207
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13475
14208
  # constructed with.
13476
14209
  # @param id [String]
@@ -13501,6 +14234,8 @@ module Infrawrench
13501
14234
  #
13502
14235
  # Raises on 404: Not found
13503
14236
  #
14237
+ # Raises on 409: Conflict
14238
+ #
13504
14239
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13505
14240
  # constructed with.
13506
14241
  # @param id [String]
@@ -13729,6 +14464,147 @@ module Infrawrench
13729
14464
  end
13730
14465
  end
13731
14466
 
14467
+ # `client.features`
14468
+ class FeaturesNamespace
14469
+ # @api private
14470
+ # @param transport [Transport]
14471
+ def initialize(transport)
14472
+ @transport = transport
14473
+ end
14474
+
14475
+ # List the organization's rolled-out features
14476
+ #
14477
+ # Features still being rolled out are turned on per organization by a
14478
+ # platform admin. A feature not listed here is refused by its own routes.
14479
+ #
14480
+ # GET /api/org/{orgId}/features
14481
+ #
14482
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14483
+ # constructed with.
14484
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14485
+ # @return [Hash] Parsed JSON, shaped as `OrgFeatureList` — see `sig/infrawrench/sdk.rbs`.
14486
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14487
+ def get(org_id: nil, request_options: nil)
14488
+ @transport.request(
14489
+ http_method: "GET",
14490
+ path: "/api/org/{orgId}/features",
14491
+ path_params: { "orgId" => org_id },
14492
+ request_options: request_options
14493
+ )
14494
+ end
14495
+ end
14496
+
14497
+ # `client.github.installations`
14498
+ class GithubInstallationsNamespace
14499
+ # @api private
14500
+ # @param transport [Transport]
14501
+ def initialize(transport)
14502
+ @transport = transport
14503
+ end
14504
+
14505
+ # Disconnect a GitHub App installation
14506
+ #
14507
+ # Drops the connection here; the app stays installed on GitHub until
14508
+ # uninstalled there.
14509
+ #
14510
+ # _Requires permission: `dashboards:write`._
14511
+ #
14512
+ # DELETE /api/org/{orgId}/github/installations/{installationId}
14513
+ #
14514
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14515
+ # constructed with.
14516
+ # @param installation_id [String]
14517
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14518
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
14519
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14520
+ def delete(installation_id:, org_id: nil, request_options: nil)
14521
+ @transport.request(
14522
+ http_method: "DELETE",
14523
+ path: "/api/org/{orgId}/github/installations/{installationId}",
14524
+ path_params: { "orgId" => org_id, "installationId" => installation_id },
14525
+ request_options: request_options
14526
+ )
14527
+ end
14528
+ end
14529
+
14530
+ # `client.github`
14531
+ class GithubNamespace
14532
+ # @return [GithubInstallationsNamespace] `client.github.installations`
14533
+ attr_reader :installations
14534
+
14535
+ # @api private
14536
+ # @param transport [Transport]
14537
+ def initialize(transport)
14538
+ @transport = transport
14539
+ @installations = GithubInstallationsNamespace.new(@transport)
14540
+ end
14541
+
14542
+ # GitHub App install URL
14543
+ #
14544
+ # _Requires permission: `dashboards:write`._
14545
+ #
14546
+ # GET /api/org/{orgId}/github/install-url
14547
+ #
14548
+ # Raises on 400: Bad request
14549
+ #
14550
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14551
+ # constructed with.
14552
+ # @param return_param [String, nil] The page (under the organization) the install flow
14553
+ # returns to. Anything else: `agents`.
14554
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14555
+ # @return [Hash] Parsed JSON, shaped as `GithubInstallUrl` — see `sig/infrawrench/sdk.rbs`.
14556
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14557
+ def install_url(org_id: nil, return_param: nil, request_options: nil)
14558
+ @transport.request(
14559
+ http_method: "GET",
14560
+ path: "/api/org/{orgId}/github/install-url",
14561
+ path_params: { "orgId" => org_id },
14562
+ query: { "return" => return_param },
14563
+ request_options: request_options
14564
+ )
14565
+ end
14566
+
14567
+ # Repositories the organization's installations can access
14568
+ #
14569
+ # _Requires permission: `dashboards:read`._
14570
+ #
14571
+ # GET /api/org/{orgId}/github/repos
14572
+ #
14573
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14574
+ # constructed with.
14575
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14576
+ # @return [Hash] Parsed JSON, shaped as `GithubAppRepos` — see `sig/infrawrench/sdk.rbs`.
14577
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14578
+ def repos(org_id: nil, request_options: nil)
14579
+ @transport.request(
14580
+ http_method: "GET",
14581
+ path: "/api/org/{orgId}/github/repos",
14582
+ path_params: { "orgId" => org_id },
14583
+ request_options: request_options
14584
+ )
14585
+ end
14586
+
14587
+ # GitHub App connection status
14588
+ #
14589
+ # _Requires permission: `dashboards:read`._
14590
+ #
14591
+ # GET /api/org/{orgId}/github/status
14592
+ #
14593
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14594
+ # constructed with.
14595
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14596
+ # @return [Hash] Parsed JSON, shaped as `GithubAppStatus` — see `sig/infrawrench/sdk.rbs`.
14597
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14598
+ def status(org_id: nil, request_options: nil)
14599
+ @transport.request(
14600
+ http_method: "GET",
14601
+ path: "/api/org/{orgId}/github/status",
14602
+ path_params: { "orgId" => org_id },
14603
+ request_options: request_options
14604
+ )
14605
+ end
14606
+ end
14607
+
13732
14608
  # `client.github_issues.links`
13733
14609
  class GithubIssuesLinksNamespace
13734
14610
  # @api private
@@ -13776,10 +14652,10 @@ module Infrawrench
13776
14652
  #
13777
14653
  # Raises on 400: Bad request
13778
14654
  #
13779
- # Raises on 409: The GitHub App installation needs a permission an owner has
13780
- # not approved yet
14655
+ # Raises on 409: The installation has not accepted the permission this
14656
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13781
14657
  #
13782
- # Raises on 502: GitHub refused the request or was unreachable
14658
+ # Raises on 502: Bad gateway: an upstream service failed
13783
14659
  #
13784
14660
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13785
14661
  # constructed with.
@@ -13816,10 +14692,10 @@ module Infrawrench
13816
14692
  #
13817
14693
  # Raises on 400: Bad request
13818
14694
  #
13819
- # Raises on 409: The GitHub App installation needs a permission an owner has
13820
- # not approved yet
14695
+ # Raises on 409: The installation has not accepted the permission this
14696
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13821
14697
  #
13822
- # Raises on 502: GitHub refused the request or was unreachable
14698
+ # Raises on 502: Bad gateway: an upstream service failed
13823
14699
  #
13824
14700
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13825
14701
  # constructed with.
@@ -13849,10 +14725,10 @@ module Infrawrench
13849
14725
  #
13850
14726
  # Raises on 400: Bad request
13851
14727
  #
13852
- # Raises on 409: The GitHub App installation needs a permission an owner has
13853
- # not approved yet
14728
+ # Raises on 409: The installation has not accepted the permission this
14729
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13854
14730
  #
13855
- # Raises on 502: GitHub refused the request or was unreachable
14731
+ # Raises on 502: Bad gateway: an upstream service failed
13856
14732
  #
13857
14733
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13858
14734
  # constructed with.
@@ -13897,10 +14773,10 @@ module Infrawrench
13897
14773
  #
13898
14774
  # Raises on 400: Bad request
13899
14775
  #
13900
- # Raises on 409: The GitHub App installation needs a permission an owner has
13901
- # not approved yet
14776
+ # Raises on 409: The installation has not accepted the permission this
14777
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13902
14778
  #
13903
- # Raises on 502: GitHub refused the request or was unreachable
14779
+ # Raises on 502: Bad gateway: an upstream service failed
13904
14780
  #
13905
14781
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13906
14782
  # constructed with.
@@ -13930,10 +14806,10 @@ module Infrawrench
13930
14806
  #
13931
14807
  # Raises on 400: Bad request
13932
14808
  #
13933
- # Raises on 409: The GitHub App installation needs a permission an owner has
13934
- # not approved yet
14809
+ # Raises on 409: The installation has not accepted the permission this
14810
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13935
14811
  #
13936
- # Raises on 502: GitHub refused the request or was unreachable
14812
+ # Raises on 502: Bad gateway: an upstream service failed
13937
14813
  #
13938
14814
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13939
14815
  # constructed with.
@@ -13986,10 +14862,10 @@ module Infrawrench
13986
14862
  #
13987
14863
  # Raises on 400: Bad request
13988
14864
  #
13989
- # Raises on 409: The GitHub App installation needs a permission an owner has
13990
- # not approved yet
14865
+ # Raises on 409: The installation has not accepted the permission this
14866
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
13991
14867
  #
13992
- # Raises on 502: GitHub refused the request or was unreachable
14868
+ # Raises on 502: Bad gateway: an upstream service failed
13993
14869
  #
13994
14870
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
13995
14871
  # constructed with.
@@ -14018,10 +14894,10 @@ module Infrawrench
14018
14894
  #
14019
14895
  # Raises on 400: Bad request
14020
14896
  #
14021
- # Raises on 409: The GitHub App installation needs a permission an owner has
14022
- # not approved yet
14897
+ # Raises on 409: The installation has not accepted the permission this
14898
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
14023
14899
  #
14024
- # Raises on 502: GitHub refused the request or was unreachable
14900
+ # Raises on 502: Bad gateway: an upstream service failed
14025
14901
  #
14026
14902
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14027
14903
  # constructed with.
@@ -14075,6 +14951,11 @@ module Infrawrench
14075
14951
  #
14076
14952
  # Raises on 400: Bad request
14077
14953
  #
14954
+ # Raises on 409: The installation has not accepted the permission this
14955
+ # needs. An owner of the GitHub account approves it from `manageUrl`.
14956
+ #
14957
+ # Raises on 502: Bad gateway: an upstream service failed
14958
+ #
14078
14959
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14079
14960
  # constructed with.
14080
14961
  # @param body [Hash] Request body, shaped as `GithubIssueSettingsInput`.
@@ -14109,6 +14990,8 @@ module Infrawrench
14109
14990
  # written. The format version is checked, not assumed: an unsupported
14110
14991
  # version is a 400 rather than a partial read.
14111
14992
  #
14993
+ # _Requires permission: `iac:write`._
14994
+ #
14112
14995
  # POST /api/org/{orgId}/iac/states
14113
14996
  #
14114
14997
  # Raises on 400: Bad request
@@ -14133,6 +15016,8 @@ module Infrawrench
14133
15016
 
14134
15017
  # Delete an uploaded state document
14135
15018
  #
15019
+ # _Requires permission: `iac:write`._
15020
+ #
14136
15021
  # DELETE /api/org/{orgId}/iac/states/{stateId}
14137
15022
  #
14138
15023
  # Raises on 404: Not found
@@ -14159,6 +15044,8 @@ module Infrawrench
14159
15044
  # documents themselves are never stored; only the parsed, redacted
14160
15045
  # projection.
14161
15046
  #
15047
+ # _Requires permission: `iac:read`._
15048
+ #
14162
15049
  # GET /api/org/{orgId}/iac/states
14163
15050
  #
14164
15051
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -14196,6 +15083,8 @@ module Infrawrench
14196
15083
  # "Export to Terraform…". Resources no plugin can express are returned in
14197
15084
  # `unsupported` with a reason, never dropped.
14198
15085
  #
15086
+ # _Requires permission: `iac:read`._
15087
+ #
14199
15088
  # POST /api/org/{orgId}/iac/import-plan
14200
15089
  #
14201
15090
  # Raises on 400: Bad request
@@ -14226,6 +15115,8 @@ module Infrawrench
14226
15115
  # resources carry the ownership and first-seen join that answers "who made
14227
15116
  # this by hand, and when".
14228
15117
  #
15118
+ # _Requires permission: `iac:read`._
15119
+ #
14229
15120
  # GET /api/org/{orgId}/iac/reconciliation
14230
15121
  #
14231
15122
  # Raises on 400: Bad request
@@ -14257,6 +15148,8 @@ module Infrawrench
14257
15148
  # parameter rather than a path segment because composite resource ids
14258
15149
  # contain slashes.
14259
15150
  #
15151
+ # _Requires permission: `iac:read`._
15152
+ #
14260
15153
  # GET /api/org/{orgId}/iac/resource
14261
15154
  #
14262
15155
  # Raises on 400: Bad request
@@ -14423,6 +15316,12 @@ module Infrawrench
14423
15316
  #
14424
15317
  # GET /api/org/{orgId}/incidents
14425
15318
  #
15319
+ # Raises on 400: Bad request
15320
+ #
15321
+ # Raises on 404: Not found
15322
+ #
15323
+ # Raises on 409: Conflict
15324
+ #
14426
15325
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14427
15326
  # constructed with.
14428
15327
  # @param status [String, nil] `open`, `mitigated`, `resolved`, or `all` (the default).
@@ -14486,14 +15385,16 @@ module Infrawrench
14486
15385
  #
14487
15386
  # Raises on 404: Not found
14488
15387
  #
15388
+ # Raises on 409: Conflict
15389
+ #
14489
15390
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14490
15391
  # constructed with.
14491
15392
  # @param incident_id [String]
14492
- # @param body [Hash, nil] Request body, shaped as `IncidentNoteCreate`.
15393
+ # @param body [Hash] Request body, shaped as `IncidentNoteCreate`.
14493
15394
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14494
15395
  # @return [Hash] Parsed JSON, shaped as `IncidentNote` — see `sig/infrawrench/sdk.rbs`.
14495
15396
  # @raise [Infrawrench::ApiError] On any non-2xx response.
14496
- def create(incident_id:, org_id: nil, body: nil, request_options: nil)
15397
+ def create(incident_id:, body:, org_id: nil, request_options: nil)
14497
15398
  @transport.request(
14498
15399
  http_method: "POST",
14499
15400
  path: "/api/org/{orgId}/incidents/{incidentId}/notes",
@@ -14559,13 +15460,17 @@ module Infrawrench
14559
15460
  #
14560
15461
  # Raises on 403: Forbidden
14561
15462
  #
15463
+ # Raises on 404: Not found
15464
+ #
15465
+ # Raises on 409: Conflict
15466
+ #
14562
15467
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14563
15468
  # constructed with.
14564
- # @param body [Hash, nil] Request body, shaped as `IncidentDeclare`.
15469
+ # @param body [Hash] Request body, shaped as `IncidentDeclare`.
14565
15470
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14566
15471
  # @return [Hash] Parsed JSON, shaped as `Incident` — see `sig/infrawrench/sdk.rbs`.
14567
15472
  # @raise [Infrawrench::ApiError] On any non-2xx response.
14568
- def create(org_id: nil, body: nil, request_options: nil)
15473
+ def create(body:, org_id: nil, request_options: nil)
14569
15474
  @transport.request(
14570
15475
  http_method: "POST",
14571
15476
  path: "/api/org/{orgId}/incidents",
@@ -14615,8 +15520,12 @@ module Infrawrench
14615
15520
  #
14616
15521
  # GET /api/org/{orgId}/incidents/{incidentId}/postmortem
14617
15522
  #
15523
+ # Raises on 400: Bad request
15524
+ #
14618
15525
  # Raises on 404: Not found
14619
15526
  #
15527
+ # Raises on 409: Conflict
15528
+ #
14620
15529
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14621
15530
  # constructed with.
14622
15531
  # @param incident_id [String]
@@ -14648,8 +15557,12 @@ module Infrawrench
14648
15557
  #
14649
15558
  # POST /api/org/{orgId}/incidents/{incidentId}/retry-artifacts
14650
15559
  #
15560
+ # Raises on 400: Bad request
15561
+ #
14651
15562
  # Raises on 404: Not found
14652
15563
  #
15564
+ # Raises on 409: Conflict
15565
+ #
14653
15566
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14654
15567
  # constructed with.
14655
15568
  # @param incident_id [String]
@@ -14683,8 +15596,12 @@ module Infrawrench
14683
15596
  #
14684
15597
  # GET /api/org/{orgId}/incidents/{incidentId}/timeline
14685
15598
  #
15599
+ # Raises on 400: Bad request
15600
+ #
14686
15601
  # Raises on 404: Not found
14687
15602
  #
15603
+ # Raises on 409: Conflict
15604
+ #
14688
15605
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14689
15606
  # constructed with.
14690
15607
  # @param incident_id [String]
@@ -14716,14 +15633,16 @@ module Infrawrench
14716
15633
  #
14717
15634
  # Raises on 404: Not found
14718
15635
  #
15636
+ # Raises on 409: Conflict
15637
+ #
14719
15638
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
14720
15639
  # constructed with.
14721
15640
  # @param incident_id [String]
14722
- # @param body [Hash, nil] Request body, shaped as `IncidentPatch`.
15641
+ # @param body [Hash] Request body, shaped as `IncidentPatch`.
14723
15642
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14724
15643
  # @return [Hash] Parsed JSON, shaped as `Incident` — see `sig/infrawrench/sdk.rbs`.
14725
15644
  # @raise [Infrawrench::ApiError] On any non-2xx response.
14726
- def update(incident_id:, org_id: nil, body: nil, request_options: nil)
15645
+ def update(incident_id:, body:, org_id: nil, request_options: nil)
14727
15646
  @transport.request(
14728
15647
  http_method: "PATCH",
14729
15648
  path: "/api/org/{orgId}/incidents/{incidentId}",
@@ -15222,7 +16141,7 @@ module Infrawrench
15222
16141
  #
15223
16142
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15224
16143
  # constructed with.
15225
- # @param managed_account_id [String, nil]
16144
+ # @param managed_account_id [Object, nil]
15226
16145
  # @param status [String, nil]
15227
16146
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
15228
16147
  # @return [Array<Hash>] Parsed JSON, shaped as `Array<InvoiceSummary>` — see
@@ -15493,13 +16412,12 @@ module Infrawrench
15493
16412
  # Raises on 500: Processing failed; the tracker retries
15494
16413
  #
15495
16414
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
15496
- # @return [nil] This endpoint returns no content.
16415
+ # @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
15497
16416
  # @raise [Infrawrench::ApiError] On any non-2xx response.
15498
16417
  def github(request_options: nil)
15499
16418
  @transport.request(
15500
16419
  http_method: "POST",
15501
16420
  path: "/api/issue-webhooks/github",
15502
- accept: :empty,
15503
16421
  request_options: request_options
15504
16422
  )
15505
16423
  end
@@ -15552,7 +16470,7 @@ module Infrawrench
15552
16470
  #
15553
16471
  # Raises on 400: Bad request
15554
16472
  #
15555
- # Raises on 502: Jira refused or was unreachable
16473
+ # Raises on 502: Bad gateway: an upstream service failed
15556
16474
  #
15557
16475
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15558
16476
  # constructed with.
@@ -15590,6 +16508,8 @@ module Infrawrench
15590
16508
  #
15591
16509
  # Raises on 400: Bad request
15592
16510
  #
16511
+ # Raises on 502: Bad gateway: an upstream service failed
16512
+ #
15593
16513
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15594
16514
  # constructed with.
15595
16515
  # @param key [String]
@@ -15616,6 +16536,8 @@ module Infrawrench
15616
16536
  #
15617
16537
  # Raises on 400: Bad request
15618
16538
  #
16539
+ # Raises on 502: Bad gateway: an upstream service failed
16540
+ #
15619
16541
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15620
16542
  # constructed with.
15621
16543
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -15655,7 +16577,7 @@ module Infrawrench
15655
16577
  #
15656
16578
  # Raises on 400: Bad request
15657
16579
  #
15658
- # Raises on 502: Jira refused or was unreachable
16580
+ # Raises on 502: Bad gateway: an upstream service failed
15659
16581
  #
15660
16582
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15661
16583
  # constructed with.
@@ -15683,9 +16605,11 @@ module Infrawrench
15683
16605
  #
15684
16606
  # DELETE /api/org/{orgId}/jira/webhook
15685
16607
  #
16608
+ # Raises on 400: Bad request
16609
+ #
15686
16610
  # Raises on 404: Not found
15687
16611
  #
15688
- # Raises on 502: Jira refused or was unreachable
16612
+ # Raises on 502: Bad gateway: an upstream service failed
15689
16613
  #
15690
16614
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15691
16615
  # constructed with.
@@ -15779,7 +16703,7 @@ module Infrawrench
15779
16703
  #
15780
16704
  # Raises on 400: Bad request
15781
16705
  #
15782
- # Raises on 502: Jira refused to create the issue, or was unreachable
16706
+ # Raises on 502: Bad gateway: an upstream service failed
15783
16707
  #
15784
16708
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15785
16709
  # constructed with.
@@ -15806,12 +16730,13 @@ module Infrawrench
15806
16730
  #
15807
16731
  # Raises on 400: Bad request
15808
16732
  #
16733
+ # Raises on 502: Bad gateway: an upstream service failed
16734
+ #
15809
16735
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15810
16736
  # constructed with.
15811
16737
  # @param body [Hash] Request body, shaped as `JiraIntegrationInput`.
15812
16738
  # @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`.
16739
+ # @return [Hash] Parsed JSON, shaped as `JiraIntegration` — see `sig/infrawrench/sdk.rbs`.
15815
16740
  # @raise [Infrawrench::ApiError] On any non-2xx response.
15816
16741
  def update(body:, org_id: nil, request_options: nil)
15817
16742
  @transport.request(
@@ -15835,7 +16760,7 @@ module Infrawrench
15835
16760
  #
15836
16761
  # Raises on 400: Bad request
15837
16762
  #
15838
- # Raises on 502: Jira rejected the credentials or was unreachable
16763
+ # Raises on 502: Bad gateway: an upstream service failed
15839
16764
  #
15840
16765
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15841
16766
  # constructed with.
@@ -15892,7 +16817,9 @@ module Infrawrench
15892
16817
  #
15893
16818
  # GET /api/org/{orgId}/jit-access/accounts/{accountId}/roles
15894
16819
  #
15895
- # Raises on 502: Provider error
16820
+ # Raises on 400: Bad request
16821
+ #
16822
+ # Raises on 502: JitError
15896
16823
  #
15897
16824
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15898
16825
  # constructed with.
@@ -15921,7 +16848,7 @@ module Infrawrench
15921
16848
  #
15922
16849
  # GET /api/org/{orgId}/jit-access/accounts/{accountId}/scopes
15923
16850
  #
15924
- # Raises on 502: Provider error
16851
+ # Raises on 502: JitError
15925
16852
  #
15926
16853
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
15927
16854
  # constructed with.
@@ -16053,7 +16980,9 @@ module Infrawrench
16053
16980
  #
16054
16981
  # GET /api/org/{orgId}/jit-access/policies/{policyId}/principal
16055
16982
  #
16056
- # Raises on 403: Not a requester
16983
+ # Raises on 401: Unauthenticated
16984
+ #
16985
+ # Raises on 403: JitError
16057
16986
  #
16058
16987
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16059
16988
  # constructed with.
@@ -16077,12 +17006,14 @@ module Infrawrench
16077
17006
  #
16078
17007
  # GET /api/org/{orgId}/jit-access/policies/{policyId}/principals
16079
17008
  #
17009
+ # Raises on 401: Unauthenticated
17010
+ #
16080
17011
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16081
17012
  # constructed with.
16082
17013
  # @param policy_id [String]
16083
17014
  # @param q [String, nil]
16084
17015
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
16085
- # @return [Array<Hash>] Parsed JSON, shaped as `Array<JitPrincipalOption & Hash>` — see
17016
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<JitPrincipalOption>` — see
16086
17017
  # `sig/infrawrench/sdk.rbs`.
16087
17018
  # @raise [Infrawrench::ApiError] On any non-2xx response.
16088
17019
  def principals(policy_id:, org_id: nil, q: nil, request_options: nil)
@@ -16145,11 +17076,15 @@ module Infrawrench
16145
17076
  #
16146
17077
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/approve
16147
17078
  #
16148
- # Raises on 403: Not allowed
17079
+ # Raises on 400: Bad request
17080
+ #
17081
+ # Raises on 401: Unauthenticated
17082
+ #
17083
+ # Raises on 403: JitError
16149
17084
  #
16150
17085
  # Raises on 404: Not found
16151
17086
  #
16152
- # Raises on 409: Already decided, timed out, or not in a state for this
17087
+ # Raises on 409: JitError
16153
17088
  #
16154
17089
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16155
17090
  # constructed with.
@@ -16176,11 +17111,15 @@ module Infrawrench
16176
17111
  #
16177
17112
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/cancel
16178
17113
  #
16179
- # Raises on 403: Not allowed
17114
+ # Raises on 400: Bad request
17115
+ #
17116
+ # Raises on 401: Unauthenticated
17117
+ #
17118
+ # Raises on 403: JitError
16180
17119
  #
16181
17120
  # Raises on 404: Not found
16182
17121
  #
16183
- # Raises on 409: Already decided, timed out, or not in a state for this
17122
+ # Raises on 409: JitError
16184
17123
  #
16185
17124
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16186
17125
  # constructed with.
@@ -16209,11 +17148,13 @@ module Infrawrench
16209
17148
  #
16210
17149
  # POST /api/org/{orgId}/jit-access/requests
16211
17150
  #
16212
- # Raises on 400: Invalid
17151
+ # Raises on 400: JitError
17152
+ #
17153
+ # Raises on 401: Unauthenticated
16213
17154
  #
16214
- # Raises on 403: Not a requester under this policy
17155
+ # Raises on 403: JitError
16215
17156
  #
16216
- # Raises on 409: A pending or active request already covers this
17157
+ # Raises on 409: JitError
16217
17158
  #
16218
17159
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16219
17160
  # constructed with.
@@ -16240,11 +17181,15 @@ module Infrawrench
16240
17181
  #
16241
17182
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/deny
16242
17183
  #
16243
- # Raises on 403: Not allowed
17184
+ # Raises on 400: Bad request
17185
+ #
17186
+ # Raises on 401: Unauthenticated
17187
+ #
17188
+ # Raises on 403: JitError
16244
17189
  #
16245
17190
  # Raises on 404: Not found
16246
17191
  #
16247
- # Raises on 409: Already decided, timed out, or not in a state for this
17192
+ # Raises on 409: JitError
16248
17193
  #
16249
17194
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16250
17195
  # constructed with.
@@ -16273,11 +17218,13 @@ module Infrawrench
16273
17218
  #
16274
17219
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/extend
16275
17220
  #
16276
- # Raises on 400: Beyond the policy maximum
17221
+ # Raises on 400: JitError
17222
+ #
17223
+ # Raises on 401: Unauthenticated
16277
17224
  #
16278
- # Raises on 403: Not an approver
17225
+ # Raises on 403: JitError
16279
17226
  #
16280
- # Raises on 409: Not active
17227
+ # Raises on 409: JitError
16281
17228
  #
16282
17229
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16283
17230
  # constructed with.
@@ -16307,6 +17254,8 @@ module Infrawrench
16307
17254
  #
16308
17255
  # GET /api/org/{orgId}/jit-access/requests/{requestId}
16309
17256
  #
17257
+ # Raises on 401: Unauthenticated
17258
+ #
16310
17259
  # Raises on 404: Not found
16311
17260
  #
16312
17261
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -16334,6 +17283,8 @@ module Infrawrench
16334
17283
  #
16335
17284
  # Raises on 400: Bad request
16336
17285
  #
17286
+ # Raises on 401: Unauthenticated
17287
+ #
16337
17288
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16338
17289
  # constructed with.
16339
17290
  # @param status [String, nil]
@@ -16360,11 +17311,15 @@ module Infrawrench
16360
17311
  #
16361
17312
  # POST /api/org/{orgId}/jit-access/requests/{requestId}/revoke
16362
17313
  #
16363
- # Raises on 403: Not allowed
17314
+ # Raises on 400: Bad request
17315
+ #
17316
+ # Raises on 401: Unauthenticated
17317
+ #
17318
+ # Raises on 403: JitError
16364
17319
  #
16365
17320
  # Raises on 404: Not found
16366
17321
  #
16367
- # Raises on 409: Already decided, timed out, or not in a state for this
17322
+ # Raises on 409: JitError
16368
17323
  #
16369
17324
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16370
17325
  # constructed with.
@@ -16755,6 +17710,8 @@ module Infrawrench
16755
17710
  #
16756
17711
  # GET /api/org/{orgId}/leaked-secrets
16757
17712
  #
17713
+ # Raises on 400: Bad request
17714
+ #
16758
17715
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
16759
17716
  # constructed with.
16760
17717
  # @param status [String, nil] `open` needs rotating; `rotated` was rotated through
@@ -16952,6 +17909,8 @@ module Infrawrench
16952
17909
  #
16953
17910
  # Raises on 400: Bad request
16954
17911
  #
17912
+ # Raises on 403: Forbidden
17913
+ #
16955
17914
  # Raises on 404: Not found
16956
17915
  #
16957
17916
  # Raises on 409: The resource already has an active lease
@@ -17062,6 +18021,8 @@ module Infrawrench
17062
18021
  #
17063
18022
  # Raises on 400: Bad request
17064
18023
  #
18024
+ # Raises on 403: Forbidden
18025
+ #
17065
18026
  # Raises on 404: Not found
17066
18027
  #
17067
18028
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17129,7 +18090,7 @@ module Infrawrench
17129
18090
  #
17130
18091
  # Raises on 400: Bad request
17131
18092
  #
17132
- # Raises on 502: Linear refused or was unreachable
18093
+ # Raises on 502: Bad gateway: an upstream service failed
17133
18094
  #
17134
18095
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17135
18096
  # constructed with.
@@ -17169,7 +18130,7 @@ module Infrawrench
17169
18130
  #
17170
18131
  # Raises on 400: Bad request
17171
18132
  #
17172
- # Raises on 502: Linear refused or was unreachable
18133
+ # Raises on 502: Bad gateway: an upstream service failed
17173
18134
  #
17174
18135
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17175
18136
  # constructed with.
@@ -17197,9 +18158,11 @@ module Infrawrench
17197
18158
  #
17198
18159
  # DELETE /api/org/{orgId}/linear/webhook
17199
18160
  #
18161
+ # Raises on 400: Bad request
18162
+ #
17200
18163
  # Raises on 404: Not found
17201
18164
  #
17202
- # Raises on 502: Linear refused or was unreachable
18165
+ # Raises on 502: Bad gateway: an upstream service failed
17203
18166
  #
17204
18167
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17205
18168
  # constructed with.
@@ -17227,6 +18190,8 @@ module Infrawrench
17227
18190
  #
17228
18191
  # Raises on 400: Bad request
17229
18192
  #
18193
+ # Raises on 502: Bad gateway: an upstream service failed
18194
+ #
17230
18195
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17231
18196
  # constructed with.
17232
18197
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -17316,7 +18281,7 @@ module Infrawrench
17316
18281
  #
17317
18282
  # Raises on 400: Bad request
17318
18283
  #
17319
- # Raises on 502: Linear refused to create the issue, or was unreachable
18284
+ # Raises on 502: Bad gateway: an upstream service failed
17320
18285
  #
17321
18286
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17322
18287
  # constructed with.
@@ -17346,6 +18311,8 @@ module Infrawrench
17346
18311
  #
17347
18312
  # Raises on 400: Bad request
17348
18313
  #
18314
+ # Raises on 502: Bad gateway: an upstream service failed
18315
+ #
17349
18316
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17350
18317
  # constructed with.
17351
18318
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -17369,12 +18336,13 @@ module Infrawrench
17369
18336
  #
17370
18337
  # Raises on 400: Bad request
17371
18338
  #
18339
+ # Raises on 502: Bad gateway: an upstream service failed
18340
+ #
17372
18341
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17373
18342
  # constructed with.
17374
18343
  # @param body [Hash] Request body, shaped as `LinearIntegrationInput`.
17375
18344
  # @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`.
18345
+ # @return [Hash] Parsed JSON, shaped as `LinearIntegration` — see `sig/infrawrench/sdk.rbs`.
17378
18346
  # @raise [Infrawrench::ApiError] On any non-2xx response.
17379
18347
  def update(body:, org_id: nil, request_options: nil)
17380
18348
  @transport.request(
@@ -17398,7 +18366,7 @@ module Infrawrench
17398
18366
  #
17399
18367
  # Raises on 400: Bad request
17400
18368
  #
17401
- # Raises on 502: Linear rejected the key or was unreachable
18369
+ # Raises on 502: Bad gateway: an upstream service failed
17402
18370
  #
17403
18371
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17404
18372
  # constructed with.
@@ -17625,6 +18593,8 @@ module Infrawrench
17625
18593
  #
17626
18594
  # Raises on 400: Bad request
17627
18595
  #
18596
+ # Raises on 403: Forbidden
18597
+ #
17628
18598
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17629
18599
  # constructed with.
17630
18600
  # @param body [Hash] Request body, shaped as `ManagedAccountAssignmentPreviewRequest`.
@@ -17774,6 +18744,8 @@ module Infrawrench
17774
18744
  #
17775
18745
  # Raises on 400: Bad request
17776
18746
  #
18747
+ # Raises on 403: Forbidden
18748
+ #
17777
18749
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
17778
18750
  # constructed with.
17779
18751
  # @param from [String, nil] Defaults, with `to`, to the last full calendar month.
@@ -17842,6 +18814,8 @@ module Infrawrench
17842
18814
  # written. The poller evaluates enabled rules about once a minute and alerts
17843
18815
  # when the condition held for the whole trailing window.
17844
18816
  #
18817
+ # _Requires permission: `metric-alerts:write`._
18818
+ #
17845
18819
  # POST /api/org/{orgId}/metric-alerts
17846
18820
  #
17847
18821
  # Raises on 400: Bad request
@@ -17867,6 +18841,8 @@ module Infrawrench
17867
18841
  # Soft delete. The rule's firing history stays readable via
17868
18842
  # /metric-alerts/events.
17869
18843
  #
18844
+ # _Requires permission: `metric-alerts:write`._
18845
+ #
17870
18846
  # DELETE /api/org/{orgId}/metric-alerts/{id}
17871
18847
  #
17872
18848
  # Raises on 404: Not found
@@ -17888,6 +18864,8 @@ module Infrawrench
17888
18864
 
17889
18865
  # Recent metric alert firings
17890
18866
  #
18867
+ # _Requires permission: `metric-alerts:read`._
18868
+ #
17891
18869
  # GET /api/org/{orgId}/metric-alerts/events
17892
18870
  #
17893
18871
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17910,6 +18888,8 @@ module Infrawrench
17910
18888
 
17911
18889
  # Get a metric alert rule
17912
18890
  #
18891
+ # _Requires permission: `metric-alerts:read`._
18892
+ #
17913
18893
  # GET /api/org/{orgId}/metric-alerts/{id}
17914
18894
  #
17915
18895
  # Raises on 404: Not found
@@ -17931,6 +18911,8 @@ module Infrawrench
17931
18911
 
17932
18912
  # List metric alert rules with live firing status
17933
18913
  #
18914
+ # _Requires permission: `metric-alerts:read`._
18915
+ #
17934
18916
  # GET /api/org/{orgId}/metric-alerts
17935
18917
  #
17936
18918
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17954,6 +18936,8 @@ module Infrawrench
17954
18936
  # narrowed to one plugin and resource type; what the rule builder's metric
17955
18937
  # picker is fed from.
17956
18938
  #
18939
+ # _Requires permission: `metric-alerts:read`._
18940
+ #
17957
18941
  # GET /api/org/{orgId}/metric-alerts/metric-keys
17958
18942
  #
17959
18943
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17976,6 +18960,8 @@ module Infrawrench
17976
18960
 
17977
18961
  # List what the organization's resources offer to select on
17978
18962
  #
18963
+ # _Requires permission: `metric-alerts:read`._
18964
+ #
17979
18965
  # GET /api/org/{orgId}/metric-alerts/selector-options
17980
18966
  #
17981
18967
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -17995,6 +18981,8 @@ module Infrawrench
17995
18981
 
17996
18982
  # Preview which resources a selector matches right now
17997
18983
  #
18984
+ # _Requires permission: `metric-alerts:read`._
18985
+ #
17998
18986
  # GET /api/org/{orgId}/metric-alerts/selector-preview
17999
18987
  #
18000
18988
  # Raises on 400: Bad request
@@ -18033,6 +19021,8 @@ module Infrawrench
18033
19021
 
18034
19022
  # Update a metric alert rule
18035
19023
  #
19024
+ # _Requires permission: `metric-alerts:write`._
19025
+ #
18036
19026
  # PUT /api/org/{orgId}/metric-alerts/{id}
18037
19027
  #
18038
19028
  # Raises on 400: Bad request
@@ -18083,6 +19073,8 @@ module Infrawrench
18083
19073
  #
18084
19074
  # Raises on 400: Bad request
18085
19075
  #
19076
+ # Raises on 403: Forbidden
19077
+ #
18086
19078
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18087
19079
  # constructed with.
18088
19080
  # @param at [String, nil] Centre of the window. Defaults to now.
@@ -18117,6 +19109,8 @@ module Infrawrench
18117
19109
  # channel routes nothing to it on its own. Responds 400 when the URL is not
18118
19110
  # https or its host is not Microsoft-operated.
18119
19111
  #
19112
+ # _Requires permission: `org:settings:write`._
19113
+ #
18120
19114
  # POST /api/org/{orgId}/msteams/webhooks
18121
19115
  #
18122
19116
  # Raises on 400: Bad request
@@ -18139,6 +19133,8 @@ module Infrawrench
18139
19133
 
18140
19134
  # Disconnect a Teams channel
18141
19135
  #
19136
+ # _Requires permission: `org:settings:write`._
19137
+ #
18142
19138
  # DELETE /api/org/{orgId}/msteams/webhooks/{id}
18143
19139
  #
18144
19140
  # Raises on 404: Not found
@@ -18163,6 +19159,8 @@ module Infrawrench
18163
19159
  # The webhook URL is immutable; remove the channel and re-add it to change
18164
19160
  # it.
18165
19161
  #
19162
+ # _Requires permission: `org:settings:write`._
19163
+ #
18166
19164
  # PATCH /api/org/{orgId}/msteams/webhooks/{id}
18167
19165
  #
18168
19166
  # Raises on 400: Bad request
@@ -18204,6 +19202,8 @@ module Infrawrench
18204
19202
  # Returns the Teams channels alerts can be routed to. Which alerts reach
18205
19203
  # each one is decided by /alert-rules. Webhook URLs are never included.
18206
19204
  #
19205
+ # _Requires permission: `org:settings:write`._
19206
+ #
18207
19207
  # GET /api/org/{orgId}/msteams/status
18208
19208
  #
18209
19209
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -18226,6 +19226,8 @@ module Infrawrench
18226
19226
  # Microsoft returned when nothing could be delivered (HTTP 404 usually means
18227
19227
  # the Workflow was deleted or turned off).
18228
19228
  #
19229
+ # _Requires permission: `org:settings:write`._
19230
+ #
18229
19231
  # POST /api/org/{orgId}/msteams/test
18230
19232
  #
18231
19233
  # Raises on 400: Bad request
@@ -18568,7 +19570,7 @@ module Infrawrench
18568
19570
  #
18569
19571
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18570
19572
  # constructed with.
18571
- # @param body [Hash] Request body, shaped as `NetworkFlowSettings`.
19573
+ # @param body [Hash] Request body, shaped as `NetworkFlowSettingsInput`.
18572
19574
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18573
19575
  # @return [Hash] Parsed JSON, shaped as `NetworkFlowSettings` — see
18574
19576
  # `sig/infrawrench/sdk.rbs`.
@@ -18735,19 +19737,23 @@ module Infrawrench
18735
19737
  # cover is audit-logged, which is the control that makes the looser
18736
19738
  # permission safe.
18737
19739
  #
19740
+ # _Requires permission: `team:read`._
19741
+ #
18738
19742
  # POST /api/org/{orgId}/on-call/overrides
18739
19743
  #
18740
19744
  # Raises on 400: Bad request
18741
19745
  #
18742
19746
  # Raises on 404: Not found
18743
19747
  #
19748
+ # Raises on 409: Conflict
19749
+ #
18744
19750
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18745
19751
  # constructed with.
18746
- # @param body [Hash, nil] Request body, shaped as `OnCallOverrideCreate`.
19752
+ # @param body [Hash] Request body, shaped as `OnCallOverrideCreate`.
18747
19753
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18748
19754
  # @return [Hash] Parsed JSON, shaped as `OnCallOverride` — see `sig/infrawrench/sdk.rbs`.
18749
19755
  # @raise [Infrawrench::ApiError] On any non-2xx response.
18750
- def create(org_id: nil, body: nil, request_options: nil)
19756
+ def create(body:, org_id: nil, request_options: nil)
18751
19757
  @transport.request(
18752
19758
  http_method: "POST",
18753
19759
  path: "/api/org/{orgId}/on-call/overrides",
@@ -18759,6 +19765,8 @@ module Infrawrench
18759
19765
 
18760
19766
  # Cancel a cover
18761
19767
  #
19768
+ # _Requires permission: `team:read`._
19769
+ #
18762
19770
  # DELETE /api/org/{orgId}/on-call/overrides/{overrideId}
18763
19771
  #
18764
19772
  # Raises on 404: Not found
@@ -18781,6 +19789,8 @@ module Infrawrench
18781
19789
 
18782
19790
  # List covers
18783
19791
  #
19792
+ # _Requires permission: `team:read`._
19793
+ #
18784
19794
  # GET /api/org/{orgId}/on-call/overrides
18785
19795
  #
18786
19796
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -18817,19 +19827,23 @@ module Infrawrench
18817
19827
  #
18818
19828
  # Writing takes `org:settings:write`: a rotation decides who gets woken up.
18819
19829
  #
19830
+ # _Requires permission: `org:settings:write`._
19831
+ #
18820
19832
  # POST /api/org/{orgId}/on-call/schedules
18821
19833
  #
18822
19834
  # Raises on 400: Bad request
18823
19835
  #
19836
+ # Raises on 404: Not found
19837
+ #
18824
19838
  # Raises on 409: Conflict
18825
19839
  #
18826
19840
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18827
19841
  # constructed with.
18828
- # @param body [Hash, nil] Request body, shaped as `OnCallScheduleCreate`.
19842
+ # @param body [Hash] Request body, shaped as `OnCallScheduleCreate`.
18829
19843
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18830
19844
  # @return [Hash] Parsed JSON, shaped as `OnCallSchedule` — see `sig/infrawrench/sdk.rbs`.
18831
19845
  # @raise [Infrawrench::ApiError] On any non-2xx response.
18832
- def create(org_id: nil, body: nil, request_options: nil)
19846
+ def create(body:, org_id: nil, request_options: nil)
18833
19847
  @transport.request(
18834
19848
  http_method: "POST",
18835
19849
  path: "/api/org/{orgId}/on-call/schedules",
@@ -18844,6 +19858,8 @@ module Infrawrench
18844
19858
  # Takes its covers with it. Routing rules naming it resolve to nobody
18845
19859
  # afterwards.
18846
19860
  #
19861
+ # _Requires permission: `org:settings:write`._
19862
+ #
18847
19863
  # DELETE /api/org/{orgId}/on-call/schedules/{scheduleId}
18848
19864
  #
18849
19865
  # Raises on 404: Not found
@@ -18866,6 +19882,8 @@ module Infrawrench
18866
19882
 
18867
19883
  # List on-call rotations
18868
19884
  #
19885
+ # _Requires permission: `team:read`._
19886
+ #
18869
19887
  # GET /api/org/{orgId}/on-call/schedules
18870
19888
  #
18871
19889
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -18888,6 +19906,8 @@ module Infrawrench
18888
19906
  # The same computation the alert path resolves with, so a preview can never
18889
19907
  # disagree with who actually gets woken up.
18890
19908
  #
19909
+ # _Requires permission: `team:read`._
19910
+ #
18891
19911
  # GET /api/org/{orgId}/on-call/schedules/{scheduleId}/shifts
18892
19912
  #
18893
19913
  # Raises on 400: Bad request
@@ -18918,6 +19938,8 @@ module Infrawrench
18918
19938
  # Sending `participantUserIds` replaces the list wholesale; position is
18919
19939
  # rotation order, so reordering re-plans the future.
18920
19940
  #
19941
+ # _Requires permission: `org:settings:write`._
19942
+ #
18921
19943
  # PATCH /api/org/{orgId}/on-call/schedules/{scheduleId}
18922
19944
  #
18923
19945
  # Raises on 400: Bad request
@@ -18929,11 +19951,11 @@ module Infrawrench
18929
19951
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
18930
19952
  # constructed with.
18931
19953
  # @param schedule_id [String]
18932
- # @param body [Hash, nil] Request body, shaped as `OnCallScheduleUpdate`.
19954
+ # @param body [Hash] Request body, shaped as `OnCallScheduleUpdate`.
18933
19955
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
18934
19956
  # @return [Hash] Parsed JSON, shaped as `OnCallSchedule` — see `sig/infrawrench/sdk.rbs`.
18935
19957
  # @raise [Infrawrench::ApiError] On any non-2xx response.
18936
- def update(schedule_id:, org_id: nil, body: nil, request_options: nil)
19958
+ def update(schedule_id:, body:, org_id: nil, request_options: nil)
18937
19959
  @transport.request(
18938
19960
  http_method: "PATCH",
18939
19961
  path: "/api/org/{orgId}/on-call/schedules/{scheduleId}",
@@ -18965,6 +19987,8 @@ module Infrawrench
18965
19987
  # rotation. Takes `team:read`: knowing who is on call is something every
18966
19988
  # member needs and nobody should have to ask an admin for.
18967
19989
  #
19990
+ # _Requires permission: `team:read`._
19991
+ #
18968
19992
  # GET /api/org/{orgId}/on-call/now
18969
19993
  #
18970
19994
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -19191,7 +20215,7 @@ module Infrawrench
19191
20215
  # constructed with.
19192
20216
  # @param body [Hash, nil] Request body, shaped as `ResourceOwnershipPatch`.
19193
20217
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
19194
- # @return [Hash] Parsed JSON, shaped as `ResourceOwnership & Hash | nil` — see
20218
+ # @return [Hash, nil] Parsed JSON, shaped as `ResourceOwnership | nil` — see
19195
20219
  # `sig/infrawrench/sdk.rbs`.
19196
20220
  # @raise [Infrawrench::ApiError] On any non-2xx response.
19197
20221
  def update(org_id: nil, body: nil, request_options: nil)
@@ -19300,6 +20324,8 @@ module Infrawrench
19300
20324
  # default user. The returned state is the provider's answer, not an
19301
20325
  # assumption.
19302
20326
  #
20327
+ # _Requires permission: `incidents:write`._
20328
+ #
19303
20329
  # POST /api/org/{orgId}/paging-incidents/{id}/acknowledge
19304
20330
  #
19305
20331
  # Raises on 400: Bad request
@@ -19317,10 +20343,9 @@ module Infrawrench
19317
20343
  #
19318
20344
  # Raises on 500: Server error
19319
20345
  #
19320
- # Raises on 503: A backing service this endpoint depends on is not available
20346
+ # Raises on 502: Bad gateway: an upstream service failed
19321
20347
  #
19322
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19323
- # again and retry; the request itself was well-formed.
20348
+ # Raises on 503: A backing service this endpoint depends on is not available
19324
20349
  #
19325
20350
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19326
20351
  # @param id [String]
@@ -19342,6 +20367,8 @@ module Infrawrench
19342
20367
  # by default; `status=all` includes resolved ones. These are a provider's
19343
20368
  # pages, distinct from incidents declared in Infrawrench (`/incidents`).
19344
20369
  #
20370
+ # _Requires permission: `incidents:read`._
20371
+ #
19345
20372
  # GET /api/org/{orgId}/paging-incidents
19346
20373
  #
19347
20374
  # Raises on 400: Bad request
@@ -19359,10 +20386,9 @@ module Infrawrench
19359
20386
  #
19360
20387
  # Raises on 500: Server error
19361
20388
  #
19362
- # Raises on 503: A backing service this endpoint depends on is not available
20389
+ # Raises on 502: Bad gateway: an upstream service failed
19363
20390
  #
19364
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19365
- # again and retry; the request itself was well-formed.
20391
+ # Raises on 503: A backing service this endpoint depends on is not available
19366
20392
  #
19367
20393
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19368
20394
  # constructed with.
@@ -19388,6 +20414,8 @@ module Infrawrench
19388
20414
  # default user. The returned state is the provider's answer, not an
19389
20415
  # assumption.
19390
20416
  #
20417
+ # _Requires permission: `incidents:write`._
20418
+ #
19391
20419
  # POST /api/org/{orgId}/paging-incidents/{id}/resolve
19392
20420
  #
19393
20421
  # Raises on 400: Bad request
@@ -19405,10 +20433,9 @@ module Infrawrench
19405
20433
  #
19406
20434
  # Raises on 500: Server error
19407
20435
  #
19408
- # Raises on 503: A backing service this endpoint depends on is not available
20436
+ # Raises on 502: Bad gateway: an upstream service failed
19409
20437
  #
19410
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19411
- # again and retry; the request itself was well-formed.
20438
+ # Raises on 503: A backing service this endpoint depends on is not available
19412
20439
  #
19413
20440
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19414
20441
  # @param id [String]
@@ -19439,6 +20466,8 @@ module Infrawrench
19439
20466
  # organization member by email; `memberUserId` is null for somebody who is
19440
20467
  # on call upstream but not a member here.
19441
20468
  #
20469
+ # _Requires permission: `team:read`._
20470
+ #
19442
20471
  # GET /api/org/{orgId}/paging-providers/{accountId}/on-call/{sourceId}
19443
20472
  #
19444
20473
  # Raises on 400: Bad request
@@ -19456,10 +20485,9 @@ module Infrawrench
19456
20485
  #
19457
20486
  # Raises on 500: Server error
19458
20487
  #
19459
- # Raises on 503: A backing service this endpoint depends on is not available
20488
+ # Raises on 502: Bad gateway: an upstream service failed
19460
20489
  #
19461
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19462
- # again and retry; the request itself was well-formed.
20490
+ # Raises on 503: A backing service this endpoint depends on is not available
19463
20491
  #
19464
20492
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19465
20493
  # @param account_id [String] A connected account whose plugin can page
@@ -19496,6 +20524,8 @@ module Infrawrench
19496
20524
  # failure is reported per account in `error` rather than failing the
19497
20525
  # response.
19498
20526
  #
20527
+ # _Requires permission: `org:settings:write`._
20528
+ #
19499
20529
  # GET /api/org/{orgId}/paging-providers/destinations
19500
20530
  #
19501
20531
  # Raises on 400: Bad request
@@ -19513,10 +20543,9 @@ module Infrawrench
19513
20543
  #
19514
20544
  # Raises on 500: Server error
19515
20545
  #
19516
- # Raises on 503: A backing service this endpoint depends on is not available
20546
+ # Raises on 502: Bad gateway: an upstream service failed
19517
20547
  #
19518
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19519
- # again and retry; the request itself was well-formed.
20548
+ # Raises on 503: A backing service this endpoint depends on is not available
19520
20549
  #
19521
20550
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19522
20551
  # constructed with.
@@ -19539,6 +20568,8 @@ module Infrawrench
19539
20568
  # and its resolution are one alert upstream. `pendingAction` is set while a
19540
20569
  # send is queued or being retried.
19541
20570
  #
20571
+ # _Requires permission: `org:settings:write`._
20572
+ #
19542
20573
  # GET /api/org/{orgId}/paging-providers/events
19543
20574
  #
19544
20575
  # Raises on 400: Bad request
@@ -19556,10 +20587,9 @@ module Infrawrench
19556
20587
  #
19557
20588
  # Raises on 500: Server error
19558
20589
  #
19559
- # Raises on 503: A backing service this endpoint depends on is not available
20590
+ # Raises on 502: Bad gateway: an upstream service failed
19560
20591
  #
19561
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19562
- # again and retry; the request itself was well-formed.
20592
+ # Raises on 503: A backing service this endpoint depends on is not available
19563
20593
  #
19564
20594
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19565
20595
  # constructed with.
@@ -19580,6 +20610,8 @@ module Infrawrench
19580
20610
 
19581
20611
  # List paging provider accounts and their settings
19582
20612
  #
20613
+ # _Requires permission: `org:settings:write`._
20614
+ #
19583
20615
  # GET /api/org/{orgId}/paging-providers
19584
20616
  #
19585
20617
  # Raises on 400: Bad request
@@ -19597,10 +20629,9 @@ module Infrawrench
19597
20629
  #
19598
20630
  # Raises on 500: Server error
19599
20631
  #
19600
- # Raises on 503: A backing service this endpoint depends on is not available
20632
+ # Raises on 502: Bad gateway: an upstream service failed
19601
20633
  #
19602
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19603
- # again and retry; the request itself was well-formed.
20634
+ # Raises on 503: A backing service this endpoint depends on is not available
19604
20635
  #
19605
20636
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
19606
20637
  # constructed with.
@@ -19624,6 +20655,8 @@ module Infrawrench
19624
20655
  # mirrored incidents. A webhook that cannot be subscribed is reported in
19625
20656
  # `warning` and mirroring falls back to reconciling on a timer.
19626
20657
  #
20658
+ # _Requires permission: `org:settings:write`._
20659
+ #
19627
20660
  # PUT /api/org/{orgId}/paging-providers/{accountId}/settings
19628
20661
  #
19629
20662
  # Raises on 400: Bad request
@@ -19641,19 +20674,18 @@ module Infrawrench
19641
20674
  #
19642
20675
  # Raises on 500: Server error
19643
20676
  #
19644
- # Raises on 503: A backing service this endpoint depends on is not available
20677
+ # Raises on 502: Bad gateway: an upstream service failed
19645
20678
  #
19646
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19647
- # again and retry; the request itself was well-formed.
20679
+ # Raises on 503: A backing service this endpoint depends on is not available
19648
20680
  #
19649
20681
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19650
20682
  # @param account_id [String] A connected account whose plugin can page
19651
- # @param body [Hash, nil] Request body, shaped as `PagingProviderSettingsInput`.
20683
+ # @param body [Hash] Request body, shaped as `PagingProviderSettingsInput`.
19652
20684
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
19653
20685
  # @return [Hash] Parsed JSON, shaped as `PagingProviderSettingsResult` — see
19654
20686
  # `sig/infrawrench/sdk.rbs`.
19655
20687
  # @raise [Infrawrench::ApiError] On any non-2xx response.
19656
- def settings(account_id:, org_id: nil, body: nil, request_options: nil)
20688
+ def settings(account_id:, body:, org_id: nil, request_options: nil)
19657
20689
  @transport.request(
19658
20690
  http_method: "PUT",
19659
20691
  path: "/api/org/{orgId}/paging-providers/{accountId}/settings",
@@ -19665,6 +20697,8 @@ module Infrawrench
19665
20697
 
19666
20698
  # Reconcile an account's incidents now
19667
20699
  #
20700
+ # _Requires permission: `org:settings:write`._
20701
+ #
19668
20702
  # POST /api/org/{orgId}/paging-providers/{accountId}/sync
19669
20703
  #
19670
20704
  # Raises on 400: Bad request
@@ -19682,10 +20716,9 @@ module Infrawrench
19682
20716
  #
19683
20717
  # Raises on 500: Server error
19684
20718
  #
19685
- # Raises on 503: A backing service this endpoint depends on is not available
20719
+ # Raises on 502: Bad gateway: an upstream service failed
19686
20720
  #
19687
- # Raises on reauth: Recent sign-in required. Send the user through sign-in
19688
- # again and retry; the request itself was well-formed.
20721
+ # Raises on 503: A backing service this endpoint depends on is not available
19689
20722
  #
19690
20723
  # @param org_id [String, nil] Defaults to the `org_id` the client was constructed with.
19691
20724
  # @param account_id [String] A connected account whose plugin can page
@@ -19723,6 +20756,8 @@ module Infrawrench
19723
20756
  #
19724
20757
  # Raises on 404: Unknown token
19725
20758
  #
20759
+ # Raises on 500: Processing failed; the provider retries
20760
+ #
19726
20761
  # @param token [String]
19727
20762
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
19728
20763
  # @return [nil] This endpoint returns no content.
@@ -20096,7 +21131,7 @@ module Infrawrench
20096
21131
  #
20097
21132
  # Raises on 404: Not found
20098
21133
  #
20099
- # Raises on 502: GitHub refused the request or was unreachable
21134
+ # Raises on 502: Bad gateway: an upstream service failed
20100
21135
  #
20101
21136
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20102
21137
  # constructed with.
@@ -20120,6 +21155,8 @@ module Infrawrench
20120
21155
  #
20121
21156
  # GET /api/org/{orgId}/pr-checks/runs
20122
21157
  #
21158
+ # Raises on 400: Bad request
21159
+ #
20123
21160
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20124
21161
  # constructed with.
20125
21162
  # @param repository_id [String, nil]
@@ -20175,9 +21212,6 @@ module Infrawrench
20175
21212
  #
20176
21213
  # Raises on 503: A backing service this endpoint depends on is not available
20177
21214
  #
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
21215
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20182
21216
  # constructed with.
20183
21217
  # @param vcpus [String, nil] Minimum vCPUs.
@@ -20255,9 +21289,6 @@ module Infrawrench
20255
21289
  #
20256
21290
  # Raises on 503: A backing service this endpoint depends on is not available
20257
21291
  #
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
21292
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20262
21293
  # constructed with.
20263
21294
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -20300,9 +21331,6 @@ module Infrawrench
20300
21331
  #
20301
21332
  # Raises on 503: A backing service this endpoint depends on is not available
20302
21333
  #
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
21334
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20307
21335
  # constructed with.
20308
21336
  # @param q [String, nil] Free text over SKU, name, series and GPU model.
@@ -20406,6 +21434,8 @@ module Infrawrench
20406
21434
  #
20407
21435
  # Raises on 404: Not found
20408
21436
  #
21437
+ # Raises on 409: Conflict
21438
+ #
20409
21439
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20410
21440
  # constructed with.
20411
21441
  # @param body [Hash, nil] Request body, shaped as `SyntheticProbeCreate`.
@@ -20431,8 +21461,12 @@ module Infrawrench
20431
21461
  #
20432
21462
  # DELETE /api/org/{orgId}/probes/{probeId}
20433
21463
  #
21464
+ # Raises on 400: Bad request
21465
+ #
20434
21466
  # Raises on 404: Not found
20435
21467
  #
21468
+ # Raises on 409: Conflict
21469
+ #
20436
21470
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20437
21471
  # constructed with.
20438
21472
  # @param probe_id [String]
@@ -20547,6 +21581,8 @@ module Infrawrench
20547
21581
  #
20548
21582
  # Raises on 404: Not found
20549
21583
  #
21584
+ # Raises on 409: Conflict
21585
+ #
20550
21586
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
20551
21587
  # constructed with.
20552
21588
  # @param probe_id [String]
@@ -21001,6 +22037,8 @@ module Infrawrench
21001
22037
  # 400 when the plugin has no OAuth flow or this server has no client
21002
22038
  # configured for it.
21003
22039
  #
22040
+ # _Requires permission: `accounts:write`._
22041
+ #
21004
22042
  # POST /api/org/{orgId}/provider-oauth/{pluginId}/authorize
21005
22043
  #
21006
22044
  # Raises on 400: Bad request
@@ -21036,6 +22074,8 @@ module Infrawrench
21036
22074
 
21037
22075
  # List query monitors
21038
22076
  #
22077
+ # _Requires permission: `resources:read`._
22078
+ #
21039
22079
  # GET /api/org/{orgId}/query-monitors
21040
22080
  #
21041
22081
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -21054,6 +22094,8 @@ module Infrawrench
21054
22094
 
21055
22095
  # Get one query monitor
21056
22096
  #
22097
+ # _Requires permission: `resources:read`._
22098
+ #
21057
22099
  # GET /api/org/{orgId}/query-monitors/{monitorId}
21058
22100
  #
21059
22101
  # Raises on 404: Not found
@@ -21100,6 +22142,8 @@ module Infrawrench
21100
22142
  # for a query to run against a customer database on a schedule, forever,
21101
22143
  # which is a strictly larger act than running one while watching it.
21102
22144
  #
22145
+ # _Requires permission: `resources:execute`._
22146
+ #
21103
22147
  # POST /api/org/{orgId}/query-monitors
21104
22148
  #
21105
22149
  # Raises on 400: Bad request
@@ -21110,11 +22154,11 @@ module Infrawrench
21110
22154
  #
21111
22155
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21112
22156
  # constructed with.
21113
- # @param body [Hash, nil] Request body, shaped as `QueryMonitorCreate`.
22157
+ # @param body [Hash] Request body, shaped as `QueryMonitorCreate`.
21114
22158
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
21115
22159
  # @return [Hash] Parsed JSON, shaped as `QueryMonitor` — see `sig/infrawrench/sdk.rbs`.
21116
22160
  # @raise [Infrawrench::ApiError] On any non-2xx response.
21117
- def create(org_id: nil, body: nil, request_options: nil)
22161
+ def create(body:, org_id: nil, request_options: nil)
21118
22162
  @transport.request(
21119
22163
  http_method: "POST",
21120
22164
  path: "/api/org/{orgId}/query-monitors",
@@ -21126,6 +22170,8 @@ module Infrawrench
21126
22170
 
21127
22171
  # Delete a query monitor
21128
22172
  #
22173
+ # _Requires permission: `resources:execute`._
22174
+ #
21129
22175
  # DELETE /api/org/{orgId}/query-monitors/{monitorId}
21130
22176
  #
21131
22177
  # Raises on 404: Not found
@@ -21157,6 +22203,8 @@ module Infrawrench
21157
22203
  # fills it from the synced resource either way) when creating a monitor to
21158
22204
  # scope the query to that resource.
21159
22205
  #
22206
+ # _Requires permission: `resources:read`._
22207
+ #
21160
22208
  # GET /api/org/{orgId}/query-monitors/targets
21161
22209
  #
21162
22210
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -21182,18 +22230,20 @@ module Infrawrench
21182
22230
  # the answer says whether it *would* be breaching rather than leaving the
21183
22231
  # reader to compare two numbers.
21184
22232
  #
22233
+ # _Requires permission: `resources:execute`._
22234
+ #
21185
22235
  # POST /api/org/{orgId}/query-monitors/test
21186
22236
  #
21187
22237
  # Raises on 400: Bad request
21188
22238
  #
21189
22239
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21190
22240
  # constructed with.
21191
- # @param body [Hash, nil] Request body, shaped as `QueryMonitorCreate`.
22241
+ # @param body [Hash] Request body, shaped as `Hash`.
21192
22242
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
21193
22243
  # @return [Hash] Parsed JSON, shaped as `QueryMonitorTestResult` — see
21194
22244
  # `sig/infrawrench/sdk.rbs`.
21195
22245
  # @raise [Infrawrench::ApiError] On any non-2xx response.
21196
- def test(org_id: nil, body: nil, request_options: nil)
22246
+ def test(body:, org_id: nil, request_options: nil)
21197
22247
  @transport.request(
21198
22248
  http_method: "POST",
21199
22249
  path: "/api/org/{orgId}/query-monitors/test",
@@ -21211,6 +22261,8 @@ module Infrawrench
21211
22261
  # question, and carrying it forward would fire an alert on the first run of
21212
22262
  # a rule nobody has tested.
21213
22263
  #
22264
+ # _Requires permission: `resources:execute`._
22265
+ #
21214
22266
  # PATCH /api/org/{orgId}/query-monitors/{monitorId}
21215
22267
  #
21216
22268
  # Raises on 400: Bad request
@@ -21222,11 +22274,11 @@ module Infrawrench
21222
22274
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21223
22275
  # constructed with.
21224
22276
  # @param monitor_id [String]
21225
- # @param body [Hash, nil] Request body, shaped as `QueryMonitorUpdate`.
22277
+ # @param body [Hash] Request body, shaped as `QueryMonitorUpdate`.
21226
22278
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
21227
22279
  # @return [Hash] Parsed JSON, shaped as `QueryMonitor` — see `sig/infrawrench/sdk.rbs`.
21228
22280
  # @raise [Infrawrench::ApiError] On any non-2xx response.
21229
- def update(monitor_id:, org_id: nil, body: nil, request_options: nil)
22281
+ def update(monitor_id:, body:, org_id: nil, request_options: nil)
21230
22282
  @transport.request(
21231
22283
  http_method: "PATCH",
21232
22284
  path: "/api/org/{orgId}/query-monitors/{monitorId}",
@@ -21618,7 +22670,7 @@ module Infrawrench
21618
22670
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
21619
22671
  # constructed with.
21620
22672
  # @param id [String]
21621
- # @param offset [Integer, nil, nil]
22673
+ # @param offset [Integer, nil]
21622
22674
  # @param limit [Integer, nil]
21623
22675
  # @param sort [String, nil] `<kind>:<key>`.
21624
22676
  # `core:name|type|provider|account|region|status|created|external_id`; `field:<key>` a key
@@ -22090,6 +23142,8 @@ module Infrawrench
22090
23142
  # with the `x-tag-policy-override: true` header if you hold
22091
23143
  # `tag-policy:override`; both blocks and overrides are audit-logged.
22092
23144
  #
23145
+ # Raises on 500: Server error
23146
+ #
22093
23147
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22094
23148
  # constructed with.
22095
23149
  # @param body [Hash] Request body, shaped as `CreateResourceRequest`.
@@ -22142,6 +23196,8 @@ module Infrawrench
22142
23196
  #
22143
23197
  # POST /api/org/{orgId}/resources/create-pricing
22144
23198
  #
23199
+ # Raises on 404: Not found
23200
+ #
22145
23201
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22146
23202
  # constructed with.
22147
23203
  # @param body [Hash] Request body, shaped as `CreatePricingRequest`.
@@ -22345,6 +23401,8 @@ module Infrawrench
22345
23401
  # the field; for `select` fields the optional `option` should be spliced
22346
23402
  # into the options list so the new value can be displayed.
22347
23403
  #
23404
+ # _Requires permission: `resources:write`._
23405
+ #
22348
23406
  # POST /api/org/{orgId}/resources/field-action
22349
23407
  #
22350
23408
  # Raises on 400: Bad request
@@ -22564,6 +23622,37 @@ module Infrawrench
22564
23622
  )
22565
23623
  end
22566
23624
 
23625
+ # Serve a host over a Cloudflare Tunnel
23626
+ #
23627
+ # Points the tunnel's ingress at the host's service, creates the routing DNS
23628
+ # record in `zoneId`, then connects to the host over SSH and installs and
23629
+ # runs cloudflared. A DNS record that could not be created (one may already
23630
+ # exist) is reported and the setup carries on; any other failed step is the
23631
+ # last of `steps`, and `connectCommand` is only sent when every step ran.
23632
+ #
23633
+ # _Requires permission: `resources:write`._
23634
+ #
23635
+ # POST /api/org/{orgId}/resources/tunnel-ssh-attach
23636
+ #
23637
+ # Raises on 400: Bad request
23638
+ #
23639
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
23640
+ # constructed with.
23641
+ # @param body [Hash] Request body, shaped as `TunnelSshAttachRequest`.
23642
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
23643
+ # @return [Hash] Parsed JSON, shaped as `TunnelSshAttachResult` — see
23644
+ # `sig/infrawrench/sdk.rbs`.
23645
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
23646
+ def tunnel_ssh_attach(body:, org_id: nil, request_options: nil)
23647
+ @transport.request(
23648
+ http_method: "POST",
23649
+ path: "/api/org/{orgId}/resources/tunnel-ssh-attach",
23650
+ path_params: { "orgId" => org_id },
23651
+ body: body,
23652
+ request_options: request_options
23653
+ )
23654
+ end
23655
+
22567
23656
  # Update a resource via its plugin
22568
23657
  #
22569
23658
  # Applies the supplied field changes upstream and persists the refreshed
@@ -22572,6 +23661,8 @@ module Infrawrench
22572
23661
  # freeze is in effect (this is also the path that applies right-sizing
22573
23662
  # recommendations); every applied update is audit-logged.
22574
23663
  #
23664
+ # _Requires permission: `resources:write`._
23665
+ #
22575
23666
  # POST /api/org/{orgId}/resources/update
22576
23667
  #
22577
23668
  # Raises on 400: Bad request
@@ -22656,6 +23747,8 @@ module Infrawrench
22656
23747
  # used. Reading takes `resources:read`: the person who can see the
22657
23748
  # infrastructure is the person who will be woken up about it.
22658
23749
  #
23750
+ # _Requires permission: `resources:read`._
23751
+ #
22659
23752
  # GET /api/org/{orgId}/runbooks
22660
23753
  #
22661
23754
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -22674,6 +23767,8 @@ module Infrawrench
22674
23767
 
22675
23768
  # Get one runbook
22676
23769
  #
23770
+ # _Requires permission: `resources:read`._
23771
+ #
22677
23772
  # GET /api/org/{orgId}/runbooks/{runbookId}
22678
23773
  #
22679
23774
  # Raises on 404: Not found
@@ -22711,21 +23806,25 @@ module Infrawrench
22711
23806
  # A closed run refuses updates, and reopening is not offered: a run is a
22712
23807
  # record of what happened. Start another run to record another attempt.
22713
23808
  #
23809
+ # _Requires permission: `resources:read`._
23810
+ #
22714
23811
  # PATCH /api/org/{orgId}/runbooks/runs/{runId}/steps/{stepId}
22715
23812
  #
22716
23813
  # Raises on 400: Bad request
22717
23814
  #
22718
23815
  # Raises on 404: Not found
22719
23816
  #
23817
+ # Raises on 409: Conflict
23818
+ #
22720
23819
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22721
23820
  # constructed with.
22722
23821
  # @param run_id [String]
22723
23822
  # @param step_id [String]
22724
- # @param body [Hash, nil] Request body, shaped as `RunbookStepUpdate`.
23823
+ # @param body [Hash] Request body, shaped as `RunbookStepUpdate`.
22725
23824
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22726
23825
  # @return [Hash] Parsed JSON, shaped as `RunbookRun` — see `sig/infrawrench/sdk.rbs`.
22727
23826
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22728
- def update(run_id:, step_id:, org_id: nil, body: nil, request_options: nil)
23827
+ def update(run_id:, step_id:, body:, org_id: nil, request_options: nil)
22729
23828
  @transport.request(
22730
23829
  http_method: "PATCH",
22731
23830
  path: "/api/org/{orgId}/runbooks/runs/{runId}/steps/{stepId}",
@@ -22755,6 +23854,8 @@ module Infrawrench
22755
23854
  # ended before the checklist did) and quietly marking them done would erase
22756
23855
  # the one thing a postmortem wants to know.
22757
23856
  #
23857
+ # _Requires permission: `resources:read`._
23858
+ #
22758
23859
  # POST /api/org/{orgId}/runbooks/runs/{runId}/close
22759
23860
  #
22760
23861
  # Raises on 400: Bad request
@@ -22766,11 +23867,11 @@ module Infrawrench
22766
23867
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22767
23868
  # constructed with.
22768
23869
  # @param run_id [String]
22769
- # @param body [Hash, nil] Request body, shaped as `RunbookRunClose`.
23870
+ # @param body [Hash] Request body, shaped as `RunbookRunClose`.
22770
23871
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22771
23872
  # @return [Hash] Parsed JSON, shaped as `RunbookRun` — see `sig/infrawrench/sdk.rbs`.
22772
23873
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22773
- def close(run_id:, org_id: nil, body: nil, request_options: nil)
23874
+ def close(run_id:, body:, org_id: nil, request_options: nil)
22774
23875
  @transport.request(
22775
23876
  http_method: "POST",
22776
23877
  path: "/api/org/{orgId}/runbooks/runs/{runId}/close",
@@ -22792,12 +23893,16 @@ module Infrawrench
22792
23893
  # and refusing the second would mean it goes unrecorded rather than not
22793
23894
  # happening.
22794
23895
  #
23896
+ # _Requires permission: `resources:read`._
23897
+ #
22795
23898
  # POST /api/org/{orgId}/runbooks/{runbookId}/runs
22796
23899
  #
22797
23900
  # Raises on 400: Bad request
22798
23901
  #
22799
23902
  # Raises on 404: Not found
22800
23903
  #
23904
+ # Raises on 409: Conflict
23905
+ #
22801
23906
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22802
23907
  # constructed with.
22803
23908
  # @param runbook_id [String]
@@ -22819,6 +23924,8 @@ module Infrawrench
22819
23924
  #
22820
23925
  # Newest first, optionally narrowed to one runbook or one incident.
22821
23926
  #
23927
+ # _Requires permission: `resources:read`._
23928
+ #
22822
23929
  # GET /api/org/{orgId}/runbooks/runs
22823
23930
  #
22824
23931
  # Raises on 400: Bad request
@@ -22843,6 +23950,8 @@ module Infrawrench
22843
23950
 
22844
23951
  # Get one runbook run
22845
23952
  #
23953
+ # _Requires permission: `resources:read`._
23954
+ #
22846
23955
  # GET /api/org/{orgId}/runbooks/runs/{runId}
22847
23956
  #
22848
23957
  # Raises on 404: Not found
@@ -22885,19 +23994,23 @@ module Infrawrench
22885
23994
  # Names are unique within an organization: two runbooks called "Failover" is
22886
23995
  # how the wrong one gets run.
22887
23996
  #
23997
+ # _Requires permission: `org:settings:write`._
23998
+ #
22888
23999
  # POST /api/org/{orgId}/runbooks
22889
24000
  #
22890
24001
  # Raises on 400: Bad request
22891
24002
  #
24003
+ # Raises on 404: Not found
24004
+ #
22892
24005
  # Raises on 409: Conflict
22893
24006
  #
22894
24007
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22895
24008
  # constructed with.
22896
- # @param body [Hash, nil] Request body, shaped as `RunbookCreate`.
24009
+ # @param body [Hash] Request body, shaped as `RunbookCreate`.
22897
24010
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22898
24011
  # @return [Hash] Parsed JSON, shaped as `Runbook` — see `sig/infrawrench/sdk.rbs`.
22899
24012
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22900
- def create(org_id: nil, body: nil, request_options: nil)
24013
+ def create(body:, org_id: nil, request_options: nil)
22901
24014
  @transport.request(
22902
24015
  http_method: "POST",
22903
24016
  path: "/api/org/{orgId}/runbooks",
@@ -22912,6 +24025,8 @@ module Infrawrench
22912
24025
  # Takes its run history with it. To retire a procedure without losing the
22913
24026
  # record of the runs performed against it, set `enabled` to false instead.
22914
24027
  #
24028
+ # _Requires permission: `org:settings:write`._
24029
+ #
22915
24030
  # DELETE /api/org/{orgId}/runbooks/{runbookId}
22916
24031
  #
22917
24032
  # Raises on 404: Not found
@@ -22939,6 +24054,8 @@ module Infrawrench
22939
24054
  # is valid as a whole. A step sent with its `id` keeps its identity, so a
22940
24055
  # run in progress still matches it.
22941
24056
  #
24057
+ # _Requires permission: `org:settings:write`._
24058
+ #
22942
24059
  # PATCH /api/org/{orgId}/runbooks/{runbookId}
22943
24060
  #
22944
24061
  # Raises on 400: Bad request
@@ -22950,11 +24067,11 @@ module Infrawrench
22950
24067
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
22951
24068
  # constructed with.
22952
24069
  # @param runbook_id [String]
22953
- # @param body [Hash, nil] Request body, shaped as `RunbookUpdate`.
24070
+ # @param body [Hash] Request body, shaped as `RunbookUpdate`.
22954
24071
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
22955
24072
  # @return [Hash] Parsed JSON, shaped as `Runbook` — see `sig/infrawrench/sdk.rbs`.
22956
24073
  # @raise [Infrawrench::ApiError] On any non-2xx response.
22957
- def update(runbook_id:, org_id: nil, body: nil, request_options: nil)
24074
+ def update(runbook_id:, body:, org_id: nil, request_options: nil)
22958
24075
  @transport.request(
22959
24076
  http_method: "PATCH",
22960
24077
  path: "/api/org/{orgId}/runbooks/{runbookId}",
@@ -23161,6 +24278,8 @@ module Infrawrench
23161
24278
  # override, or an end date. The facts of an automatic event (what was done,
23162
24279
  # when, the projection) stay as observed.
23163
24280
  #
24281
+ # _Requires permission: `costs:write`._
24282
+ #
23164
24283
  # PATCH /api/org/{orgId}/savings/events/{id}
23165
24284
  #
23166
24285
  # Raises on 400: Bad request
@@ -23188,6 +24307,8 @@ module Infrawrench
23188
24307
  #
23189
24308
  # Full replace of a manual entry. Automatic events are a 400; use PATCH.
23190
24309
  #
24310
+ # _Requires permission: `costs:write`._
24311
+ #
23191
24312
  # PUT /api/org/{orgId}/savings/events/{id}
23192
24313
  #
23193
24314
  # Raises on 400: Bad request
@@ -23229,6 +24350,8 @@ module Infrawrench
23229
24350
  # Record a saving by hand, with the monthly amount and the day it began.
23230
24351
  # Leaves an org-wide cost annotation on that day. Requires `costs:write`.
23231
24352
  #
24353
+ # _Requires permission: `costs:write`._
24354
+ #
23232
24355
  # POST /api/org/{orgId}/savings/events
23233
24356
  #
23234
24357
  # Raises on 400: Bad request
@@ -23254,6 +24377,8 @@ module Infrawrench
23254
24377
  # Hard delete, together with the cost annotation the event left on the
23255
24378
  # charts.
23256
24379
  #
24380
+ # _Requires permission: `costs:write`._
24381
+ #
23257
24382
  # DELETE /api/org/{orgId}/savings/events/{id}
23258
24383
  #
23259
24384
  # Raises on 404: Not found
@@ -23303,12 +24428,13 @@ module Infrawrench
23303
24428
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
23304
24429
  # constructed with.
23305
24430
  # @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`.
24431
+ # @param status [String, nil] Status tab. Defaults to `all` (or the view's).
23307
24432
  # @param kind [String, nil] Comma-separated finding kinds.
23308
24433
  # @param provider [String, nil] Comma-separated plugin ids.
23309
24434
  # @param account [String, nil] Comma-separated account ids.
23310
24435
  # @param region [String, nil] Comma-separated regions.
23311
- # @param tag [String, nil] `key` or `key=value`; repeat for more terms (all must match).
24436
+ # @param tag [Array<String>, nil] `key` or `key=value`; repeat for more terms (all must
24437
+ # match).
23312
24438
  # @param min_savings [String, nil] Minimum monthly savings, in each finding's own currency.
23313
24439
  # Unpriced findings never pass.
23314
24440
  # @param detected_from [String, nil] Detected on or after (UTC day).
@@ -23406,6 +24532,8 @@ module Infrawrench
23406
24532
  # The org's horizon, shortfall threshold and baseline window; defaults when
23407
24533
  # never saved.
23408
24534
  #
24535
+ # _Requires permission: `costs:read`._
24536
+ #
23409
24537
  # GET /api/org/{orgId}/savings/settings
23410
24538
  #
23411
24539
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -23427,6 +24555,8 @@ module Infrawrench
23427
24555
  #
23428
24556
  # Requires `costs:write`. Changes every figure in the report, retroactively.
23429
24557
  #
24558
+ # _Requires permission: `costs:write`._
24559
+ #
23430
24560
  # PUT /api/org/{orgId}/savings/settings
23431
24561
  #
23432
24562
  # Raises on 400: Bad request
@@ -23475,6 +24605,8 @@ module Infrawrench
23475
24605
  # as restated billing lands. Days collection has not covered are not
23476
24606
  # accrued. Per-currency throughout; never converted or merged.
23477
24607
  #
24608
+ # _Requires permission: `costs:read`._
24609
+ #
23478
24610
  # GET /api/org/{orgId}/savings/realized
23479
24611
  #
23480
24612
  # Raises on 400: Bad request
@@ -23877,6 +25009,8 @@ module Infrawrench
23877
25009
  # the poller records; days when nothing could be graded are absent rather
23878
25010
  # than zero. Does not seed the default scorecard.
23879
25011
  #
25012
+ # _Requires permission: `resources:read`._
25013
+ #
23880
25014
  # GET /api/org/{orgId}/scorecards/org
23881
25015
  #
23882
25016
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -23898,6 +25032,8 @@ module Infrawrench
23898
25032
  # The daily history alone, without computing the grade: the cheap read for a
23899
25033
  # sparkline.
23900
25034
  #
25035
+ # _Requires permission: `resources:read`._
25036
+ #
23901
25037
  # GET /api/org/{orgId}/scorecards/org/history
23902
25038
  #
23903
25039
  # Raises on 400: Bad request
@@ -23947,6 +25083,8 @@ module Infrawrench
23947
25083
  #
23948
25084
  # Raises on 400: Bad request
23949
25085
  #
25086
+ # Raises on 404: Not found
25087
+ #
23950
25088
  # Raises on 409: Conflict
23951
25089
  #
23952
25090
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -23973,8 +25111,12 @@ module Infrawrench
23973
25111
  #
23974
25112
  # DELETE /api/org/{orgId}/scorecards/{scorecardId}
23975
25113
  #
25114
+ # Raises on 400: Bad request
25115
+ #
23976
25116
  # Raises on 404: Not found
23977
25117
  #
25118
+ # Raises on 409: Conflict
25119
+ #
23978
25120
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
23979
25121
  # constructed with.
23980
25122
  # @param scorecard_id [String]
@@ -24000,8 +25142,12 @@ module Infrawrench
24000
25142
  #
24001
25143
  # POST /api/org/{orgId}/scorecards/{scorecardId}/evaluate
24002
25144
  #
25145
+ # Raises on 400: Bad request
25146
+ #
24003
25147
  # Raises on 404: Not found
24004
25148
  #
25149
+ # Raises on 409: Conflict
25150
+ #
24005
25151
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24006
25152
  # constructed with.
24007
25153
  # @param scorecard_id [String]
@@ -24101,6 +25247,8 @@ module Infrawrench
24101
25247
  #
24102
25248
  # Raises on 400: Bad request
24103
25249
  #
25250
+ # Raises on 403: Forbidden
25251
+ #
24104
25252
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24105
25253
  # constructed with.
24106
25254
  # @param q [String, nil]
@@ -24253,6 +25401,10 @@ module Infrawrench
24253
25401
  #
24254
25402
  # Raises on 409: Conflict
24255
25403
  #
25404
+ # Raises on 423: Blocked by an active change freeze. Retry with the
25405
+ # `x-change-freeze-override: true` header if you hold `freezes:override`;
25406
+ # both blocks and overrides are audit-logged.
25407
+ #
24256
25408
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24257
25409
  # constructed with.
24258
25410
  # @param seat_id [String]
@@ -24345,6 +25497,8 @@ module Infrawrench
24345
25497
  #
24346
25498
  # Raises on 404: Not found
24347
25499
  #
25500
+ # Raises on 409: Conflict
25501
+ #
24348
25502
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24349
25503
  # constructed with.
24350
25504
  # @param service_id [String] Service id or slug.
@@ -24372,8 +25526,12 @@ module Infrawrench
24372
25526
  #
24373
25527
  # DELETE /api/org/{orgId}/services/{serviceId}/members/{resourceId}
24374
25528
  #
25529
+ # Raises on 400: Bad request
25530
+ #
24375
25531
  # Raises on 404: Not found
24376
25532
  #
25533
+ # Raises on 409: Conflict
25534
+ #
24377
25535
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24378
25536
  # constructed with.
24379
25537
  # @param service_id [String] Service id or slug.
@@ -24448,8 +25606,12 @@ module Infrawrench
24448
25606
  #
24449
25607
  # DELETE /api/org/{orgId}/services/{serviceId}
24450
25608
  #
25609
+ # Raises on 400: Bad request
25610
+ #
24451
25611
  # Raises on 404: Not found
24452
25612
  #
25613
+ # Raises on 409: Conflict
25614
+ #
24453
25615
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24454
25616
  # constructed with.
24455
25617
  # @param service_id [String] Service id or slug.
@@ -24839,6 +26001,8 @@ module Infrawrench
24839
26001
  #
24840
26002
  # Raises on 404: Not found
24841
26003
  #
26004
+ # Raises on 409: The host key is new or has changed; trust it and retry
26005
+ #
24842
26006
  # Raises on 500: Server error
24843
26007
  #
24844
26008
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -24942,6 +26106,8 @@ module Infrawrench
24942
26106
  #
24943
26107
  # Raises on 404: Not found
24944
26108
  #
26109
+ # Raises on 409: The host key is new or has changed; trust it and retry
26110
+ #
24945
26111
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
24946
26112
  # constructed with.
24947
26113
  # @param body [Hash] Sent as `multipart/form-data`; `file` carries the file bytes.
@@ -24976,6 +26142,8 @@ module Infrawrench
24976
26142
  #
24977
26143
  # POST /api/org/{orgId}/shared-consoles/{consoleId}/invites
24978
26144
  #
26145
+ # Raises on 400: Bad request
26146
+ #
24979
26147
  # Raises on 403: Forbidden
24980
26148
  #
24981
26149
  # Raises on 404: Not found
@@ -25405,6 +26573,8 @@ module Infrawrench
25405
26573
  #
25406
26574
  # DELETE /api/org/{orgId}/sharing/{objectType}/{objectId}
25407
26575
  #
26576
+ # Raises on 400: Bad request
26577
+ #
25408
26578
  # Raises on 403: Forbidden
25409
26579
  #
25410
26580
  # Raises on 404: Not found
@@ -25433,6 +26603,10 @@ module Infrawrench
25433
26603
  #
25434
26604
  # GET /api/org/{orgId}/sharing/{objectType}/{objectId}
25435
26605
  #
26606
+ # Raises on 400: Bad request
26607
+ #
26608
+ # Raises on 403: Forbidden
26609
+ #
25436
26610
  # Raises on 404: Not found
25437
26611
  #
25438
26612
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -25499,6 +26673,8 @@ module Infrawrench
25499
26673
  # drift, everywhere), so a freshly added channel starts receiving alerts
25500
26674
  # without a second step.
25501
26675
  #
26676
+ # _Requires permission: `org:settings:write`._
26677
+ #
25502
26678
  # POST /api/org/{orgId}/slack/channels
25503
26679
  #
25504
26680
  # Raises on 400: Bad request
@@ -25523,6 +26699,8 @@ module Infrawrench
25523
26699
 
25524
26700
  # Disconnect a channel
25525
26701
  #
26702
+ # _Requires permission: `org:settings:write`._
26703
+ #
25526
26704
  # DELETE /api/org/{orgId}/slack/channels/{id}
25527
26705
  #
25528
26706
  # Raises on 404: Not found
@@ -25544,8 +26722,12 @@ module Infrawrench
25544
26722
 
25545
26723
  # Refresh a channel's cached name
25546
26724
  #
26725
+ # _Requires permission: `org:settings:write`._
26726
+ #
25547
26727
  # PATCH /api/org/{orgId}/slack/channels/{id}
25548
26728
  #
26729
+ # Raises on 400: Bad request
26730
+ #
25549
26731
  # Raises on 404: Not found
25550
26732
  #
25551
26733
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -25579,6 +26761,8 @@ module Infrawrench
25579
26761
  # Live call to Slack's conversations.list, for populating a channel picker.
25580
26762
  # Returns non-archived public and private channels visible to the bot.
25581
26763
  #
26764
+ # _Requires permission: `org:settings:write`._
26765
+ #
25582
26766
  # GET
25583
26767
  # /api/org/{orgId}/slack/installations/{installationId}/available-channels
25584
26768
  #
@@ -25604,6 +26788,8 @@ module Infrawrench
25604
26788
  # Stops all delivery to this workspace. The channel routing is retained, so
25605
26789
  # re-installing restores it.
25606
26790
  #
26791
+ # _Requires permission: `org:settings:write`._
26792
+ #
25607
26793
  # DELETE /api/org/{orgId}/slack/installations/{installationId}
25608
26794
  #
25609
26795
  # Raises on 404: Not found
@@ -25648,6 +26834,8 @@ module Infrawrench
25648
26834
  # Slack redirects back to /api/slack/oauth/callback. The install only
25649
26835
  # completes in the browser that opened the link as that user.
25650
26836
  #
26837
+ # _Requires permission: `org:settings:write`._
26838
+ #
25651
26839
  # GET /api/org/{orgId}/slack/install-url
25652
26840
  #
25653
26841
  # Raises on 400: Bad request
@@ -25671,6 +26859,8 @@ module Infrawrench
25671
26859
  # Reports whether the server has a Slack app registered, which workspaces
25672
26860
  # this organization has connected, and which channels alerts are routed to.
25673
26861
  #
26862
+ # _Requires permission: `org:settings:write`._
26863
+ #
25674
26864
  # GET /api/org/{orgId}/slack/status
25675
26865
  #
25676
26866
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -25693,6 +26883,8 @@ module Infrawrench
25693
26883
  # error when nothing could be delivered (`not_in_channel` means the bot
25694
26884
  # needs inviting to a private channel).
25695
26885
  #
26886
+ # _Requires permission: `org:settings:write`._
26887
+ #
25696
26888
  # POST /api/org/{orgId}/slack/test
25697
26889
  #
25698
26890
  # Raises on 400: Bad request
@@ -25824,8 +27016,12 @@ module Infrawrench
25824
27016
  #
25825
27017
  # DELETE /api/org/{orgId}/slos/{sloId}
25826
27018
  #
27019
+ # Raises on 400: Bad request
27020
+ #
25827
27021
  # Raises on 404: Not found
25828
27022
  #
27023
+ # Raises on 409: Conflict
27024
+ #
25829
27025
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
25830
27026
  # constructed with.
25831
27027
  # @param slo_id [String]
@@ -25861,8 +27057,7 @@ module Infrawrench
25861
27057
  # @param slo_id [String]
25862
27058
  # @param body [Hash, nil] Request body, shaped as `SloFreezeRequest`.
25863
27059
  # @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`.
27060
+ # @return [Hash] Parsed JSON, shaped as `SloActiveFreeze` — see `sig/infrawrench/sdk.rbs`.
25866
27061
  # @raise [Infrawrench::ApiError] On any non-2xx response.
25867
27062
  def post_org_org_id_slos_slo_id_freeze(slo_id:, org_id: nil, body: nil, request_options: nil)
25868
27063
  @transport.request(
@@ -26243,6 +27438,8 @@ module Infrawrench
26243
27438
  #
26244
27439
  # DELETE /api/org/{orgId}/ssh-keys/{id}
26245
27440
  #
27441
+ # Raises on 404: Not found
27442
+ #
26246
27443
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26247
27444
  # constructed with.
26248
27445
  # @param id [String]
@@ -26312,6 +27509,8 @@ module Infrawrench
26312
27509
  # authority as opening a shell. Imported keys cannot sign (only their public
26313
27510
  # half is stored). Every call is audited.
26314
27511
  #
27512
+ # _Requires permission: `resources:execute`._
27513
+ #
26315
27514
  # POST /api/org/{orgId}/ssh-keys/{id}/sign
26316
27515
  #
26317
27516
  # Raises on 400: Bad request
@@ -26399,6 +27598,8 @@ module Infrawrench
26399
27598
  #
26400
27599
  # Raises on 404: Not found
26401
27600
  #
27601
+ # Raises on 409: The host key is new or has changed; trust it and retry
27602
+ #
26402
27603
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26403
27604
  # constructed with.
26404
27605
  # @param body [Hash] Request body, shaped as `SshTunnelCreateAccountRequest`.
@@ -26424,8 +27625,12 @@ module Infrawrench
26424
27625
  #
26425
27626
  # Raises on 400: Bad request
26426
27627
  #
27628
+ # Raises on 403: Forbidden
27629
+ #
26427
27630
  # Raises on 404: Not found
26428
27631
  #
27632
+ # Raises on 409: The host key is new or has changed; trust it and retry
27633
+ #
26429
27634
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26430
27635
  # constructed with.
26431
27636
  # @param body [Hash] Request body, shaped as `SshExecRequest`.
@@ -26448,8 +27653,12 @@ module Infrawrench
26448
27653
  #
26449
27654
  # POST /api/org/{orgId}/ssh-tunnels/open
26450
27655
  #
27656
+ # Raises on 400: Bad request
27657
+ #
26451
27658
  # Raises on 404: Not found
26452
27659
  #
27660
+ # Raises on 409: The host key is new or has changed; trust it and retry
27661
+ #
26453
27662
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
26454
27663
  # constructed with.
26455
27664
  # @param body [Hash] Request body, shaped as `Hash`.
@@ -27116,15 +28325,18 @@ module Infrawrench
27116
28325
  #
27117
28326
  # POST /api/org/{orgId}/team/invitations
27118
28327
  #
28328
+ # Raises on 400: Bad request
28329
+ #
27119
28330
  # Raises on 402: Payment required: the organization's plan does not include
27120
28331
  # this
27121
28332
  #
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
28333
+ # Raises on 403: Forbidden
28334
+ #
28335
+ # Raises on 404: Not found
27124
28336
  #
27125
- # Raises on 409: All seats are in use; retry with addSeat to buy one more
28337
+ # Raises on 409: SeatLimitResponse
27126
28338
  #
27127
- # Raises on 502: Buying the extra seat failed; the invitation was not sent
28339
+ # Raises on 502: Bad gateway: an upstream service failed
27128
28340
  #
27129
28341
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27130
28342
  # constructed with.
@@ -27201,6 +28413,10 @@ module Infrawrench
27201
28413
  #
27202
28414
  # DELETE /api/org/{orgId}/team/members/{id}
27203
28415
  #
28416
+ # Raises on 400: Bad request
28417
+ #
28418
+ # Raises on 403: Forbidden
28419
+ #
27204
28420
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27205
28421
  # constructed with.
27206
28422
  # @param id [String]
@@ -27243,6 +28459,12 @@ module Infrawrench
27243
28459
  #
27244
28460
  # PATCH /api/org/{orgId}/team/members/{id}/role
27245
28461
  #
28462
+ # Raises on 400: Bad request
28463
+ #
28464
+ # Raises on 403: Forbidden
28465
+ #
28466
+ # Raises on 404: Not found
28467
+ #
27246
28468
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27247
28469
  # constructed with.
27248
28470
  # @param id [String]
@@ -27275,6 +28497,10 @@ module Infrawrench
27275
28497
  #
27276
28498
  # POST /api/org/{orgId}/team/roles
27277
28499
  #
28500
+ # Raises on 400: Bad request
28501
+ #
28502
+ # Raises on 403: Forbidden
28503
+ #
27278
28504
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27279
28505
  # constructed with.
27280
28506
  # @param body [Hash] Request body, shaped as `RoleCreateRequest`.
@@ -27301,7 +28527,8 @@ module Infrawrench
27301
28527
  #
27302
28528
  # Raises on 409: Conflict
27303
28529
  #
27304
- # Raises on 422: Bad request
28530
+ # Raises on 422: Unprocessable: the request is well formed but cannot be
28531
+ # acted on
27305
28532
  #
27306
28533
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27307
28534
  # constructed with.
@@ -27345,9 +28572,14 @@ module Infrawrench
27345
28572
  #
27346
28573
  # PATCH /api/org/{orgId}/team/roles/{id}
27347
28574
  #
28575
+ # Raises on 400: Bad request
28576
+ #
28577
+ # Raises on 403: Forbidden
28578
+ #
27348
28579
  # Raises on 404: Not found
27349
28580
  #
27350
- # Raises on 422: Bad request
28581
+ # Raises on 422: Unprocessable: the request is well formed but cannot be
28582
+ # acted on
27351
28583
  #
27352
28584
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
27353
28585
  # constructed with.
@@ -27559,8 +28791,7 @@ module Infrawrench
27559
28791
  # constructed with.
27560
28792
  # @param body [Hash] Request body, shaped as `VirtualTagInput`.
27561
28793
  # @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`.
28794
+ # @return [Hash] Parsed JSON, shaped as `VirtualTagStats` — see `sig/infrawrench/sdk.rbs`.
27564
28795
  # @raise [Infrawrench::ApiError] On any non-2xx response.
27565
28796
  def preview(body:, org_id: nil, request_options: nil)
27566
28797
  @transport.request(
@@ -27640,6 +28871,8 @@ module Infrawrench
27640
28871
  # repository, so it survives rebuilds) or, with `artifactKey: "*"`,
27641
28872
  # everywhere. Idempotent.
27642
28873
  #
28874
+ # _Requires permission: `resources:write`._
28875
+ #
27643
28876
  # POST /api/org/{orgId}/vulnerabilities/dismissals
27644
28877
  #
27645
28878
  # Raises on 400: Bad request
@@ -27665,6 +28898,8 @@ module Infrawrench
27665
28898
  #
27666
28899
  # The key is in the query string because artifact keys contain slashes.
27667
28900
  #
28901
+ # _Requires permission: `resources:write`._
28902
+ #
27668
28903
  # DELETE /api/org/{orgId}/vulnerabilities/dismissals
27669
28904
  #
27670
28905
  # Raises on 400: Bad request
@@ -27702,6 +28937,8 @@ module Infrawrench
27702
28937
  #
27703
28938
  # Defaults when never saved: alerts on, critical only, running only.
27704
28939
  #
28940
+ # _Requires permission: `org:settings:write`._
28941
+ #
27705
28942
  # GET /api/org/{orgId}/vulnerabilities/settings
27706
28943
  #
27707
28944
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -27723,6 +28960,8 @@ module Infrawrench
27723
28960
  #
27724
28961
  # Saving never resets the alert cooldown.
27725
28962
  #
28963
+ # _Requires permission: `org:settings:write`._
28964
+ #
27726
28965
  # PUT /api/org/{orgId}/vulnerabilities/settings
27727
28966
  #
27728
28967
  # Raises on 400: Bad request
@@ -27774,6 +29013,8 @@ module Infrawrench
27774
29013
  # those running there and recompute the counts; `sources` always describes
27775
29014
  # every scanner.
27776
29015
  #
29016
+ # _Requires permission: `resources:read`._
29017
+ #
27777
29018
  # GET /api/org/{orgId}/vulnerabilities
27778
29019
  #
27779
29020
  # Raises on 400: Bad request
@@ -27824,6 +29065,8 @@ module Infrawrench
27824
29065
  # and a screen in an office is exactly what a visitor photographs. The
27825
29066
  # machine driving the wall signs in once.
27826
29067
  #
29068
+ # _Requires permission: `resources:read`._
29069
+ #
27827
29070
  # GET /api/org/{orgId}/wallboard
27828
29071
  #
27829
29072
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28129,6 +29372,8 @@ module Infrawrench
28129
29372
  #
28130
29373
  # DELETE /api/org/{orgId}/workflows/{id}/schedule
28131
29374
  #
29375
+ # Raises on 400: Bad request
29376
+ #
28132
29377
  # Raises on 404: Not found
28133
29378
  #
28134
29379
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28190,6 +29435,8 @@ module Infrawrench
28190
29435
  #
28191
29436
  # Raises on 400: Bad request
28192
29437
  #
29438
+ # Raises on 403: Forbidden
29439
+ #
28193
29440
  # Raises on 404: Not found
28194
29441
  #
28195
29442
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28253,6 +29500,8 @@ module Infrawrench
28253
29500
  #
28254
29501
  # Raises on 400: Bad request
28255
29502
  #
29503
+ # Raises on 403: Forbidden
29504
+ #
28256
29505
  # Raises on 404: Not found
28257
29506
  #
28258
29507
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28289,6 +29538,216 @@ module Infrawrench
28289
29538
  @secrets = WorkflowsSecretsNamespace.new(@transport)
28290
29539
  end
28291
29540
 
29541
+ # Type-check workflow source
29542
+ #
29543
+ # Checks `source` (or the stored source) against the workflow's generated
29544
+ # typings, the same check the editor runs. Needs `secrets:read` as well,
29545
+ # since the typings name the assigned secrets.
29546
+ #
29547
+ # _Requires permission: `workflows:read`._
29548
+ #
29549
+ # POST /api/org/{orgId}/workflows/{id}/check
29550
+ #
29551
+ # Raises on 403: Forbidden
29552
+ #
29553
+ # Raises on 404: Not found
29554
+ #
29555
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29556
+ # constructed with.
29557
+ # @param id [String] Workflow id
29558
+ # @param body [Hash] Request body, shaped as `WorkflowCheckInput`.
29559
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29560
+ # @return [Hash] Parsed JSON, shaped as `WorkflowTypecheckResult` — see
29561
+ # `sig/infrawrench/sdk.rbs`.
29562
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29563
+ def check(id:, body:, org_id: nil, request_options: nil)
29564
+ @transport.request(
29565
+ http_method: "POST",
29566
+ path: "/api/org/{orgId}/workflows/{id}/check",
29567
+ path_params: { "orgId" => org_id, "id" => id },
29568
+ body: body,
29569
+ request_options: request_options
29570
+ )
29571
+ end
29572
+
29573
+ # Create a workflow
29574
+ #
29575
+ # Every field is optional: an empty body creates an enabled, manually
29576
+ # triggered workflow with no source. Assigning secrets (`secretIds`) also
29577
+ # needs `secrets:read`.
29578
+ #
29579
+ # _Requires permission: `workflows:write`._
29580
+ #
29581
+ # POST /api/org/{orgId}/workflows
29582
+ #
29583
+ # Raises on 400: Bad request
29584
+ #
29585
+ # Raises on 403: Forbidden
29586
+ #
29587
+ # Raises on 404: Not found
29588
+ #
29589
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29590
+ # constructed with.
29591
+ # @param body [Hash] Request body, shaped as `WorkflowInput`.
29592
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29593
+ # @return [Hash] Parsed JSON, shaped as `Workflow` — see `sig/infrawrench/sdk.rbs`.
29594
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29595
+ def create(body:, org_id: nil, request_options: nil)
29596
+ @transport.request(
29597
+ http_method: "POST",
29598
+ path: "/api/org/{orgId}/workflows",
29599
+ path_params: { "orgId" => org_id },
29600
+ body: body,
29601
+ request_options: request_options
29602
+ )
29603
+ end
29604
+
29605
+ # Delete a workflow
29606
+ #
29607
+ # _Requires permission: `workflows:write`._
29608
+ #
29609
+ # DELETE /api/org/{orgId}/workflows/{id}
29610
+ #
29611
+ # Raises on 400: Bad request
29612
+ #
29613
+ # Raises on 404: Not found
29614
+ #
29615
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29616
+ # constructed with.
29617
+ # @param id [String] Workflow id
29618
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29619
+ # @return [Hash] Parsed JSON, shaped as `Ok` — see `sig/infrawrench/sdk.rbs`.
29620
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29621
+ def delete(id:, org_id: nil, request_options: nil)
29622
+ @transport.request(
29623
+ http_method: "DELETE",
29624
+ path: "/api/org/{orgId}/workflows/{id}",
29625
+ path_params: { "orgId" => org_id, "id" => id },
29626
+ request_options: request_options
29627
+ )
29628
+ end
29629
+
29630
+ # Get a workflow
29631
+ #
29632
+ # _Requires permission: `workflows:read`._
29633
+ #
29634
+ # GET /api/org/{orgId}/workflows/{id}
29635
+ #
29636
+ # Raises on 404: Not found
29637
+ #
29638
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29639
+ # constructed with.
29640
+ # @param id [String] Workflow id
29641
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29642
+ # @return [Hash] Parsed JSON, shaped as `Workflow` — see `sig/infrawrench/sdk.rbs`.
29643
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29644
+ def get(id:, org_id: nil, request_options: nil)
29645
+ @transport.request(
29646
+ http_method: "GET",
29647
+ path: "/api/org/{orgId}/workflows/{id}",
29648
+ path_params: { "orgId" => org_id, "id" => id },
29649
+ request_options: request_options
29650
+ )
29651
+ end
29652
+
29653
+ # List workflows
29654
+ #
29655
+ # _Requires permission: `workflows:read`._
29656
+ #
29657
+ # GET /api/org/{orgId}/workflows
29658
+ #
29659
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29660
+ # constructed with.
29661
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29662
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<Workflow>` — see
29663
+ # `sig/infrawrench/sdk.rbs`.
29664
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29665
+ def list(org_id: nil, request_options: nil)
29666
+ @transport.request(
29667
+ http_method: "GET",
29668
+ path: "/api/org/{orgId}/workflows",
29669
+ path_params: { "orgId" => org_id },
29670
+ request_options: request_options
29671
+ )
29672
+ end
29673
+
29674
+ # A workflow's metric values
29675
+ #
29676
+ # _Requires permission: `workflows:read`._
29677
+ #
29678
+ # GET /api/org/{orgId}/workflows/{id}/metrics
29679
+ #
29680
+ # Raises on 404: Not found
29681
+ #
29682
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29683
+ # constructed with.
29684
+ # @param id [String] Workflow id
29685
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29686
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<WorkflowMetric>` — see
29687
+ # `sig/infrawrench/sdk.rbs`.
29688
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29689
+ def metrics(id:, org_id: nil, request_options: nil)
29690
+ @transport.request(
29691
+ http_method: "GET",
29692
+ path: "/api/org/{orgId}/workflows/{id}/metrics",
29693
+ path_params: { "orgId" => org_id, "id" => id },
29694
+ request_options: request_options
29695
+ )
29696
+ end
29697
+
29698
+ # Run a workflow now
29699
+ #
29700
+ # Runs the workflow to completion with the caller's permissions and answers
29701
+ # its outcome. Non-interactive: an `infra.prompt` gets no answer.
29702
+ #
29703
+ # _Requires permission: `workflows:write`._
29704
+ #
29705
+ # POST /api/org/{orgId}/workflows/{id}/run
29706
+ #
29707
+ # Raises on 401: Unauthenticated
29708
+ #
29709
+ # Raises on 404: Not found
29710
+ #
29711
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29712
+ # constructed with.
29713
+ # @param id [String] Workflow id
29714
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29715
+ # @return [Hash] Parsed JSON, shaped as `WorkflowRunOutcome` — see
29716
+ # `sig/infrawrench/sdk.rbs`.
29717
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29718
+ def run(id:, org_id: nil, request_options: nil)
29719
+ @transport.request(
29720
+ http_method: "POST",
29721
+ path: "/api/org/{orgId}/workflows/{id}/run",
29722
+ path_params: { "orgId" => org_id, "id" => id },
29723
+ request_options: request_options
29724
+ )
29725
+ end
29726
+
29727
+ # A workflow's recent runs
29728
+ #
29729
+ # _Requires permission: `workflows:read`._
29730
+ #
29731
+ # GET /api/org/{orgId}/workflows/{id}/runs
29732
+ #
29733
+ # Raises on 404: Not found
29734
+ #
29735
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29736
+ # constructed with.
29737
+ # @param id [String] Workflow id
29738
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29739
+ # @return [Array<Hash>] Parsed JSON, shaped as `Array<WorkflowRun>` — see
29740
+ # `sig/infrawrench/sdk.rbs`.
29741
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29742
+ def runs(id:, org_id: nil, request_options: nil)
29743
+ @transport.request(
29744
+ http_method: "GET",
29745
+ path: "/api/org/{orgId}/workflows/{id}/runs",
29746
+ path_params: { "orgId" => org_id, "id" => id },
29747
+ request_options: request_options
29748
+ )
29749
+ end
29750
+
28292
29751
  # Generated infra.d.ts for a workflow
28293
29752
  #
28294
29753
  # The ambient TypeScript declarations workflow source is written against,
@@ -28303,6 +29762,8 @@ module Infrawrench
28303
29762
  #
28304
29763
  # GET /api/org/{orgId}/workflows/{id}/typings
28305
29764
  #
29765
+ # Raises on 403: Forbidden
29766
+ #
28306
29767
  # Raises on 404: Not found
28307
29768
  #
28308
29769
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
@@ -28323,6 +29784,40 @@ module Infrawrench
28323
29784
  request_options: request_options
28324
29785
  )
28325
29786
  end
29787
+
29788
+ # Update a workflow
29789
+ #
29790
+ # An omitted field keeps its stored value. Changing the source, trigger or
29791
+ # assigned secrets makes automated runs act with the caller's permissions
29792
+ # from then on; when the workflow has secrets assigned, any edit also needs
29793
+ # `secrets:read`.
29794
+ #
29795
+ # _Requires permission: `workflows:write`._
29796
+ #
29797
+ # PUT /api/org/{orgId}/workflows/{id}
29798
+ #
29799
+ # Raises on 400: Bad request
29800
+ #
29801
+ # Raises on 403: Forbidden
29802
+ #
29803
+ # Raises on 404: Not found
29804
+ #
29805
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
29806
+ # constructed with.
29807
+ # @param id [String] Workflow id
29808
+ # @param body [Hash] Request body, shaped as `WorkflowInput`.
29809
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
29810
+ # @return [Hash] Parsed JSON, shaped as `Workflow` — see `sig/infrawrench/sdk.rbs`.
29811
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
29812
+ def update(id:, body:, org_id: nil, request_options: nil)
29813
+ @transport.request(
29814
+ http_method: "PUT",
29815
+ path: "/api/org/{orgId}/workflows/{id}",
29816
+ path_params: { "orgId" => org_id, "id" => id },
29817
+ body: body,
29818
+ request_options: request_options
29819
+ )
29820
+ end
28326
29821
  end
28327
29822
 
28328
29823
  # A client for the Infrawrench API.
@@ -28399,6 +29894,8 @@ module Infrawrench
28399
29894
  attr_reader :changes
28400
29895
  # @return [ChatNamespace] `client.chat`
28401
29896
  attr_reader :chat
29897
+ # @return [CiNamespace] `client.ci`
29898
+ attr_reader :ci
28402
29899
  # @return [CommitmentsNamespace] `client.commitments`
28403
29900
  attr_reader :commitments
28404
29901
  # @return [ComplianceNamespace] `client.compliance`
@@ -28467,6 +29964,10 @@ module Infrawrench
28467
29964
  attr_reader :expiring
28468
29965
  # @return [ExtendedSupportNamespace] `client.extended_support`
28469
29966
  attr_reader :extended_support
29967
+ # @return [FeaturesNamespace] `client.features`
29968
+ attr_reader :features
29969
+ # @return [GithubNamespace] `client.github`
29970
+ attr_reader :github
28470
29971
  # @return [GithubIssuesNamespace] `client.github_issues`
28471
29972
  attr_reader :github_issues
28472
29973
  # @return [IacNamespace] `client.iac`
@@ -28652,6 +30153,7 @@ module Infrawrench
28652
30153
  @change_freezes = ChangeFreezesNamespace.new(@transport)
28653
30154
  @changes = ChangesNamespace.new(@transport)
28654
30155
  @chat = ChatNamespace.new(@transport)
30156
+ @ci = CiNamespace.new(@transport)
28655
30157
  @commitments = CommitmentsNamespace.new(@transport)
28656
30158
  @compliance = ComplianceNamespace.new(@transport)
28657
30159
  @config = ConfigNamespace.new(@transport)
@@ -28686,6 +30188,8 @@ module Infrawrench
28686
30188
  @event_subscriptions = EventSubscriptionsNamespace.new(@transport)
28687
30189
  @expiring = ExpiringNamespace.new(@transport)
28688
30190
  @extended_support = ExtendedSupportNamespace.new(@transport)
30191
+ @features = FeaturesNamespace.new(@transport)
30192
+ @github = GithubNamespace.new(@transport)
28689
30193
  @github_issues = GithubIssuesNamespace.new(@transport)
28690
30194
  @iac = IacNamespace.new(@transport)
28691
30195
  @idle_findings = IdleFindingsNamespace.new(@transport)