infrawrench-sdk 1.56.0 → 1.58.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 99505501d1c47d75921de1a3850546b7b6e92ac090a47d42aea151c4dd993c26
4
- data.tar.gz: d3690e870eddf2c0bc2d324eaa52b4d1c4415a853ba03e0fe7dad5c6b35d4a51
3
+ metadata.gz: 4f2aaa8ec40402e14481ecf164ad3b726f3272d70147edee5fe7424c3b24f81d
4
+ data.tar.gz: ac8b606bbc89540e3623a46218b64bb14f84175c962321b7ec2e969d4064d500
5
5
  SHA512:
6
- metadata.gz: 7a6034fef978bb108ea97f8e936729460163dca56fb9ad03105f50930b8e52cda46ae4e0d10e1b543d11008aae827e93f47539164879b632633d5ed96fa34caf
7
- data.tar.gz: 3d1956b7c90049c09cb840e17c504bf00caa93ac282f01a834bd8af751553521a23d7c57504630f5bff5410198aa3a3eda91a06fa042f8b0f55afab9064590bc
6
+ metadata.gz: b792405dc4c76badabd8fd21e04286271332bcb222a0e38656c9324bd05f869ceadf61581650f8a5b3312ab5f61c63a81787716a21aee46d3110c3ca92d9a71f
7
+ data.tar.gz: ee1738f77ca46c0e5fee8a98064a845dbe19949b22e22b5b4f986bdf8e3fde3c4ace6bee5919d2278d04b1cb53f87b5155097f6649fa6d3af1acd094da4137f4
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # infrawrench-sdk
2
2
 
3
- Generated Ruby client for the Infrawrench API (API version `1.56.0`).
3
+ Generated Ruby client for the Infrawrench API (API version `1.58.0`).
4
4
 
5
5
  **Do not edit this gem by hand** — it is regenerated from `openapi.json` and is
6
6
  not checked into the repository. Run
@@ -41,7 +41,7 @@ Every method takes an optional trailing `request_options:` hash (`:headers`,
41
41
  Responses are the plain `Hash`/`Array` that `JSON.parse` returns, with String
42
42
  keys spelled exactly as the wire spells them. There are no model classes — see
43
43
  [`sig/infrawrench/sdk.rbs`](./sig/infrawrench/sdk.rbs) for the shape of every one of the
44
- 833 schemas, as RBS type aliases that steep and TypeProf can read.
44
+ 841 schemas, as RBS type aliases that steep and TypeProf can read.
45
45
 
46
46
  Non-2xx responses raise `Infrawrench::ApiError`, which carries `#status`,
47
47
  the parsed `#body`, and the machine-readable `#code` when the API sends one —
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.56.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.58.0 | MIT | Copyright (c) 2026 Infrawrench LLC
4
4
  # https://github.com/Infrawrench/Infrawrench
5
5
  #
6
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.56.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.58.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -17,8 +17,8 @@ require_relative "lib/infrawrench/version"
17
17
  Gem::Specification.new do |spec|
18
18
  spec.name = "infrawrench-sdk"
19
19
  spec.version = Infrawrench::VERSION
20
- spec.summary = "Generated Ruby client for the Infrawrench API (v1.56.0)."
21
- spec.description = "Generated Ruby client for the Infrawrench API (v1.56.0). Covers the published API surface only — operations marked x-internal in the spec are not generated. No runtime dependencies."
20
+ spec.summary = "Generated Ruby client for the Infrawrench API (v1.58.0)."
21
+ spec.description = "Generated Ruby client for the Infrawrench API (v1.58.0). Covers the published API surface only — operations marked x-internal in the spec are not generated. No runtime dependencies."
22
22
  spec.authors = ["Infrawrench LLC", "Astrid Gealer"]
23
23
  spec.email = ["astrid@infrawrench.com"]
24
24
  spec.homepage = "https://infrawrench.com/docs/team-and-billing/client-sdks"
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.56.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.58.0 | MIT | Copyright (c) 2026 Infrawrench LLC
4
4
  # https://github.com/Infrawrench/Infrawrench
5
5
  #
6
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.56.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.58.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -3112,7 +3112,7 @@ module Infrawrench
3112
3112
  )
3113
3113
  end
3114
3114
 
3115
- # Get a budget with current-month status
3115
+ # Get a budget with current-period status
3116
3116
  #
