infrawrench-sdk 0.23.0 → 0.24.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: '08dda7ce89a7fe2f3fa7ac4a5148730d4213ee49bd79d2cd0263e24680353414'
4
- data.tar.gz: 86b775f9ff8eb7de1ee019f6f3b91d4667a0c7fd6f64a820c6f98539fe6edbf8
3
+ metadata.gz: 2f3c7d4c3ca8aec3a7c72da6125f69114fcc6c7883caff63ab6243ad8fe78be6
4
+ data.tar.gz: 7462964dfad09e885314cf44a44de18918e8a1d917337ea29c4bd194283d9874
5
5
  SHA512:
6
- metadata.gz: 67428f17d99e56a2af1abb36caf76be890238f3ad7a0dd5753af50b07620f4e1095b6014cc3d55da29733283a0024d5748a1d360e311e41085945cfca806601e
7
- data.tar.gz: 7ef24085616046855a2efe885f313dc5959da6ad0fbba75fb7887c29a26e050e881320b9f144de3c2155291d9b7a2aac67c2f03cc5e9f19cf015ee9dad8a92b2
6
+ metadata.gz: 0771d27c7c0aa99e4fccc1766cb84321e51cdf7847578e1de04a02bb85f0e838d5d2fa0a7526891cf30d6858962a85c29ef728c019a8b2387534fd52ad5acfe1
7
+ data.tar.gz: 0145aca866c89bc321c346867174a154f76ba9049cb949e4e514241b992a192933eab7d7894387b8dc988f3a341c554215b5306aebd2b85aba1f8ee8f0c0e6f3
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # infrawrench-sdk
2
2
 
