infrawrench-sdk 1.87.0 → 1.88.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: 4100c2cc3d25e49015e4cf34903ba29eb44bc2cef006963788f229750aacf14e
4
- data.tar.gz: a8da964d28cf5fc6ce7d24e53f849e3422fef4591e2149d4c9558456453d8407
3
+ metadata.gz: b834dc51f757fb6ddd812e5794da5b4a32545e0bd4e850a0401ce70c712b3445
4
+ data.tar.gz: c3457cb5e461549a6836684185079f45505278afbd9fa7698330232ffb398e9f
5
5
  SHA512:
6
- metadata.gz: a97621223e21a695f671b799caf39390674461f51b010a1c8aaba6729905f9353f8aa638d9be9a0e92ef3e6ab7d389f115b6a53a3357953e01830679ac7dadeb
7
- data.tar.gz: 55d9665772eab74166f5dc5eba737830b44b5ebf4e2667da5b62283f3b735b5968274c45463884b85b799af8d6d750dc027f217ea7e9729356896963eaf4b0f7
6
+ metadata.gz: 333a2a7f130cd4302994b351d4e2ee17a7543c871951069a06efff3ab7172da2dda427636943a9f791b2c0455382d6a11fc06f7ca429a129900fd6a3e747f068
7
+ data.tar.gz: 73dd5507bfd205a6d04ba3eb61b02970ea82b6967748a950642e33a06088f3bb4563831020061078a52626ee8c4d8cf256d7a06e78da0ccb496b2db213ec2176
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.87.0`).
3
+ Generated Ruby client for the Infrawrench API (API version `1.88.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
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.87.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.88.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.87.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.88.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.87.0)."
21
- spec.description = "Generated Ruby client for the Infrawrench API (v1.87.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.88.0)."
21
+ spec.description = "Generated Ruby client for the Infrawrench API (v1.88.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.87.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.88.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.87.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.88.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -2917,44 +2917,16 @@ module Infrawrench
2917
2917
  @transport = transport
2918
2918
  end
2919
2919
 
2920
- # Run a read-only SQL query over AWS pricing data
2920
+ # Run a read-only SQL query over instance pricing data (deprecated path)
2921
2921
  #
2922
- # Runs one read-only ClickHouse statement against the AWS pricing warehouse:
2923
- # every instance type's specs and every price AWS has listed for it (on
2924
- # demand, reserved and EC2 spot), in every region, with history, for EC2,
2925
- # RDS, ElastiCache, OpenSearch, Redshift, DocumentDB, Neptune, MemoryDB,
2926
- # DAX, SageMaker, EMR and GameLift. It is the data behind
2927
- # instances.infrawrench.com. Needs no scope. Use `GET
2928
- # /api/v1/aws-pricing/schema` for the columns, or the tables below; filter
2929
- # `prices` on `platform` and `current`.
2930
- #
2931
- # - `prices`: Every price AWS has listed for an instance type, one row per
2932
- # period a price held. `current = true` (equivalently `valid_to IS NULL`) is
2933
- # the price on offer now; filter on it unless the question is about history.
2934
- # A product's price is identified by (platform, instance_type, region,
2935
- # pricing, lease, offering_class, purchase_option) plus its variant columns,
2936
- # so always fix the variant columns that matter for the platform (see the
2937
- # defaults in the notes) or you will mix e.g. Windows and Linux prices.
2938
- # - `instance_types`: One row per instance type per platform with its
2939
- # current specs. EC2 spot prices use the `ec2` rows. Specs AWS does not list
2940
- # are NULL or `''`; `attributes` has every attribute AWS publishes, as
2941
- # strings.
2942
- # - `attribute_changes`: History of instance attributes: the values each
2943
- # type was first listed with, then every change. Use it for questions like
2944
- # when a spec changed.
2945
- # - `regions`: Region codes and the names AWS gives them, per platform's
2946
- # price list. Use it to turn a city or country into a region code.
2947
- # - `sync_state`: When each bundle was loaded and which AWS price lists it
2948
- # covers; `max(price_list_to)` is how fresh the data is.
2949
- # - `service_events`: Every incident AWS posted on its public Health
2950
- # Dashboard (status page), 2008 to now: one row per event, with when it was
2951
- # posted, when AWS says the impact began and ended, and every update AWS
2952
- # wrote. Only events AWS chose to post publicly; account-specific issues
2953
- # never appear, so no event does not prove no impact. Use it for questions
2954
- # about outages, incidents and how reliable a service or region has been.
2922
+ # Deprecated alias of `POST /api/v1/instance-pricing/query`, its path before
2923
+ # the warehouse covered clouds other than AWS; it behaves identically. Use
2924
+ # the new path.
2955
2925
  #
