infrawrench-sdk 0.32.0 → 0.34.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: db60a261e91d0f4ef9ee9de61c1ed5fb4201686dfa7bbbb5ff61b89300a0d1af
4
- data.tar.gz: 53434ef5b3b06744d394433e865208f959b038d383f91ec543d3c8a2fd1e349f
3
+ metadata.gz: 2099aadb0f8d8563ea10d224ddb7513989362ac2b180a34859be779b552c25b7
4
+ data.tar.gz: 3adc5b4c288f47e311681fc59c021c633c1f07b795017f26ed065ae66e80fb99
5
5
  SHA512:
6
- metadata.gz: 679708cc18ad0795a7ef01933dcf1b45adef9c6f0c8fe21fe588c069d099ecca08da9e0e6252697b3e57f6c81d7eb0479220605674b0b679d45bea2b0199bdec
7
- data.tar.gz: 386578d57e807042bbb10e60f62baeedec0ebf3b578ca9a84cf877598a08c5eff385bafbd957bd952c75d15fcf65045f8cbf42b2fea505fc0c072b0ef1fa9d91
6
+ metadata.gz: 4bb33b1a47e790de110f9feb4c386084cb7d176453c867ac521bc077709dc9d16379bc19517082ce16e281f4035a55b90a60096f685a3fee8ed7a7801e78c407
7
+ data.tar.gz: '059cc0b93fdbb52ed29be8b450628856269c34e9ba3364ff188c6687676b478288d0581a37d59043aa53dcf70c589185c4ed9a88585de6ec9421ff373f73af99'
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.32.0`).
3
+ Generated Ruby client for the Infrawrench API (API version `0.34.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
- 331 schemas, as RBS type aliases that steep and TypeProf can read.
44
+ 350 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.32.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.34.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.32.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.34.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.32.0)."
21
- spec.description = "Generated Ruby client for the Infrawrench API (v0.32.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.34.0)."
21
+ spec.description = "Generated Ruby client for the Infrawrench API (v0.34.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.32.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.34.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.32.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.34.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -3673,6 +3673,186 @@ module Infrawrench
3673
3673
  end
3674
3674
  end
3675
3675
 