3117
3117
  # GET /api/org/{orgId}/budgets/{id}
3118
3118
  #
@@ -3122,7 +3122,7 @@ module Infrawrench
3122
3122
  # constructed with.
3123
3123
  # @param id [String]
3124
3124
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3125
- # @return [Hash] Parsed JSON, shaped as `BudgetFull` — see `sig/infrawrench/sdk.rbs`.
3125
+ # @return [Hash] Parsed JSON, shaped as `BudgetWithStatus` — see `sig/infrawrench/sdk.rbs`.
3126
3126
  # @raise [Infrawrench::ApiError] On any non-2xx response.
3127
3127
  def get(id:, org_id: nil, request_options: nil)
3128
3128
  @transport.request(
@@ -3133,7 +3133,7 @@ module Infrawrench
3133
3133
  )
3134
3134
  end
3135
3135
 
3136
- # List budgets with current-month actuals and forecasts
3136
+ # List budgets with current-period actuals and forecasts
3137
3137
  #
3138
3138
  # GET /api/org/{orgId}/budgets
3139
3139
  #
@@ -6287,9 +6287,12 @@ module Infrawrench
6287
6287
  # Run a cost report
6288
6288
  #
6289
6289
  # Executes the report's saved config and returns the series, along with the
6290
- # inclusive window a relative preset resolved to. Takes no body: the report
6291
- # *is* the query, so a caller never has to reassemble its config to get the
6292
- # numbers.
6290
+ # inclusive window a relative preset resolved to. The body is optional: the
6291
+ # report *is* the query, so a caller never has to reassemble its config to
6292
+ # get the numbers. It may carry one-off display overrides (`measure`,
6293
+ # `usageUnit`, `binning`, `cumulative`) that apply to this run only and are
6294
+ # never saved; switching a run to `usage` or `count` drops the saved
6295
+ # forecast, scenario and billing rules, which only apply to money.
6293
6296
  #
6294
6297
  # _Requires permission: `costs:read`._
6295
6298
  #
@@ -6302,15 +6305,17 @@ module Infrawrench
6302
6305
  # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
6303
6306
  # constructed with.
6304
6307
  # @param id [String]
6308
+ # @param body [Hash, nil] Request body, shaped as `CostReportRunOverrides`.
6305
6309
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
6306
6310
  # @return [Hash] Parsed JSON, shaped as `CostReportRunResult` — see
6307
6311
  # `sig/infrawrench/sdk.rbs`.
6308
6312
  # @raise [Infrawrench::ApiError] On any non-2xx response.
6309
- def run(id:, org_id: nil, request_options: nil)
6313
+ def run(id:, org_id: nil, body: nil, request_options: nil)
6310
6314
  @transport.request(
6311
6315
  http_method: "POST",
6312
6316
  path: "/api/org/{orgId}/cost-reports/{id}/run",
6313
6317
  path_params: { "orgId" => org_id, "id" => id },
6318
+ body: body,
6314
6319
  request_options: request_options
6315
6320
  )
6316
6321
  end
@@ -6880,9 +6885,12 @@ module Infrawrench
6880
6885
  # List distinct values for a cost dimension
6881
6886
  #
6882
6887
  # Feeds the filter and group-by pickers. Pass dimension=tag-keys for tag
6883
- # keys; dimension=tag requires tagKey. `charge_type` answers from the fixed
6884
- # set of charge types rather than from the stored data, so the picker is
6885
- # populated before any provider has reported one.
6888
+ # keys, or dimension=usage-units for the usage units providers report (a
6889
+ # usage budget's unit); dimension=tag requires tagKey. `charge_type` answers
6890
+ # from the fixed set of charge types rather than from the stored data, so
6891
+ # the picker is populated before any provider has reported one.
6892
+ # `usage-units` lists the usage units present in the cost data, most common
6893
+ # first, for the `usage` measure's unit picker.
6886
6894
  #
6887
6895
  # _Requires permission: `costs:read`._
6888
6896
  #
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.56.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.58.0 | MIT | Copyright (c) 2026 Infrawrench LLC
4
4
  # https://github.com/Infrawrench/Infrawrench
5
5
  #
6
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.56.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.58.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.56.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.58.0 | MIT | Copyright (c) 2026 Infrawrench LLC
4
4
  # https://github.com/Infrawrench/Infrawrench
5
5
  #