2956
2926
  # POST /api/v1/aws-pricing/query
2957
2927
  #
2928
+ # Deprecated.
2929
+ #
2958
2930
  # Raises on 400: The query was refused: not read-only, more than one
2959
2931
  # statement, or ClickHouse's own error (unknown column, syntax), with its
2960
2932
  # message
@@ -2981,84 +2953,16 @@ module Infrawrench
2981
2953
  )
2982
2954
  end
2983
2955
 
2984
- # Describe the AWS pricing tables
2985
- #
2986
- # Every table and column of the AWS pricing warehouse with what it holds,
2987
- # the notes a correct query depends on, and how fresh each source is. Needs
2988
- # no scope.
2989
- #
2990
- # Tables:
2956
+ # Describe the instance pricing tables (deprecated path)
2991
2957
  #
2992
- # - `prices`: Every price AWS has listed for an instance type, one row per
2993
- # period a price held. `current = true` (equivalently `valid_to IS NULL`) is
2994
- # the price on offer now; filter on it unless the question is about history.
2995
- # A product's price is identified by (platform, instance_type, region,
2996
- # pricing, lease, offering_class, purchase_option) plus its variant columns,
2997
- # so always fix the variant columns that matter for the platform (see the
2998
- # defaults in the notes) or you will mix e.g. Windows and Linux prices.
2999
- # - `instance_types`: One row per instance type per platform with its
3000
- # current specs. EC2 spot prices use the `ec2` rows. Specs AWS does not list
3001
- # are NULL or `''`; `attributes` has every attribute AWS publishes, as
3002
- # strings.
3003
- # - `attribute_changes`: History of instance attributes: the values each
3004
- # type was first listed with, then every change. Use it for questions like
3005
- # when a spec changed.
3006
- # - `regions`: Region codes and the names AWS gives them, per platform's
3007
- # price list. Use it to turn a city or country into a region code.
3008
- # - `sync_state`: When each bundle was loaded and which AWS price lists it
3009
- # covers; `max(price_list_to)` is how fresh the data is.
3010
- # - `service_events`: Every incident AWS posted on its public Health
3011
- # Dashboard (status page), 2008 to now: one row per event, with when it was
3012
- # posted, when AWS says the impact began and ended, and every update AWS
3013
- # wrote. Only events AWS chose to post publicly; account-specific issues
3014
- # never appear, so no event does not prove no impact. Use it for questions
3015
- # about outages, incidents and how reliable a service or region has been.
3016
- #
3017
- # Notes:
3018
- #
3019
- # - All prices are USD. Timestamps are UTC DateTime.
3020
- # - Usual defaults when a question does not say otherwise: for ec2,
3021
- # operating_system = 'Linux', tenancy = 'Shared', pre_installed_sw = 'NA',
3022
- # capacity_status = 'Used', license_model = 'No License required' and
3023
- # pricing = 'on_demand'; for rds, deployment_option = 'Single-AZ', one
3024
- # database_engine (PostgreSQL if unsaid) and usage_type NOT LIKE '%Unused%'
3025
- # (those rows price unused capacity reservations); for elasticache and
3026
- # memorydb, cache_engine = 'Redis' (or 'Valkey') and usage_type =
3027
- # 'NodeUsage'; region us-east-1.
3028
- # - EC2 Windows: the price AWS quotes for Windows (license included) is
3029
- # license_model = 'No License required'. The `License Included -
3030
- # Infrastructure` and `Bring your own license` rows price only the compute,
3031
- # at the Linux rate, so never quote them as the Windows price unless the
3032
- # question is about bringing a license. Windows with SQL Server is
3033
- # pre_installed_sw = 'SQL Web', 'SQL Std' or 'SQL Ent'.
3034
- # - "Cheapest" means the lowest effective_hourly_usd among current rows.
3035
- # Hourly to monthly: x 730.
3036
- # - Spot rows (pricing = 'spot') only exist for ec2 with operating_system
3037
- # 'Linux' or 'Windows', and leave tenancy, license_model, pre_installed_sw
3038
- # and capacity_status as '': drop those ec2 defaults for spot (pricing =
3039
- # 'spot' OR (tenancy = 'Shared' AND ...)). A spot price is the lowest across
3040
- # the region's availability zones, as AWS's Spot pricing page shows it. Spot
3041
- # history starts 2026-08-03 with a price every hour (for the 17 main
3042
- # regions; the others and Local Zones start 2026-11-01), and has one every 6
3043
- # hours since 2026-11-01, so aggregate it (by day, say) rather than listing
3044
- # rows.
3045
- # - Reserved rows: an All Upfront term has hourly_usd = 0 and the whole cost
3046
- # in upfront_usd; compare reserved and on-demand on effective_hourly_usd.
3047
- # - Use instance_types for specs and to list types; join prices on
3048
- # (platform, instance_type) when you need specs it does not carry.
3049
- # - prices is large (millions of rows for ec2): always filter on platform
3050
- # and current (or a time range), and aggregate or LIMIT.
3051
- # - service_events is AWS's public status page history, not a measured
3052
- # uptime: AWS publishes no availability percentage. To estimate downtime,
3053
- # sum dateDiff('minute', impact_started_at, impact_ended_at) (fall back to
3054
- # posted_at and resolved_at when those are NULL) over events with severity
3055
- # 'degraded' or 'disrupted', and say that it covers only events AWS posted
3056
- # publicly. An event filed under `multipleservices` or another service can
3057
- # still have hit the one asked about: also match
3058
- # mapContains(impacted_services, '<service>-<region>').
2958
+ # Deprecated alias of `GET /api/v1/instance-pricing/schema`, its path before
2959
+ # the warehouse covered clouds other than AWS; it behaves identically. Use
2960
+ # the new path.
3059
2961
  #