3676
+ # `client.leases`
3677
+ class LeasesNamespace
3678
+ # @api private
3679
+ # @param transport [Transport]
3680
+ def initialize(transport)
3681
+ @transport = transport
3682
+ end
3683
+
3684
+ # Cancel a lease
3685
+ #
3686
+ # Stop the countdown — the resource stays, the lease goes `canceled` and
3687
+ # leaves the expiry radar. Audit-logged.
3688
+ #
3689
+ # _Requires permission: `resources:write`._
3690
+ #
3691
+ # POST /api/org/{orgId}/leases/{leaseId}/cancel
3692
+ #
3693
+ # Raises on 400: Bad request
3694
+ #
3695
+ # Raises on 404: Not found
3696
+ #
3697
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3698
+ # constructed with.
3699
+ # @param lease_id [String]
3700
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3701
+ # @return [Hash] Parsed JSON, shaped as `ResourceLease` — see `sig/infrawrench/sdk.rbs`.
3702
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
3703
+ def cancel(lease_id:, org_id: nil, request_options: nil)
3704
+ @transport.request(
3705
+ http_method: "POST",
3706
+ path: "/api/org/{orgId}/leases/{leaseId}/cancel",
3707
+ path_params: { "orgId" => org_id, "leaseId" => lease_id },
3708
+ request_options: request_options
3709
+ )
3710
+ end
3711
+
3712
+ # Create a resource lease
3713
+ #
3714
+ # Attach an expiry to a resource — 'give me a test cluster for 3 days'. One
3715
+ # lease per resource (an active lease conflicts; a terminal one is
3716
+ # replaced). `autoDelete: true` opts into deletion at expiry — the poller
3717
+ # announces it twice first, defers during change freezes, and requires the
3718
+ # caller to hold `resources:delete`. Audit-logged.
3719
+ #
3720
+ # _Requires permission: `resources:write`._
3721
+ #
3722
+ # POST /api/org/{orgId}/leases
3723
+ #
3724
+ # Raises on 400: Bad request
3725
+ #
3726
+ # Raises on 404: Not found
3727
+ #
3728
+ # Raises on 409: The resource already has an active lease
3729
+ #
3730
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3731
+ # constructed with.
3732
+ # @param body [Hash, nil] Request body, shaped as `ResourceLeaseCreate`.
3733
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3734
+ # @return [Hash] Parsed JSON, shaped as `ResourceLease` — see `sig/infrawrench/sdk.rbs`.
3735
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
3736
+ def create(org_id: nil, body: nil, request_options: nil)
3737
+ @transport.request(
3738
+ http_method: "POST",
3739
+ path: "/api/org/{orgId}/leases",
3740
+ path_params: { "orgId" => org_id },
3741
+ body: body,
3742
+ request_options: request_options
3743
+ )
3744
+ end
3745
+
3746
+ # Delete a lease row
3747
+ #
3748
+ # Remove the lease record entirely (including terminal rows). The resource
3749
+ # is not touched. Audit-logged.
3750
+ #
3751
+ # _Requires permission: `resources:write`._
3752
+ #
3753
+ # DELETE /api/org/{orgId}/leases/{leaseId}
3754
+ #
3755
+ # Raises on 404: Not found
3756
+ #
3757
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3758
+ # constructed with.
3759
+ # @param lease_id [String]
3760
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3761
+ # @return [nil] This endpoint returns no content.
3762
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
3763
+ def delete(lease_id:, org_id: nil, request_options: nil)
3764
+ @transport.request(
3765
+ http_method: "DELETE",
3766
+ path: "/api/org/{orgId}/leases/{leaseId}",
3767
+ path_params: { "orgId" => org_id, "leaseId" => lease_id },
3768
+ accept: :empty,
3769
+ request_options: request_options
3770
+ )
3771
+ end
3772
+
3773
+ # List resource leases
3774
+ #
3775
+ # Every lease in the organization, soonest deadline first. Active leases
3776
+ # also appear on the expiry radar (`GET /expiring`) as kind `lease` items,
3777
+ # so the owner is nagged through the existing expiry alerts.
3778
+ #
3779
+ # _Requires permission: `resources:read`._
3780
+ #
3781
+ # GET /api/org/{orgId}/leases
3782
+ #
3783
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3784
+ # constructed with.
3785
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3786
+ # @return [Hash] Parsed JSON, shaped as `ResourceLeaseList` — see `sig/infrawrench/sdk.rbs`.
3787
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
3788
+ def get(org_id: nil, request_options: nil)
3789
+ @transport.request(
3790
+ http_method: "GET",
3791
+ path: "/api/org/{orgId}/leases",
3792
+ path_params: { "orgId" => org_id },
3793
+ request_options: request_options
3794
+ )
3795
+ end
3796
+
3797
+ # Get one resource's lease
3798
+ #
3799
+ # The (unique) lease on a resource, whatever its status, or null.
3800
+ #
3801
+ # _Requires permission: `resources:read`._
3802
+ #
3803
+ # GET /api/org/{orgId}/leases/resource
3804
+ #
3805
+ # Raises on 400: Bad request
3806
+ #
3807
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3808
+ # constructed with.
3809
+ # @param resource_id [String]
3810
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3811
+ # @return [Hash] Parsed JSON, shaped as `ResourceLeaseLookup` — see
3812
+ # `sig/infrawrench/sdk.rbs`.
3813
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
3814
+ def resource(resource_id:, org_id: nil, request_options: nil)
3815
+ @transport.request(
3816
+ http_method: "GET",
3817
+ path: "/api/org/{orgId}/leases/resource",
3818
+ path_params: { "orgId" => org_id },
3819
+ query: { "resourceId" => resource_id },
3820
+ request_options: request_options
3821
+ )
3822
+ end
3823
+
3824
+ # Update a lease
3825
+ #
3826
+ # Edit the deadline, the auto-delete opt-in and/or the note of an active
3827
+ # lease. Changing the deadline or the auto-delete flag re-arms the
3828
+ # two-announcement schedule. Audit-logged.
3829
+ #
3830
+ # _Requires permission: `resources:write`._
3831
+ #
3832
+ # PUT /api/org/{orgId}/leases/{leaseId}
3833
+ #
3834
+ # Raises on 400: Bad request
3835
+ #
3836
+ # Raises on 404: Not found
3837
+ #
3838
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
3839
+ # constructed with.
3840
+ # @param lease_id [String]
3841
+ # @param body [Hash, nil] Request body, shaped as `ResourceLeaseUpdate`.
3842
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
3843
+ # @return [Hash] Parsed JSON, shaped as `ResourceLease` — see `sig/infrawrench/sdk.rbs`.
3844
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
3845
+ def update(lease_id:, org_id: nil, body: nil, request_options: nil)
3846
+ @transport.request(
3847
+ http_method: "PUT",
3848
+ path: "/api/org/{orgId}/leases/{leaseId}",
3849
+ path_params: { "orgId" => org_id, "leaseId" => lease_id },
3850
+ body: body,
3851
+ request_options: request_options
3852
+ )
3853
+ end
3854
+ end
3855
+
3676
3856
  # `client.log_workspaces`
3677
3857
  class LogWorkspacesNamespace
3678
3858
  # @api private
@@ -4398,6 +4578,288 @@ module Infrawrench
4398
4578
  end
4399
4579
  end
4400
4580
 