3
- Generated Ruby client for the Infrawrench API (API version `0.23.0`).
3
+ Generated Ruby client for the Infrawrench API (API version `0.24.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
- 242 schemas, as RBS type aliases that steep and TypeProf can read.
44
+ 243 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 v0.23.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.24.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 0.23.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.24.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 (v0.23.0)."
21
- spec.description = "Generated Ruby client for the Infrawrench API (v0.23.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 (v0.24.0)."
21
+ spec.description = "Generated Ruby client for the Infrawrench API (v0.24.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 v0.23.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.24.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 0.23.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.24.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -1457,6 +1457,33 @@ module Infrawrench
1457
1457
  @transport = transport
1458
1458
  end
1459
1459
 
1460
+ # List recently detected cost anomalies
1461
+ #
1462
+ # Spend anomalies detected by the daily background pass: days where a
1463
+ # provider's or service's spend exceeded its trailing 28-day baseline by a
1464
+ # statistical threshold (mean + N·stddev, with an absolute floor to ignore
1465
+ # penny-scale noise). Newest day first, capped at 200 rows.
1466
+ #
1467
+ # GET /api/org/{orgId}/costs/anomalies
1468
+ #
1469
+ # Raises on 400: Bad request
1470
+ #
1471
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1472
+ # constructed with.
1473
+ # @param days [String, nil] Window in days over anomalous days, 1-90. Defaults to 30.
1474
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1475
+ # @return [Hash] Parsed JSON, shaped as `Hash` — see `sig/infrawrench/sdk.rbs`.
1476
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
1477
+ def anomalies(org_id: nil, days: nil, request_options: nil)
1478
+ @transport.request(
1479
+ http_method: "GET",
1480
+ path: "/api/org/{orgId}/costs/anomalies",
1481
+ path_params: { "orgId" => org_id },
1482
+ query: { "days" => days },
1483
+ request_options: request_options
1484
+ )
1485
+ end
1486
+
1460
1487
  # List distinct values for a cost dimension
1461
1488
  #
1462
1489
  # Feeds the filter and group-by pickers. Pass dimension=tag-keys for tag
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v0.23.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.24.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 0.23.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.24.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 v0.23.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.24.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 0.23.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.24.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 v0.23.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.24.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 0.23.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.24.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 = "0.23.0"
18
+ VERSION = "0.24.0"
19
19
  end
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v0.23.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.24.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 0.23.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.24.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 v0.23.0 | MIT | Copyright (c) 2026 Infrawrench LLC
1
+ # infrawrench-sdk v0.24.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 0.23.0).
4
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.24.0).
5
5
  #
6
6
  # DO NOT EDIT. Regenerate with:
7
7
  # pnpm --filter @infrawrench/web generate:sdk
@@ -448,6 +448,20 @@ module Infrawrench
448
448
  "coverage" => { "firstDay" => String, "lastDay" => String } | nil
449
449
  }
450
450
 
451
+ # Spec schema: `CostAnomaly`.
452
+ type cost_anomaly = {
453
+ "id" => String,
454
+ "day" => String,
455
+ "dimension" => "provider" | "service",
456
+ "dimensionKey" => String,
457
+ "currency" => String,
458
+ "actualCents" => Integer,
459
+ "baselineCents" => Integer,
460
+ "thresholdCents" => Integer,
461
+ "detectedAt" => String,
462
+ "notifiedAt" => String | nil
463
+ }
464
+
451
465
  # Spec schema: `CostDimension`.
452
466
  type cost_dimension = "provider" | "account" | "service" | "region" | "resource" | "tag"
453
467
 
@@ -1073,6 +1087,7 @@ module Infrawrench
1073
1087
  "urlHint" => String,
1074
1088
  "syncIncidents" => bool,
1075
1089
  "budgetAlerts" => bool,
1090
+ "anomalyAlerts" => bool,
1076
1091
  "workflowPages" => bool,
1077
1092
  "weeklyDigest" => bool
1078
1093
  }
@@ -1083,6 +1098,7 @@ module Infrawrench
1083
1098
  "url" => String,
1084
1099
  ?"syncIncidents" => bool,
1085
1100
  ?"budgetAlerts" => bool,
1101
+ ?"anomalyAlerts" => bool,
1086
1102
  ?"workflowPages" => bool,
1087
1103
  ?"weeklyDigest" => bool
1088
1104
  }
@@ -1092,6 +1108,7 @@ module Infrawrench
1092
1108
  ?"label" => String,
1093
1109
  ?"syncIncidents" => bool,
1094
1110
  ?"budgetAlerts" => bool,
1111
+ ?"anomalyAlerts" => bool,
1095
1112
  ?"workflowPages" => bool,
1096
1113
  ?"weeklyDigest" => bool
1097
1114
  }
@@ -2076,6 +2093,7 @@ module Infrawrench
2076
2093
  "isPrivate" => bool,
2077
2094
  "syncIncidents" => bool,
2078
2095
  "budgetAlerts" => bool,
2096
+ "anomalyAlerts" => bool,
2079
2097
  "workflowPages" => bool,
2080
2098
  "weeklyDigest" => bool
2081
2099
  }
@@ -2088,6 +2106,7 @@ module Infrawrench
2088
2106
  ?"isPrivate" => bool,
2089
2107
  ?"syncIncidents" => bool,
2090
2108
  ?"budgetAlerts" => bool,
2109
+ ?"anomalyAlerts" => bool,
2091
2110
  ?"workflowPages" => bool,
2092
2111
  ?"weeklyDigest" => bool
2093
2112
  }
@@ -2096,6 +2115,7 @@ module Infrawrench
2096
2115
  type slack_channel_update = {
2097
2116
  ?"syncIncidents" => bool,
2098
2117
  ?"budgetAlerts" => bool,
2118
+ ?"anomalyAlerts" => bool,
2099
2119
  ?"workflowPages" => bool,
2100
2120
  ?"weeklyDigest" => bool
2101
2121
  }
@@ -2460,6 +2480,7 @@ module Infrawrench
2460
2480
 
2461
2481
  class CostsNamespace
2462
2482
  def initialize: (Transport) -> void
2483
+ def anomalies: (?org_id: String?, ?days: String?, ?request_options: Hash[Symbol, untyped]?) -> { "anomalies" => Array[cost_anomaly] }
2463
2484
  def dimensions: (dimension: "provider" | "account" | "service" | "region" | "resource" | "tag" | "tag-keys", ?org_id: String?, ?tag_key: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_dimension_values
2464
2485
  def query: (body: cost_query_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_query_response
2465
2486
  def rows: (body: cost_push_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> cost_push_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: 0.23.0
4
+ version: 0.24.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-07-31 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Generated Ruby client for the Infrawrench API (v0.23.0). Covers the published
14
+ description: Generated Ruby client for the Infrawrench API (v0.24.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 (v0.23.0).
61
+ summary: Generated Ruby client for the Infrawrench API (v0.24.0).
62
62
  test_files: []