3060
2962
  # GET /api/v1/aws-pricing/schema
3061
2963
  #
2964
+ # Deprecated.
2965
+ #
3062
2966
  # Raises on 401: Unauthenticated
3063
2967
  #
3064
2968
  # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
@@ -14752,6 +14656,204 @@ module Infrawrench
14752
14656
  end
14753
14657
  end
14754
14658
 
14659
+ # `client.instance_pricing`
14660
+ class InstancePricingNamespace
14661
+ # @api private
14662
+ # @param transport [Transport]
14663
+ def initialize(transport)
14664
+ @transport = transport
14665
+ end
14666
+
14667
+ # Run a read-only SQL query over instance pricing data
14668
+ #
14669
+ # Runs one read-only ClickHouse statement against the instance pricing
14670
+ # warehouse: every instance type's specs and every price its provider has
14671
+ # listed for it (on demand, committed terms and EC2 spot), in every region,
14672
+ # with history. It covers AWS EC2, RDS, ElastiCache, OpenSearch, Redshift,
14673
+ # DocumentDB, Neptune, MemoryDB, DAX, SageMaker, EMR and GameLift, RunPod
14674
+ # GPU types and CPU pods, and Alibaba Cloud ECS. It is the data behind
14675
+ # instances.infrawrench.com. Needs no scope. Use `GET
14676
+ # /api/v1/instance-pricing/schema` for the columns, or the tables below;
14677
+ # filter `prices` on `platform` and `current`.
14678
+ #
14679
+ # - `prices`: Every price the provider has listed for an instance type, one
14680
+ # row per period a price held. `current = true` (equivalently `valid_to IS
14681
+ # NULL`) is the price on offer now; filter on it unless the question is
14682
+ # about history. A product's price is identified by (platform,
14683
+ # instance_type, region, pricing, lease, offering_class, purchase_option)
14684
+ # plus its variant columns, so always fix the variant columns that matter
14685
+ # for the platform (see the defaults in the notes) or you will mix e.g.
14686
+ # Windows and Linux prices.
14687
+ # - `instance_types`: One row per instance type per platform with its
14688
+ # current specs. EC2 spot prices use the `ec2` rows. Specs the provider does
14689
+ # not list are NULL or `''`; `attributes` has every attribute it publishes,
14690
+ # as strings (AWS's price list keys, Alibaba's DescribeInstanceTypes fields
14691
+ # such as `CpuCoreCount` and `CpuOptions.ThreadsPerCore`, RunPod's GraphQL
14692
+ # fields such as `maxGpuCountSecureCloud` and `dataCenters`).
14693
+ # - `attribute_changes`: History of instance attributes: the values each
14694
+ # type was first listed with, then every change. Use it for questions like
14695
+ # when a spec changed.
14696
+ # - `regions`: Region codes and the names the provider gives them, per
14697
+ # source. Use it to turn a city or country into a region code. Codes repeat
14698
+ # across clouds (Alibaba also has `us-east-1`), so filter on source.
14699
+ # - `sync_state`: When each bundle was loaded and which price lists it
14700
+ # covers; `max(price_list_to)` is how fresh the data is.
14701
+ # - `service_events`: Every incident AWS posted on its public Health
14702
+ # Dashboard (status page), 2008 to now: one row per event, with when it was
14703
+ # posted, when AWS says the impact began and ended, and every update AWS
14704
+ # wrote. Only events AWS chose to post publicly; account-specific issues
14705
+ # never appear, so no event does not prove no impact. Use it for questions
14706
+ # about outages, incidents and how reliable a service or region has been.
14707
+ #
14708
+ # POST /api/v1/instance-pricing/query
14709
+ #
14710
+ # Raises on 400: The query was refused: not read-only, more than one
14711
+ # statement, or ClickHouse's own error (unknown column, syntax), with its
14712
+ # message
14713
+ #
14714
+ # Raises on 401: Unauthenticated
14715
+ #
14716
+ # Raises on 502: The warehouse could not answer; try again shortly
14717
+ #
14718
+ # Raises on 503: A backing service this endpoint depends on is not available
14719
+ #
14720
+ # Raises on 504: The query ran longer than 30 seconds
14721
+ #
14722
+ # @param body [Hash] Request body, shaped as `AwsPricingQueryRequest`.
14723
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14724
+ # @return [Hash] Parsed JSON, shaped as `AwsPricingQueryResult` — see
14725
+ # `sig/infrawrench/sdk.rbs`.
14726
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14727
+ def query(body:, request_options: nil)
14728
+ @transport.request(
14729
+ http_method: "POST",
14730
+ path: "/api/v1/instance-pricing/query",
14731
+ body: body,
14732
+ request_options: request_options
14733
+ )
14734
+ end
14735
+
14736
+ # Describe the instance pricing tables
14737
+ #
14738
+ # Every table and column of the instance pricing warehouse with what it
14739
+ # holds, the notes a correct query depends on, and how fresh each source is.
14740
+ # Needs no scope.
14741
+ #
14742
+ # Tables:
14743
+ #
14744
+ # - `prices`: Every price the provider has listed for an instance type, one
14745
+ # row per period a price held. `current = true` (equivalently `valid_to IS
14746
+ # NULL`) is the price on offer now; filter on it unless the question is
14747
+ # about history. A product's price is identified by (platform,
14748
+ # instance_type, region, pricing, lease, offering_class, purchase_option)
14749
+ # plus its variant columns, so always fix the variant columns that matter
14750
+ # for the platform (see the defaults in the notes) or you will mix e.g.
14751
+ # Windows and Linux prices.
14752
+ # - `instance_types`: One row per instance type per platform with its
14753
+ # current specs. EC2 spot prices use the `ec2` rows. Specs the provider does
14754
+ # not list are NULL or `''`; `attributes` has every attribute it publishes,
14755
+ # as strings (AWS's price list keys, Alibaba's DescribeInstanceTypes fields
14756
+ # such as `CpuCoreCount` and `CpuOptions.ThreadsPerCore`, RunPod's GraphQL
14757
+ # fields such as `maxGpuCountSecureCloud` and `dataCenters`).
14758
+ # - `attribute_changes`: History of instance attributes: the values each
14759
+ # type was first listed with, then every change. Use it for questions like
14760
+ # when a spec changed.
14761
+ # - `regions`: Region codes and the names the provider gives them, per
14762
+ # source. Use it to turn a city or country into a region code. Codes repeat
14763
+ # across clouds (Alibaba also has `us-east-1`), so filter on source.
14764
+ # - `sync_state`: When each bundle was loaded and which price lists it
14765
+ # covers; `max(price_list_to)` is how fresh the data is.
14766
+ # - `service_events`: Every incident AWS posted on its public Health
14767
+ # Dashboard (status page), 2008 to now: one row per event, with when it was
14768
+ # posted, when AWS says the impact began and ended, and every update AWS
14769
+ # wrote. Only events AWS chose to post publicly; account-specific issues
14770
+ # never appear, so no event does not prove no impact. Use it for questions
14771
+ # about outages, incidents and how reliable a service or region has been.
14772
+ #
14773
+ # Notes:
14774
+ #
14775
+ # - All prices are USD (Alibaba's from its international site). Timestamps
14776
+ # are UTC DateTime.
14777
+ # - Usual defaults when a question does not say otherwise: for ec2,
14778
+ # operating_system = 'Linux', tenancy = 'Shared', pre_installed_sw = 'NA',
14779
+ # capacity_status = 'Used', license_model = 'No License required' and
14780
+ # pricing = 'on_demand'; for rds, deployment_option = 'Single-AZ', one
14781
+ # database_engine (PostgreSQL if unsaid) and usage_type NOT LIKE '%Unused%'
14782
+ # (those rows price unused capacity reservations); for elasticache and
14783
+ # memorydb, cache_engine = 'Redis' (or 'Valkey') and usage_type =
14784
+ # 'NodeUsage'; region us-east-1.
14785
+ # - EC2 Windows: the price AWS quotes for Windows (license included) is
14786
+ # license_model = 'No License required'. The `License Included -
14787
+ # Infrastructure` and `Bring your own license` rows price only the compute,
14788
+ # at the Linux rate, so never quote them as the Windows price unless the
14789
+ # question is about bringing a license. Windows with SQL Server is
14790
+ # pre_installed_sw = 'SQL Web', 'SQL Std' or 'SQL Ent'.
14791
+ # - "Cheapest" means the lowest effective_hourly_usd among current rows.
14792
+ # Hourly to monthly: x 730.
14793
+ # - Spot rows (pricing = 'spot') only exist for ec2 with operating_system
14794
+ # 'Linux' or 'Windows', and leave tenancy, license_model, pre_installed_sw
14795
+ # and capacity_status as '': drop those ec2 defaults for spot (pricing =
14796
+ # 'spot' OR (tenancy = 'Shared' AND ...)). A spot price is the lowest across
14797
+ # the region's availability zones, as AWS's Spot pricing page shows it. Spot
14798
+ # history starts 2026-08-03 with a price every hour (for the 17 main
14799
+ # regions; the others and Local Zones start 2026-11-01), and has one every 6
14800
+ # hours since 2026-11-01, so aggregate it (by day, say) rather than listing
14801
+ # rows.
14802
+ # - Reserved rows: an All Upfront term has hourly_usd = 0 and the whole cost
14803
+ # in upfront_usd; compare reserved and on-demand on effective_hourly_usd.
14804
+ # - RunPod (platform = 'runpod'): GPU types are priced per GPU per hour
14805
+ # (size and family are '', gpus = 1, gpu_memory_gib is the GPU's memory) and
14806
+ # CPU pods per pod per hour; tell them apart with
14807
+ # attributes['productFamily'] ('GPU' or 'CPU') on instance_types. Every
14808
+ # price is region = 'global'; pick a cloud with variant['cloudType'] =
14809
+ # 'Secure Cloud' (the default) or 'Community Cloud' (cheaper, community
14810
+ # hosts). Savings plans are pricing = 'reserved', offering_class = 'Savings
14811
+ # Plan', lease '3mo' or '6mo', with hourly_usd the effective rate. Which
14812
+ # data centers stock a GPU is attributes['dataCenters'] (comma separated);
14813
+ # stock levels and spot prices are not included. History starts in November
14814
+ # 2026.
14815
+ # - Alibaba Cloud ECS (platform = 'alibaba'): default to operating_system =
14816
+ # 'Linux' and variant['networkType'] = 'VPC' (Classic is retired). on_demand
14817
+ # is pay-as-you-go. Subscriptions are offering_class = 'Subscription' (lease
14818
+ # '1mo' or '1yr' to '5yr', paid in full: hourly_usd = 0, upfront_usd the
14819
+ # price); reserved instances are offering_class = 'Reserved Instance' (lease
14820
+ # '1yr' or '3yr', with a purchase_option). Prices go back to May 2018; specs
14821
+ # (attributes) start in May 2023, so older retired types can have NULL vcpu
14822
+ # and memory_gib.
14823
+ # - Comparing clouds: region codes are each provider's own, so join regions
14824
+ # on source as well as region and compare by location (Alibaba's us-east-1
14825
+ # is US (Virginia), the same area as AWS's us-east-1). Compare on
14826
+ # effective_hourly_usd for similar vcpu and memory_gib, and say which cloud
14827
+ # each row is from.
14828
+ # - Use instance_types for specs and to list types; join prices on
14829
+ # (platform, instance_type) when you need specs it does not carry.
14830
+ # - prices is large (millions of rows for ec2): always filter on platform
14831
+ # and current (or a time range), and aggregate or LIMIT.
14832
+ # - service_events is AWS's public status page history, not a measured
14833
+ # uptime: AWS publishes no availability percentage. To estimate downtime,
14834
+ # sum dateDiff('minute', impact_started_at, impact_ended_at) (fall back to
14835
+ # posted_at and resolved_at when those are NULL) over events with severity
14836
+ # 'degraded' or 'disrupted', and say that it covers only events AWS posted
14837
+ # publicly. An event filed under `multipleservices` or another service can
14838
+ # still have hit the one asked about: also match
14839
+ # mapContains(impacted_services, '<service>-<region>').
14840
+ #
14841
+ # GET /api/v1/instance-pricing/schema
14842
+ #
14843
+ # Raises on 401: Unauthenticated
14844
+ #
14845
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
14846
+ # @return [Hash] Parsed JSON, shaped as `AwsPricingSchema` — see `sig/infrawrench/sdk.rbs`.
14847
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
14848
+ def schema(request_options: nil)
14849
+ @transport.request(
14850
+ http_method: "GET",
14851
+ path: "/api/v1/instance-pricing/schema",
14852
+ request_options: request_options
14853
+ )
14854
+ end
14855
+ end
14856
+
14755
14857
  # `client.invitations.by_token`