4581
+ # `client.posture.settings`
4582
+ class PostureSettingsNamespace
4583
+ # @api private
4584
+ # @param transport [Transport]
4585
+ def initialize(transport)
4586
+ @transport = transport
4587
+ end
4588
+
4589
+ # Get the organization's posture alert settings
4590
+ #
4591
+ # Whether the poller's daily posture alert scan is enabled. An organization
4592
+ # that never saved reads the shipped defaults (enabled).
4593
+ #
4594
+ # _Requires permission: `org:settings:write`._
4595
+ #
4596
+ # GET /api/org/{orgId}/posture/settings
4597
+ #
4598
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4599
+ # constructed with.
4600
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4601
+ # @return [Hash] Parsed JSON, shaped as `PostureAlertSettings` — see
4602
+ # `sig/infrawrench/sdk.rbs`.
4603
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4604
+ def get(org_id: nil, request_options: nil)
4605
+ @transport.request(
4606
+ http_method: "GET",
4607
+ path: "/api/org/{orgId}/posture/settings",
4608
+ path_params: { "orgId" => org_id },
4609
+ request_options: request_options
4610
+ )
4611
+ end
4612
+
4613
+ # Update the posture alert settings
4614
+ #
4615
+ # Saving never resets the alert cooldown.
4616
+ #
4617
+ # _Requires permission: `org:settings:write`._
4618
+ #
4619
+ # PUT /api/org/{orgId}/posture/settings
4620
+ #
4621
+ # Raises on 400: Bad request
4622
+ #
4623
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4624
+ # constructed with.
4625
+ # @param body [Hash, nil] Request body, shaped as `PostureAlertSettingsUpdate`.
4626
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4627
+ # @return [Hash] Parsed JSON, shaped as `PostureAlertSettings` — see
4628
+ # `sig/infrawrench/sdk.rbs`.
4629
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4630
+ def update(org_id: nil, body: nil, request_options: nil)
4631
+ @transport.request(
4632
+ http_method: "PUT",
4633
+ path: "/api/org/{orgId}/posture/settings",
4634
+ path_params: { "orgId" => org_id },
4635
+ body: body,
4636
+ request_options: request_options
4637
+ )
4638
+ end
4639
+ end
4640
+
4641
+ # `client.posture`
4642
+ class PostureNamespace
4643
+ # @return [PostureSettingsNamespace] `client.posture.settings`
4644
+ attr_reader :settings
4645
+
4646
+ # @api private
4647
+ # @param transport [Transport]
4648
+ def initialize(transport)
4649
+ @transport = transport
4650
+ @settings = PostureSettingsNamespace.new(@transport)
4651
+ end
4652
+
4653
+ # List security posture findings on synced resources
4654
+ #
4655
+ # Plugin-declared security checks evaluated over already-synced resource
4656
+ # state: public buckets, 0.0.0.0/0 ingress rules, unencrypted disks,
4657
+ # publicly reachable database endpoints, stale credentials, missing
4658
+ # deletion/backup protection. No provider API calls are made and results
4659
+ # reflect the last sync. Findings are sorted worst severity first, with
4660
+ # per-severity counts.
4661
+ #
4662
+ # _Requires permission: `resources:read`._
4663
+ #
4664
+ # GET /api/org/{orgId}/posture
4665
+ #
4666
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4667
+ # constructed with.
4668
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4669
+ # @return [Hash] Parsed JSON, shaped as `PostureListResponse` — see
4670
+ # `sig/infrawrench/sdk.rbs`.
4671
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4672
+ def get(org_id: nil, request_options: nil)
4673
+ @transport.request(
4674
+ http_method: "GET",
4675
+ path: "/api/org/{orgId}/posture",
4676
+ path_params: { "orgId" => org_id },
4677
+ request_options: request_options
4678
+ )
4679
+ end
4680
+ end
4681
+
4682
+ # `client.probes`
4683
+ class ProbesNamespace
4684
+ # @api private
4685
+ # @param transport [Transport]
4686
+ def initialize(transport)
4687
+ @transport = transport
4688
+ end
4689
+
4690
+ # Create a probe
4691
+ #
4692
+ # Point an uptime/latency check at an endpoint. Numeric inputs are clamped
4693
+ # into their allowed ranges rather than rejected; the first check runs
4694
+ # within one poller tick. Audit-logged.
4695
+ #
4696
+ # _Requires permission: `resources:write`._
4697
+ #
4698
+ # POST /api/org/{orgId}/probes
4699
+ #
4700
+ # Raises on 400: Bad request
4701
+ #
4702
+ # Raises on 404: Not found
4703
+ #
4704
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4705
+ # constructed with.
4706
+ # @param body [Hash, nil] Request body, shaped as `SyntheticProbeCreate`.
4707
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4708
+ # @return [Hash] Parsed JSON, shaped as `SyntheticProbe` — see `sig/infrawrench/sdk.rbs`.
4709
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4710
+ def create(org_id: nil, body: nil, request_options: nil)
4711
+ @transport.request(
4712
+ http_method: "POST",
4713
+ path: "/api/org/{orgId}/probes",
4714
+ path_params: { "orgId" => org_id },
4715
+ body: body,
4716
+ request_options: request_options
4717
+ )
4718
+ end
4719
+
4720
+ # Delete a probe
4721
+ #
4722
+ # Remove the probe. Recorded series age out of the metric store.
4723
+ # Audit-logged.
4724
+ #
4725
+ # _Requires permission: `resources:write`._
4726
+ #
4727
+ # DELETE /api/org/{orgId}/probes/{probeId}
4728
+ #
4729
+ # Raises on 404: Not found
4730
+ #
4731
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4732
+ # constructed with.
4733
+ # @param probe_id [String]
4734
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4735
+ # @return [nil] This endpoint returns no content.
4736
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4737
+ def delete(probe_id:, org_id: nil, request_options: nil)
4738
+ @transport.request(
4739
+ http_method: "DELETE",
4740
+ path: "/api/org/{orgId}/probes/{probeId}",
4741
+ path_params: { "orgId" => org_id, "probeId" => probe_id },
4742
+ accept: :empty,
4743
+ request_options: request_options
4744
+ )
4745
+ end
4746
+
4747
+ # List synthetic probes
4748
+ #
4749
+ # Every probe in the organization with its live status, consecutive-failure
4750
+ # count, last latency and trailing-24h uptime. Probes run on an interval
4751
+ # from an edge proxy outside the cluster, so results reflect what an
4752
+ # internet client would see.
4753
+ #
4754
+ # _Requires permission: `resources:read`._
4755
+ #
4756
+ # GET /api/org/{orgId}/probes
4757
+ #
4758
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4759
+ # constructed with.
4760
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4761
+ # @return [Hash] Parsed JSON, shaped as `SyntheticProbeList` — see
4762
+ # `sig/infrawrench/sdk.rbs`.
4763
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4764
+ def get(org_id: nil, request_options: nil)
4765
+ @transport.request(
4766
+ http_method: "GET",
4767
+ path: "/api/org/{orgId}/probes",
4768
+ path_params: { "orgId" => org_id },
4769
+ request_options: request_options
4770
+ )
4771
+ end
4772
+
4773
+ # Read a probe's recorded series
4774
+ #
4775
+ # The "Latency" (ms) and "Up" (1/0) series over a time range, from the
4776
+ # shared metric store. Resolution auto-selects raw/1-minute/1-hour rollups
4777
+ # by span. Defaults to the trailing 24 hours.
4778
+ #
4779
+ # _Requires permission: `resources:read`._
4780
+ #
4781
+ # GET /api/org/{orgId}/probes/{probeId}/metrics
4782
+ #
4783
+ # Raises on 400: Bad request
4784
+ #
4785
+ # Raises on 404: Not found
4786
+ #
4787
+ # Raises on 503: A backing service this endpoint depends on is not available
4788
+ #
4789
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4790
+ # constructed with.
4791
+ # @param probe_id [String]
4792
+ # @param start_ms [String, nil] Range start, Unix epoch ms.
4793
+ # @param end_ms [String, nil] Range end, Unix epoch ms.
4794
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4795
+ # @return [Hash] Parsed JSON, shaped as `ProbeMetrics` — see `sig/infrawrench/sdk.rbs`.
4796
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4797
+ def metrics(probe_id:, org_id: nil, start_ms: nil, end_ms: nil, request_options: nil)
4798
+ @transport.request(
4799
+ http_method: "GET",
4800
+ path: "/api/org/{orgId}/probes/{probeId}/metrics",
4801
+ path_params: { "orgId" => org_id, "probeId" => probe_id },
4802
+ query: { "startMs" => start_ms, "endMs" => end_ms },
4803
+ request_options: request_options
4804
+ )
4805
+ end
4806
+
4807
+ # Suggest endpoints from synced resources
4808
+ #
4809
+ # Endpoint candidates mined from the organization's synced resource outputs
4810
+ # and fields (keys like url, endpoint, host, domain, publicIp). A cheap read
4811
+ # over stored state — no provider API calls. Deduplicated by URL.
4812
+ #
4813
+ # _Requires permission: `resources:read`._
4814
+ #
4815
+ # GET /api/org/{orgId}/probes/suggestions
4816
+ #
4817
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4818
+ # constructed with.
4819
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4820
+ # @return [Hash] Parsed JSON, shaped as `ProbeSuggestions` — see `sig/infrawrench/sdk.rbs`.
4821
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4822
+ def suggestions(org_id: nil, request_options: nil)
4823
+ @transport.request(
4824
+ http_method: "GET",
4825
+ path: "/api/org/{orgId}/probes/suggestions",
4826
+ path_params: { "orgId" => org_id },
4827
+ request_options: request_options
4828
+ )
4829
+ end
4830
+
4831
+ # Update or disable a probe
4832
+ #
4833
+ # Edit settings and/or toggle `enabled`. Changing the URL or method resets
4834
+ # the probe's state to `unknown` — the history belongs to the old endpoint.
4835
+ # Audit-logged.
4836
+ #
4837
+ # _Requires permission: `resources:write`._
4838
+ #
4839
+ # PUT /api/org/{orgId}/probes/{probeId}
4840
+ #
4841
+ # Raises on 400: Bad request
4842
+ #
4843
+ # Raises on 404: Not found
4844
+ #
4845
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
4846
+ # constructed with.
4847
+ # @param probe_id [String]
4848
+ # @param body [Hash, nil] Request body, shaped as `SyntheticProbeUpdate`.
4849
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
4850
+ # @return [Hash] Parsed JSON, shaped as `SyntheticProbe` — see `sig/infrawrench/sdk.rbs`.
4851
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
4852
+ def update(probe_id:, org_id: nil, body: nil, request_options: nil)
4853
+ @transport.request(
4854
+ http_method: "PUT",
4855
+ path: "/api/org/{orgId}/probes/{probeId}",
4856
+ path_params: { "orgId" => org_id, "probeId" => probe_id },
4857
+ body: body,
4858
+ request_options: request_options
4859
+ )
4860
+ end
4861
+ end
4862
+
4401
4863
  # `client.profile.email_change`