6
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.56.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.58.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.56.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.58.0 | MIT | Copyright (c) 2026 Infrawrench LLC
4
4
  # https://github.com/Infrawrench/Infrawrench
5
5
  #
6
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.56.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.58.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -15,5 +15,5 @@
15
15
  # Kept in its own file so the gemspec can read the version without loading the
16
16
  # client — a gemspec that pulls in net/http is a gemspec that can fail to parse.
17
17
  module Infrawrench
18
- VERSION = "1.56.0"
18
+ VERSION = "1.58.0"
19
19
  end
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.56.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.58.0 | MIT | Copyright (c) 2026 Infrawrench LLC
4
4
  # https://github.com/Infrawrench/Infrawrench
5
5
  #
6
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.56.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.58.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -1,7 +1,7 @@
1
- # infrawrench-sdk v1.56.0 | MIT | Copyright (c) 2026 Infrawrench LLC
1
+ # infrawrench-sdk v1.58.0 | MIT | Copyright (c) 2026 Infrawrench LLC
2
2
  # https://github.com/Infrawrench/Infrawrench
3
3
  #
4
- # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.56.0).
4
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.58.0).
5
5
  #
6
6
  # DO NOT EDIT. Regenerate with:
7
7
  # pnpm --filter @infrawrench/web generate:sdk
@@ -1074,7 +1074,11 @@ module Infrawrench
1074
1074
  "thresholdPercent" => Integer,
1075
1075
  "actualAmountCents" => Integer,
1076
1076
  "forecastAmountCents" => Integer | nil,
1077
- "triggeredAt" => String
1077
+ "triggeredAt" => String,
1078
+ "periodStart" => String | nil,
1079
+ "periodEnd" => String | nil,
1080
+ "actualUsage" => Numeric | nil,
1081
+ "forecastUsage" => Numeric | nil
1078
1082
  }
1079
1083
 
1080
1084
  # The basis `actualCents` and `forecastCents` were measured on.
@@ -1097,6 +1101,12 @@ module Infrawrench
1097
1101
  ?"tagKey" => String
1098
1102
  }
1099
1103
 
1104
+ # Spec schema: `BudgetExplicitPeriods`.
1105
+ type budget_explicit_periods = {
1106
+ "kind" => "explicit",
1107
+ "periods" => Array[{ "start" => String, "end" => String, ?"amountCents" => Integer, ?"usageAmount" => Numeric }]
1108
+ }
1109
+
1100
1110
  # Spec schema: `BudgetFull`.
1101
1111
  type budget_full = {
1102
1112
  "id" => String,
@@ -1113,20 +1123,65 @@ module Infrawrench
1113
1123
  "createdByUserId" => String | nil,
1114
1124
  "deletedAt" => String | nil,
1115
1125
  "createdAt" => String,
1116
- "updatedAt" => String
1126
+ "updatedAt" => String,
1127
+ "measure" => budget_measure,
1128
+ "usageUnit" => String | nil,
1129
+ "usageAmount" => Numeric | nil,
1130
+ "period" => budget_period,
1131
+ "parentBudgetId" => String | nil
1132
+ }
1133
+
1134
+ # Spec schema: `BudgetHierarchyWarning`.
1135
+ type budget_hierarchy_warning = {
1136
+ "kind" => "allocation" | "actual" | "forecast",
1137
+ "childTotal" => Numeric,
1138
+ "parentLimit" => Numeric
1117
1139
  }
1118
1140
 
1119
1141
  # Spec schema: `BudgetInput`.