14756
14858
  class InvitationsByTokenNamespace
14757
14859
  # @api private
@@ -28250,6 +28352,8 @@ module Infrawrench
28250
28352
  attr_reader :idle_findings
28251
28353
  # @return [IncidentsNamespace] `client.incidents`
28252
28354
  attr_reader :incidents
28355
+ # @return [InstancePricingNamespace] `client.instance_pricing`
28356
+ attr_reader :instance_pricing
28253
28357
  # @return [InvitationsNamespace] `client.invitations`
28254
28358
  attr_reader :invitations
28255
28359
  # @return [InvoicesNamespace] `client.invoices`
@@ -28463,6 +28567,7 @@ module Infrawrench
28463
28567
  @iac = IacNamespace.new(@transport)
28464
28568
  @idle_findings = IdleFindingsNamespace.new(@transport)
28465
28569
  @incidents = IncidentsNamespace.new(@transport)
28570
+ @instance_pricing = InstancePricingNamespace.new(@transport)
28466
28571
  @invitations = InvitationsNamespace.new(@transport)
28467
28572
  @invoices = InvoicesNamespace.new(@transport)
28468
28573
  @issue_webhooks = IssueWebhooksNamespace.new(@transport)
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.87.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.88.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.87.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.88.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.87.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.88.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.87.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.88.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.87.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.88.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.87.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.88.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.87.0"
18
+ VERSION = "1.88.0"
19
19
  end
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.87.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.88.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.87.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.88.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.87.0 | MIT | Copyright (c) 2026 Infrawrench LLC
1
+ # infrawrench-sdk v1.88.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.87.0).
4
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.88.0).
5
5
  #