4402
4864
  class ProfileEmailChangeNamespace
4403
4865
  # @api private
@@ -7568,6 +8030,8 @@ module Infrawrench
7568
8030
  attr_reader :invitations
7569
8031
  # @return [KvNamespace] `client.kv`
7570
8032
  attr_reader :kv
8033
+ # @return [LeasesNamespace] `client.leases`
8034
+ attr_reader :leases
7571
8035
  # @return [LogWorkspacesNamespace] `client.log_workspaces`
7572
8036
  attr_reader :log_workspaces
7573
8037
  # @return [MetricAlertsNamespace] `client.metric_alerts`
@@ -7582,6 +8046,10 @@ module Infrawrench
7582
8046
  attr_reader :orphans
7583
8047
  # @return [PagesNamespace] `client.pages`
7584
8048
  attr_reader :pages
8049
+ # @return [PostureNamespace] `client.posture`
8050
+ attr_reader :posture
8051
+ # @return [ProbesNamespace] `client.probes`
8052
+ attr_reader :probes
7585
8053
  # @return [ProfileNamespace] `client.profile`
7586
8054
  attr_reader :profile
7587
8055
  # @return [ResourcesNamespace] `client.resources`
@@ -7646,6 +8114,7 @@ module Infrawrench
7646
8114
  @expiring = ExpiringNamespace.new(@transport)