1120
1142
  type budget_input = {
1121
1143
  "name" => String,
1122
- "amountCents" => Integer,
1144
+ ?"amountCents" => Integer,
1123
1145
  ?"currency" => String,
1124
1146
  ?"filters" => Array[budget_cost_filter],
1125
1147
  ?"savedFilterId" => String,
1126
1148
  ?"scenarioModelId" => String,
1127
1149
  "thresholds" => Array[budget_threshold],
1128
1150
  ?"costBasis" => budget_cost_basis & untyped,
1129
- ?"useAdjustedSpend" => bool
1151
+ ?"useAdjustedSpend" => bool,
1152
+ ?"measure" => budget_measure,
1153
+ ?"usageUnit" => String,
1154
+ ?"usageAmount" => Numeric,
1155
+ ?"period" => budget_period & (budget_recurring_period | budget_explicit_periods),
1156
+ ?"parentBudgetId" => String
1157
+ }
1158
+
1159
+ # What the budget counts. `cost` (the default) is money in `currency`, against
1160
+ # `amountCents`. `usage` sums the cost rows' usage quantity in `usageUnit`
1161
+ # against `usageAmount` (tokens, GB, instance-hours, requests: whatever the
1162
+ # providers report; list them with GET
1163
+ # /costs/dimensions?dimension=usage-units). Units are matched exactly and
1164
+ # never converted. A usage budget takes no scenario model and no billing
1165
+ # rules.
1166
+ #
1167
+ # Spec schema: `BudgetMeasure`.
1168
+ type budget_measure = "cost" | "usage"
1169
+
1170
+ # Which periods the budget covers. Omitted (or null) is the calendar month.
1171
+ # `recurring` repeats every `interval` × `unit` from `startDate`; `explicit`
1172
+ # lists the periods with an amount each, and the top-level amount is then
1173
+ # ignored. Thresholds fire once per period; days outside every period are not
1174
+ # measured.
1175
+ #
1176
+ # Spec schema: `BudgetPeriod`.
1177
+ type budget_period = budget_recurring_period | budget_explicit_periods | nil
1178
+
1179
+ # Spec schema: `BudgetRecurringPeriod`.
1180
+ type budget_recurring_period = {
1181
+ "kind" => "recurring",
1182
+ "unit" => "day" | "week" | "month" | "quarter" | "year",
1183
+ "interval" => Integer,
1184
+ "startDate" => String
1130
1185
  }
1131
1186
 
1132
1187
  # Spec schema: `BudgetThreshold`.
@@ -1156,7 +1211,20 @@ module Infrawrench
1156
1211
  "thresholdPercent" => Integer,
1157
1212
  "triggeredAt" => String
1158
1213
  }],
1159
- "placements" => Array[{ "widgetId" => String, "dashboardId" => String, "dashboardName" => String }]
1214
+ "placements" => Array[{ "widgetId" => String, "dashboardId" => String, "dashboardName" => String }],
1215
+ "measure" => budget_measure,
1216
+ "usageUnit" => String | nil,
1217
+ "usageAmount" => Numeric | nil,
1218
+ "period" => budget_period,
1219
+ "parentBudgetId" => String | nil,
1220
+ "periodStart" => String | nil,
1221
+ "periodEnd" => String | nil,
1222
+ "periodLimit" => Numeric | nil,
1223
+ "actualUsage" => Numeric | nil,
1224
+ "forecastUsage" => Numeric | nil,
1225
+ "rolledUp" => bool,
1226
+ "childCount" => Integer,
1227
+ "hierarchyWarnings" => Array[budget_hierarchy_warning]
1160
1228
  }
1161
1229
 
1162
1230
  # Spec schema: `BusinessMetric`.
@@ -1743,6 +1811,7 @@ module Infrawrench
1743
1811
  "chargeTypes" => bool,
1744
1812
  "amortization" => bool,
1745
1813
  "estimated" => bool,
1814
+ "granularity" => "daily" | "hourly",
1746
1815
  "costLastPolledAt" => String | nil,
1747
1816
  "costBackfilledAt" => String | nil,
1748
1817
  "costPollFailureCount" => Integer,
@@ -1919,6 +1988,16 @@ module Infrawrench
1919
1988
  # Spec schema: `CostBasis`.
1920
1989
  type cost_basis = "cash" | "amortized"
1921
1990
 
1991
+ # Time bucket of the x axis. Weeks start on Monday and quarters on the first
1992
+ # of January, April, July and October (UTC). `cumulative` is the older
1993
+ # spelling of daily bins with `cumulative: true`, kept so stored configs and
1994
+ # existing clients keep working. `hourly` is refused with a 400 while no
1995
+ # connected account stores hourly cost rows: every provider's spend is
1996
+ # collected per UTC day today (see `granularity` on /costs/status).
1997
+ #
1998
+ # Spec schema: `CostBinning`.
1999
+ type cost_binning = "hourly" | "daily" | "weekly" | "monthly" | "quarterly" | "cumulative"
2000
+
1922
2001
  # Spec schema: `CostCanvas`.