6
6
  # DO NOT EDIT. Regenerate with:
7
7
  # pnpm --filter @infrawrench/web generate:sdk
@@ -16026,6 +16026,12 @@ module Infrawrench
16026
16026
  def update: (incident_id: String, ?org_id: String?, ?body: incident_patch?, ?request_options: Hash[Symbol, untyped]?) -> incident
16027
16027
  end
16028
16028
 
16029
+ class InstancePricingNamespace
16030
+ def initialize: (Transport) -> void
16031
+ def query: (body: aws_pricing_query_request, ?request_options: Hash[Symbol, untyped]?) -> aws_pricing_query_result
16032
+ def schema: (?request_options: Hash[Symbol, untyped]?) -> aws_pricing_schema
16033
+ end
16034
+
16029
16035
  class InvitationsByTokenNamespace
16030
16036
  def initialize: (Transport) -> void
16031
16037
  def get: (token: String, ?request_options: Hash[Symbol, untyped]?) -> invitation_detail
@@ -17086,6 +17092,7 @@ module Infrawrench
17086
17092
  attr_reader iac: IacNamespace
17087
17093
  attr_reader idle_findings: IdleFindingsNamespace
17088
17094
  attr_reader incidents: IncidentsNamespace
17095
+ attr_reader instance_pricing: InstancePricingNamespace
17089
17096
  attr_reader invitations: InvitationsNamespace
17090
17097
  attr_reader invoices: InvoicesNamespace
17091
17098
  attr_reader issue_webhooks: IssueWebhooksNamespace
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.87.0
4
+ version: 1.88.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-11-02 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Generated Ruby client for the Infrawrench API (v1.87.0). Covers the published
14
+ description: Generated Ruby client for the Infrawrench API (v1.88.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.87.0).
61
+ summary: Generated Ruby client for the Infrawrench API (v1.88.0).
62
62
  test_files: []