7647
8115
  @invitations = InvitationsNamespace.new(@transport)
7648
8116
  @kv = KvNamespace.new(@transport)
8117
+ @leases = LeasesNamespace.new(@transport)
7649
8118
  @log_workspaces = LogWorkspacesNamespace.new(@transport)
7650
8119
  @metric_alerts = MetricAlertsNamespace.new(@transport)
7651
8120
  @moment = MomentNamespace.new(@transport)
@@ -7653,6 +8122,8 @@ module Infrawrench
7653
8122
  @orgs = OrgsNamespace.new(@transport)
7654
8123
  @orphans = OrphansNamespace.new(@transport)
7655
8124
  @pages = PagesNamespace.new(@transport)
8125
+ @posture = PostureNamespace.new(@transport)
8126
+ @probes = ProbesNamespace.new(@transport)
7656
8127
  @profile = ProfileNamespace.new(@transport)
7657
8128
  @resources = ResourcesNamespace.new(@transport)
7658
8129
  @rightsizing = RightsizingNamespace.new(@transport)
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v0.32.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.34.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.32.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.34.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.32.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.34.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.32.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.34.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.32.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.34.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.32.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.34.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.32.0"
18
+ VERSION = "0.34.0"
19
19
  end
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v0.32.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v0.34.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.32.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.34.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.32.0 | MIT | Copyright (c) 2026 Infrawrench LLC
1
+ # infrawrench-sdk v0.34.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.32.0).
4
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 0.34.0).
5
5
  #
6
6
  # DO NOT EDIT. Regenerate with:
7
7
  # pnpm --filter @infrawrench/web generate:sdk
@@ -1236,6 +1236,9 @@ module Infrawrench
1236
1236
  # Spec schema: `KvCommandResponse`.
1237
1237
  type kv_command_response = { ?"result" => json_object | untyped | nil }
1238
1238
 
1239
+ # Spec schema: `LeaseConflict`.
1240
+ type lease_conflict = { "error" => String }
1241
+
1239
1242
  # Spec schema: `LiteralAssociationRequest`.
1240
1243
  type literal_association_request = { "resourceId" => resource_id, "fieldKey" => String, "plaintextValue" => String }
1241
1244
 
@@ -1532,6 +1535,8 @@ module Infrawrench
1532
1535
  "providerIncidents" => bool,
1533
1536
  "expiryAlerts" => bool,
1534
1537
  "logMatchAlerts" => bool,
1538
+ "postureAlerts" => bool,
1539
+ "probeAlerts" => bool,
1535
1540
  "weeklyDigest" => bool
1536
1541
  }
1537
1542
 
@@ -1548,6 +1553,8 @@ module Infrawrench
1548
1553
  ?"providerIncidents" => bool,
1549
1554
  ?"expiryAlerts" => bool,
1550
1555
  ?"logMatchAlerts" => bool,
1556
+ ?"postureAlerts" => bool,
1557
+ ?"probeAlerts" => bool,
1551
1558
  ?"weeklyDigest" => bool
1552
1559
  }
1553
1560
 