1923
2002
  type cost_canvas = {
1924
2003
  "id" => String,
@@ -2332,8 +2411,8 @@ module Infrawrench
2332
2411
  # Spec schema: `CostGraphConfig`.
2333
2412
  type cost_graph_config = {
2334
2413
  "version" => Numeric,
2335
- "chartType" => "stacked_bar" | "multi_bar" | "line" | "area" | "pie",
2336
- "binning" => "daily" | "weekly" | "monthly" | "cumulative",
2414
+ "chartType" => "stacked_bar" | "multi_bar" | "line" | "area" | "pie" | "donut" | "table",
2415
+ "binning" => cost_binning,
2337
2416
  "dateRange" => cost_date_range,
2338
2417
  "groupBy" => "none"
2339
2418
  | "provider"
@@ -2351,9 +2430,24 @@ module Infrawrench
2351
2430
  ?"comparePreviousPeriod" => bool,
2352
2431
  ?"showForecast" => bool,
2353
2432
  ?"scenarioModelId" => String,
2354
- ?"costBasis" => "cash" | "amortized"
2433
+ ?"costBasis" => "cash" | "amortized",
2434
+ ?"measure" => cost_measure,
2435
+ ?"usageUnit" => String,
2436
+ ?"cumulative" => bool
2355
2437
  }
2356
2438
 
2439
+ # What the Y axis sums. `cost` (the default) is money per currency. `usage`
2440
+ # sums the usage quantity providers report beside the money and requires
2441
+ # `usageUnit`, because quantities in different units cannot be added. `count`
2442
+ # is how many distinct values of the `groupBy` dimension had nonzero cost in
2443
+ # each bin (how many services were billed each day) and requires a `groupBy`;
2444
+ # its range total is a distinct count, not a sum of the bins. `usage` and
2445
+ # `count` cannot carry a forecast, a scenario or billing rules (a 400),
2446
+ # `count` cannot be cumulative, and a display currency is ignored for both.
2447
+ #
2448
+ # Spec schema: `CostMeasure`.
2449
+ type cost_measure = "cost" | "usage" | "count"
2450
+
2357
2451
  # Spec schema: `CostPushRequest`.
2358
2452
  type cost_push_request = { "source" => String, "rows" => Array[pushed_cost_row] }
2359
2453
 
@@ -2364,7 +2458,7 @@ module Infrawrench
2364
2458
  type cost_query_request = {
2365
2459
  "from" => String,
2366
2460
  "to" => String,
2367
- "binning" => "daily" | "weekly" | "monthly" | "cumulative",
2461
+ "binning" => cost_binning,
2368
2462
  "groupBy" => "none"
2369
2463
  | "provider"
2370
2464
  | "account"
@@ -2384,7 +2478,10 @@ module Infrawrench
2384
2478
  ?"scenarioModelId" => String,
2385
2479
  ?"costBasis" => cost_basis,
2386
2480
  ?"chargeTypes" => Array[cost_charge_type],
2387
- ?"adjusted" => bool
2481
+ ?"adjusted" => bool,
2482
+ ?"measure" => cost_measure,
2483
+ ?"usageUnit" => String,
2484
+ ?"cumulative" => bool
2388
2485
  }
2389
2486
 
2390
2487
  # Spec schema: `CostQueryResponse`.
@@ -2396,7 +2493,9 @@ module Infrawrench
2396
2493
  "currencies" => Array[String],
2397
2494
  "totals" => Hash[String, Numeric],
2398
2495
  ?"previousTotals" => Hash[String, Numeric],
2399
- ?"adjustment" => cost_adjustment_summary
2496
+ ?"adjustment" => cost_adjustment_summary,
2497
+ ?"measure" => "usage" | "count",
2498
+ ?"usageUnit" => String
2400
2499
  }
2401
2500
 
2402
2501
  # Spec schema: `CostQuerySeries`.
@@ -2458,6 +2557,14 @@ module Infrawrench
2458
2557
  # Spec schema: `CostReportPlacement`.
2459
2558
  type cost_report_placement = { "widgetId" => String, "dashboardId" => String, "dashboardName" => String }
2460
2559
 
2560
+ # Spec schema: `CostReportRunOverrides`.
2561
+ type cost_report_run_overrides = {
2562
+ ?"measure" => cost_measure,
2563
+ ?"usageUnit" => String,
2564
+ ?"binning" => cost_binning,
2565
+ ?"cumulative" => bool
2566
+ }
2567
+
2461
2568
  # Spec schema: `CostReportRunResult`.