@@ -1563,6 +1570,8 @@ module Infrawrench
1563
1570
  ?"providerIncidents" => bool,
1564
1571
  ?"expiryAlerts" => bool,
1565
1572
  ?"logMatchAlerts" => bool,
1573
+ ?"postureAlerts" => bool,
1574
+ ?"probeAlerts" => bool,
1566
1575
  ?"weeklyDigest" => bool
1567
1576
  }
1568
1577
 
@@ -1931,6 +1940,43 @@ module Infrawrench
1931
1940
  # Spec schema: `PolicyTemplateResponse`.
1932
1941
  type policy_template_response = { "template" => policy_template }
1933
1942
 
1943
+ # Spec schema: `PostureAlertSettings`.
1944
+ type posture_alert_settings = { "enabled" => bool, "lastNotifiedAt" => String | nil }
1945
+
1946
+ # Spec schema: `PostureAlertSettingsUpdate`.
1947
+ type posture_alert_settings_update = { ?"enabled" => bool }
1948
+
1949
+ # Spec schema: `PostureFinding`.
1950
+ type posture_finding = {
1951
+ "resourceId" => String,
1952
+ "pluginId" => plugin_id,
1953
+ "pluginName" => String,
1954
+ "resourceTypeId" => String,
1955
+ "resourceTypeName" => String,
1956
+ "accountId" => String,
1957
+ "accountName" => String,
1958
+ "displayName" => String,
1959
+ "externalId" => String | nil,
1960
+ "ruleId" => String,
1961
+ "title" => String,
1962
+ "severity" => "critical" | "high" | "medium" | "low",
1963
+ "category" => "public-exposure" | "encryption" | "credential-age" | "data-protection" | "other",
1964
+ "reason" => String
1965
+ }
1966
+
1967
+ # Spec schema: `PostureListResponse`.
1968
+ type posture_list_response = {
1969
+ "findings" => Array[posture_finding],
1970
+ "totalCount" => Integer,
1971
+ "counts" => posture_severity_counts,
1972
+ "generatedAt" => String
1973
+ }
1974
+
1975
+ # Finding count per severity; every bucket present, zeros included.
1976
+ #
1977
+ # Spec schema: `PostureSeverityCounts`.
1978
+ type posture_severity_counts = { "critical" => Integer, "high" => Integer, "medium" => Integer, "low" => Integer }
1979
+
1934
1980
  # Spec schema: `PreflightCapability`.
1935
1981
  type preflight_capability = {
1936
1982
  "id" => String,
@@ -1973,6 +2019,16 @@ module Infrawrench
1973
2019
  # Spec schema: `PreflightRequest`.
1974
2020
  type preflight_request = { "pluginId" => String, "credentials" => Hash[String, String], ?"bastionId" => String | nil }
1975
2021
 
2022
+ # Spec schema: `ProbeMetricSeries`.
2023
+ type probe_metric_series = {
2024
+ "label" => String,
2025
+ ?"unit" => String,
2026
+ "points" => Array[{ "timestamp" => Numeric, "value" => Numeric }]
2027
+ }
2028
+
2029
+ # Spec schema: `ProbeMetrics`.
2030
+ type probe_metrics = { "series" => Array[probe_metric_series] }
2031
+
1976
2032
  # Spec schema: `ProbeRequest`.
1977
2033
  type probe_request = {
1978
2034
  "items" => Array[{
@@ -1993,6 +2049,20 @@ module Infrawrench
1993
2049
  ?"resourceCounts" => Array[{ "typeLabel" => String, "count" => Integer }]
1994
2050
  }
1995
2051
 
2052
+ # Spec schema: `ProbeSuggestion`.
2053
+ type probe_suggestion = {
2054
+ "url" => String,
2055
+ "resourceId" => String,
2056
+ "displayName" => String,
2057
+ "pluginId" => plugin_id,
2058
+ "resourceTypeId" => String,
2059
+ "accountId" => String,
2060
+ "outputKey" => String
2061
+ }
2062
+
2063
+ # Spec schema: `ProbeSuggestions`.
2064
+ type probe_suggestions = { "suggestions" => Array[probe_suggestion] }
2065
+
1996
2066
  # Spec schema: `Profile`.
1997
2067
  type profile = {
1998
2068
  "id" => String,
@@ -2153,6 +2223,46 @@ module Infrawrench
2153
2223
  # Spec schema: `ResourceId`.
2154
2224
  type resource_id = String
2155
2225
 
2226
+ # Spec schema: `ResourceLease`.
2227
+ type resource_lease = {
2228
+ "id" => String,
2229
+ "resourceId" => String,
2230
+ "accountId" => String,
2231
+ "pluginId" => plugin_id,
2232
+ "resourceTypeId" => String,
2233
+ "resourceName" => String,
2234
+ "accountName" => String,
2235
+ "expiresAt" => String,
2236
+ "autoDelete" => bool,
2237
+ "note" => String | nil,
2238
+ "status" => "active" | "deleted" | "failed" | "canceled",
2239
+ "firstWarningAt" => String | nil,
2240
+ "finalWarningAt" => String | nil,
2241
+ "deleteAttempts" => Integer,
2242
+ "lastError" => String | nil,
2243
+ "completedAt" => String | nil,
2244
+ "createdAt" => String,
2245
+ "updatedAt" => String
2246
+ }
2247
+
2248
+ # Spec schema: `ResourceLeaseCreate`.
2249
+ type resource_lease_create = {
2250
+ "resourceId" => String,
2251
+ "accountId" => String,
2252
+ "expiresAt" => String,
2253
+ ?"autoDelete" => bool,
2254
+ ?"note" => String
2255
+ }
2256
+
2257
+ # Spec schema: `ResourceLeaseList`.
2258
+ type resource_lease_list = { "leases" => Array[resource_lease] }
2259
+
2260
+ # Spec schema: `ResourceLeaseLookup`.
2261
+ type resource_lease_lookup = { "lease" => resource_lease & (Hash[String, untyped] | nil) }
2262
+
2263
+ # Spec schema: `ResourceLeaseUpdate`.
2264
+ type resource_lease_update = { ?"expiresAt" => String, ?"autoDelete" => bool, ?"note" => String | nil }
2265
+
2156
2266
  # Normalized status reported by a plugin's renderSidebarItem/renderDetail.
2157
2267
  #
2158
2268
  # Spec schema: `ResourceStatus`.
@@ -2728,6 +2838,8 @@ module Infrawrench
2728
2838
  "providerIncidents" => bool,
2729
2839
  "expiryAlerts" => bool,
2730
2840
  "logMatchAlerts" => bool,
2841
+ "postureAlerts" => bool,
2842
+ "probeAlerts" => bool,
2731
2843
  "weeklyDigest" => bool
2732
2844
  }
2733
2845
 
@@ -2746,6 +2858,8 @@ module Infrawrench
2746
2858
  ?"providerIncidents" => bool,
2747
2859
  ?"expiryAlerts" => bool,
2748
2860
  ?"logMatchAlerts" => bool,
2861
+ ?"postureAlerts" => bool,
2862
+ ?"probeAlerts" => bool,
2749
2863
  ?"weeklyDigest" => bool
2750
2864
  }
2751
2865
 
@@ -2760,6 +2874,8 @@ module Infrawrench
2760
2874
  ?"providerIncidents" => bool,
2761
2875
  ?"expiryAlerts" => bool,
2762
2876
  ?"logMatchAlerts" => bool,
2877
+ ?"postureAlerts" => bool,
2878
+ ?"probeAlerts" => bool,
2763
2879
  ?"weeklyDigest" => bool
2764
2880
  }
2765
2881
 
@@ -3035,6 +3151,60 @@ module Infrawrench
3035
3151
  "parentResourceId" => resource_id & (String | nil)
3036
3152
  }
3037
3153
 
3154
+ # Spec schema: `SyntheticProbe`.
3155
+ type synthetic_probe = {
3156
+ "id" => String,
3157
+ "name" => String,
3158
+ "url" => String,
3159
+ "method" => String,
3160
+ "intervalSeconds" => Integer,
3161
+ "timeoutMs" => Integer,
3162
+ "failureThreshold" => Integer,
3163
+ "enabled" => bool,
3164
+ "accountId" => String | nil,
3165
+ "resourceId" => String | nil,
3166
+ "pluginId" => plugin_id & (String | nil),
3167
+ "resourceTypeId" => String | nil,
3168
+ "outputKey" => String | nil,
3169
+ "status" => "up" | "down" | "unknown",
3170
+ "consecutiveFailures" => Integer,
3171
+ "lastProbeAt" => String | nil,
3172
+ "lastStatusCode" => Integer | nil,
3173
+ "lastLatencyMs" => Integer | nil,
3174
+ "lastError" => String | nil,
3175
+ "lastStateChangeAt" => String | nil,
3176
+ "uptime24h" => Numeric | nil,
3177
+ "createdAt" => String,
3178
+ "updatedAt" => String
3179
+ }
3180
+
3181
+ # Spec schema: `SyntheticProbeCreate`.
3182
+ type synthetic_probe_create = {
3183
+ "name" => String,
3184
+ "url" => String,
3185
+ ?"method" => String,
3186
+ ?"intervalSeconds" => Integer,
3187
+ ?"timeoutMs" => Integer,
3188
+ ?"failureThreshold" => Integer,
3189
+ ?"enabled" => bool,
3190
+ ?"resourceId" => String,
3191
+ ?"outputKey" => String
3192
+ }
3193
+
3194
+ # Spec schema: `SyntheticProbeList`.
3195
+ type synthetic_probe_list = { "probes" => Array[synthetic_probe] }
3196
+
3197
+ # Spec schema: `SyntheticProbeUpdate`.
3198
+ type synthetic_probe_update = {
3199
+ ?"name" => String,
3200
+ ?"url" => String,
3201
+ ?"method" => String,
3202
+ ?"intervalSeconds" => Integer,
3203
+ ?"timeoutMs" => Integer,
3204
+ ?"failureThreshold" => Integer,
3205
+ ?"enabled" => bool
3206
+ }
3207
+
3038
3208
  # Spec schema: `TabTarget`.