2462
2569
  type cost_report_run_result = {
2463
2570
  "reportId" => String,
@@ -8539,7 +8646,7 @@ module Infrawrench
8539
8646
  type unit_cost_query_request = {
8540
8647
  "from" => String,
8541
8648
  "to" => String,
8542
- "binning" => "daily" | "weekly" | "monthly" | "cumulative",
8649
+ "binning" => "hourly" | "daily" | "weekly" | "monthly" | "quarterly" | "cumulative",
8543
8650
  ?"mode" => "unit_cost" | "margin",
8544
8651
  ?"filters" => Array[business_metric_scope_term],
8545
8652
  ?"query" => String,
@@ -8560,7 +8667,7 @@ module Infrawrench
8560
8667
  "currency" => String | nil
8561
8668
  },
8562
8669
  "mode" => "unit_cost" | "margin",
8563
- "binning" => "daily" | "weekly" | "monthly" | "cumulative",
8670
+ "binning" => "hourly" | "daily" | "weekly" | "monthly" | "quarterly" | "cumulative",
8564
8671
  "series" => Array[unit_cost_series],
8565
8672
  ?"conversion" => {
8566
8673
  "displayCurrency" => String,
@@ -9003,7 +9110,7 @@ module Infrawrench
9003
9110
  def create: (body: budget_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> budget_full
9004
9111
  def delete: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> ok
9005
9112
  def events: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[budget_alert_event]
9006
- def get: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> budget_full
9113
+ def get: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> budget_with_status
9007
9114
  def list: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[budget_with_status]
9008
9115
  def update: (id: String, body: budget_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> budget_full
9009
9116
  end
@@ -9230,7 +9337,7 @@ module Infrawrench
9230
9337
  def get: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_report
9231
9338
  def list: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> Array[cost_report]
9232
9339
  def pdf: (id: String, ?org_id: String?, ?tz: String?, ?request_options: Hash[Symbol, untyped]?) -> String
9233
- def run: (id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_report_run_result
9340
+ def run: (id: String, ?org_id: String?, ?body: cost_report_run_overrides?, ?request_options: Hash[Symbol, untyped]?) -> cost_report_run_result
9234
9341
  def update: (id: String, body: cost_report_input, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_report
9235
9342
  end
9236
9343
 
@@ -9279,7 +9386,7 @@ module Infrawrench
9279
9386
  attr_reader anomaly_settings: CostsAnomalySettingsNamespace
9280
9387
  attr_reader efficiency_alert_settings: CostsEfficiencyAlertSettingsNamespace
9281
9388
  def initialize: (Transport) -> void
9282
- def dimensions: (dimension: "provider" | "account" | "service" | "region" | "resource" | "tag" | "charge_type" | "commitment" | "tag-keys", ?org_id: String?, ?tag_key: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_dimension_values
9389
+ def dimensions: (dimension: "provider" | "account" | "service" | "region" | "resource" | "tag" | "charge_type" | "commitment" | "tag-keys" | "usage-units", ?org_id: String?, ?tag_key: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_dimension_values
9283
9390
  def efficiency_alerts: (?org_id: String?, ?kind: "commitment_expiry" | "commitment_idle" | "unit_cost_regression"?, ?limit: Integer?, ?request_options: Hash[Symbol, untyped]?) -> { "events" => Array[efficiency_alert_event] }
9284
9391
  def focus_export: (body: focus_export_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> String
9285
9392
  def query: (body: cost_query_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_query_response
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: infrawrench-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.56.0
4
+ version: 1.58.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Infrawrench LLC
@@ -11,7 +11,7 @@ bindir: bin
11
11
  cert_chain: []
12
12
  date: 2026-10-05 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Generated Ruby client for the Infrawrench API (v1.56.0). Covers the published
14
+ description: Generated Ruby client for the Infrawrench API (v1.58.0). Covers the published
15
15
  API surface only — operations marked x-internal in the spec are not generated. No
16
16
  runtime dependencies.
17
17
  email:
@@ -58,5 +58,5 @@ requirements: []
58
58
  rubygems_version: 3.5.22
59
59
  signing_key:
60
60
  specification_version: 4
61
- summary: Generated Ruby client for the Infrawrench API (v1.56.0).
61
+ summary: Generated Ruby client for the Infrawrench API (v1.58.0).
62
62
  test_files: []