3039
3209
  type tab_target = {
3040
3210
  "kind" => "dashboard"
@@ -3047,8 +3217,10 @@ module Infrawrench
3047
3217
  | "logs"
3048
3218
  | "changes"
3049
3219
  | "expiring"
3220
+ | "posture"
3050
3221
  | "ssh-fanout"
3051
3222
  | "metric-alerts"
3223
+ | "probes"
3052
3224
  | "workflows"
3053
3225
  | "deployments"
3054
3226
  | "chat",
@@ -3502,6 +3674,16 @@ module Infrawrench
3502
3674
  def command: (body: kv_command_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> kv_command_response
3503
3675
  end
3504
3676
 
3677
+ class LeasesNamespace
3678
+ def initialize: (Transport) -> void
3679
+ def cancel: (lease_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> resource_lease
3680
+ def create: (?org_id: String?, ?body: resource_lease_create?, ?request_options: Hash[Symbol, untyped]?) -> resource_lease
3681
+ def delete: (lease_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> nil
3682
+ def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> resource_lease_list
3683
+ def resource: (resource_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> resource_lease_lookup
3684
+ def update: (lease_id: String, ?org_id: String?, ?body: resource_lease_update?, ?request_options: Hash[Symbol, untyped]?) -> resource_lease
3685
+ end
3686
+
3505
3687
  class LogWorkspacesNamespace
3506
3688
  def initialize: (Transport) -> void
3507
3689
  def create: (body: log_workspace_query_create, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> log_workspace_query
@@ -3559,6 +3741,28 @@ module Infrawrench
3559
3741
  def delete: (source: String, ?org_id: String?, ?key: String?, ?request_options: Hash[Symbol, untyped]?) -> page_clear_response
3560
3742
  end
3561
3743
 
3744
+ class PostureSettingsNamespace
3745
+ def initialize: (Transport) -> void
3746
+ def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> posture_alert_settings
3747
+ def update: (?org_id: String?, ?body: posture_alert_settings_update?, ?request_options: Hash[Symbol, untyped]?) -> posture_alert_settings
3748
+ end
3749
+
3750
+ class PostureNamespace
3751
+ attr_reader settings: PostureSettingsNamespace
3752
+ def initialize: (Transport) -> void
3753
+ def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> posture_list_response
3754
+ end
3755
+
3756
+ class ProbesNamespace
3757
+ def initialize: (Transport) -> void
3758
+ def create: (?org_id: String?, ?body: synthetic_probe_create?, ?request_options: Hash[Symbol, untyped]?) -> synthetic_probe
3759
+ def delete: (probe_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> nil
3760
+ def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> synthetic_probe_list
3761
+ def metrics: (probe_id: String, ?org_id: String?, ?start_ms: String?, ?end_ms: String?, ?request_options: Hash[Symbol, untyped]?) -> probe_metrics
3762
+ def suggestions: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> probe_suggestions
3763
+ def update: (probe_id: String, ?org_id: String?, ?body: synthetic_probe_update?, ?request_options: Hash[Symbol, untyped]?) -> synthetic_probe
3764
+ end
3765
+
3562
3766
  class ProfileEmailChangeNamespace
3563
3767
  def initialize: (Transport) -> void
3564
3768
  def confirm: (?body: { "code" => String }?, ?request_options: Hash[Symbol, untyped]?) -> { "email" => String }
@@ -3818,6 +4022,7 @@ module Infrawrench
3818
4022
  attr_reader expiring: ExpiringNamespace
3819
4023
  attr_reader invitations: InvitationsNamespace
3820
4024
  attr_reader kv: KvNamespace
4025
+ attr_reader leases: LeasesNamespace
3821
4026
  attr_reader log_workspaces: LogWorkspacesNamespace
3822
4027
  attr_reader metric_alerts: MetricAlertsNamespace
3823
4028
  attr_reader moment: MomentNamespace
@@ -3825,6 +4030,8 @@ module Infrawrench
3825
4030
  attr_reader orgs: OrgsNamespace
3826
4031
  attr_reader orphans: OrphansNamespace
3827
4032
  attr_reader pages: PagesNamespace
4033
+ attr_reader posture: PostureNamespace
4034
+ attr_reader probes: ProbesNamespace
3828
4035
  attr_reader profile: ProfileNamespace
3829
4036
  attr_reader resources: ResourcesNamespace
3830
4037
  attr_reader rightsizing: RightsizingNamespace
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.32.0
4
+ version: 0.34.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Infrawrench LLC
@@ -9,9 +9,9 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2026-08-04 00:00:00.000000000 Z
12
+ date: 2026-08-05 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Generated Ruby client for the Infrawrench API (v0.32.0). Covers the published
14
+ description: Generated Ruby client for the Infrawrench API (v0.34.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.32.0).
61
+ summary: Generated Ruby client for the Infrawrench API (v0.34.0).
62
62
  test_files: []