infrawrench-sdk 1.18.0 → 1.19.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: 88e054d8ab5e5f760e83695779f5d6fb4fd8630779b87d76c7268df6458a4368
4
- data.tar.gz: 05cf568abc46f27c6488f536dba00e43f6b2905df806ac012a2bb1b8db33112c
3
+ metadata.gz: a8c13955007c104a26094f09c6b0f8e78248c945e6495c5352539c87fe356bb4
4
+ data.tar.gz: a7be9b98ed78ff3e0662f5ca6162c1d1012806f360566a2b6778a1a470deb5c5
5
5
  SHA512:
6
- metadata.gz: 3a594eda98b0d94712d89d36a7898bb521d1efd0d68edc137841ee3bf237aa787fa10a15463b01f2a80386ec275671270d33936c00eae59b23803099426a7f95
7
- data.tar.gz: 90bf6a53e80839579db54dff18b4f9ea3e2c8e7ee1685ba1041d8346ba33e31e8c112f6b223fea188ffc5703b6d3de40690401bf2687a1b1d983edbabddbd819
6
+ metadata.gz: 1392500234ef4cbcab3e12991e2f7ff7399c9d8238e43505f5c110e61d184bb3cf43b44dd166ef63e0ff5cdd28582463eb99a0c4303f36e1d4f7d1b2ab300622
7
+ data.tar.gz: 56ceb83f3f133c285f9ffa3848e4202df1abeddaa642c8e9f37a2fc0b0ec58fcfca753bd5c33c6b3a20933dbf10f20962e16abf9fd3b433ba28e3c8331ca7ccc
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.18.0`).
3
+ Generated Ruby client for the Infrawrench API (API version `1.19.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
- 615 schemas, as RBS type aliases that steep and TypeProf can read.
44
+ 625 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.18.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.19.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.18.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.19.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.18.0)."
21
- spec.description = "Generated Ruby client for the Infrawrench API (v1.18.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.19.0)."
21
+ spec.description = "Generated Ruby client for the Infrawrench API (v1.19.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.18.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.19.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.18.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.19.0).
7
7
  #
8
8
  # DO NOT EDIT. Regenerate with:
9
9
  # pnpm --filter @infrawrench/web generate:sdk
@@ -1535,6 +1535,161 @@ module Infrawrench
1535
1535
  end
1536
1536
  end
1537
1537
 
1538
+ # `client.backups.policies`
1539
+ class BackupsPoliciesNamespace
1540
+ # @api private
1541
+ # @param transport [Transport]
1542
+ def initialize(transport)
1543
+ @transport = transport
1544
+ end
1545
+
1546
+ # Create a backup policy
1547
+ #
1548
+ # A policy must demand at least one of `maxRpoHours` and `minRetentionDays`
1549
+ # — one that demands nothing could never produce a finding and would read as
1550
+ # protection while providing none. An empty `resourceTypeIds` selects every
1551
+ # stateful resource type.
1552
+ #
1553
+ # POST /api/org/{orgId}/backups/policies
1554
+ #
1555
+ # Raises on 400: Bad request
1556
+ #
1557
+ # Raises on 409: Conflict
1558
+ #
1559
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1560
+ # constructed with.
1561
+ # @param body [Hash, nil] Request body, shaped as `BackupPolicyCreate`.
1562
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1563
+ # @return [Hash] Parsed JSON, shaped as `BackupPolicy` — see `sig/infrawrench/sdk.rbs`.
1564
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
1565
+ def create(org_id: nil, body: nil, request_options: nil)
1566
+ @transport.request(
1567
+ http_method: "POST",
1568
+ path: "/api/org/{orgId}/backups/policies",
1569
+ path_params: { "orgId" => org_id },
1570
+ body: body,
1571
+ request_options: request_options
1572
+ )
1573
+ end
1574
+
1575
+ # Delete a backup policy
1576
+ #
1577
+ # Removes the objective. To stop a policy judging without losing it, set
1578
+ # `enabled` to false instead.
1579
+ #
1580
+ # DELETE /api/org/{orgId}/backups/policies/{policyId}
1581
+ #
1582
+ # Raises on 404: Not found
1583
+ #
1584
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1585
+ # constructed with.
1586
+ # @param policy_id [String]
1587
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1588
+ # @return [nil] This endpoint returns no content.
1589
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
1590
+ def delete(policy_id:, org_id: nil, request_options: nil)
1591
+ @transport.request(
1592
+ http_method: "DELETE",
1593
+ path: "/api/org/{orgId}/backups/policies/{policyId}",
1594
+ path_params: { "orgId" => org_id, "policyId" => policy_id },
1595
+ accept: :empty,
1596
+ request_options: request_options
1597
+ )
1598
+ end
1599
+
1600
+ # List the organization's backup policies
1601
+ #
1602
+ # The recovery objectives coverage is judged against. A policy selects
1603
+ # resources by type and/or tag and demands a maximum RPO, a minimum
1604
+ # retention, or both.
1605
+ #
1606
+ # GET /api/org/{orgId}/backups/policies
1607
+ #
1608
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1609
+ # constructed with.
1610
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1611
+ # @return [Hash] Parsed JSON, shaped as `BackupPolicyList` — see `sig/infrawrench/sdk.rbs`.
1612
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
1613
+ def get(org_id: nil, request_options: nil)
1614
+ @transport.request(
1615
+ http_method: "GET",
1616
+ path: "/api/org/{orgId}/backups/policies",
1617
+ path_params: { "orgId" => org_id },
1618
+ request_options: request_options
1619
+ )
1620
+ end
1621
+
1622
+ # Update a backup policy
1623
+ #
1624
+ # Omitted fields are left alone; an explicit `null` clears `tagKey`,
1625
+ # `tagValue`, `maxRpoHours` or `minRetentionDays`. The result is validated
1626
+ # after merging, so a patch that would leave the policy demanding nothing is
1627
+ # rejected.
1628
+ #
1629
+ # PATCH /api/org/{orgId}/backups/policies/{policyId}
1630
+ #
1631
+ # Raises on 400: Bad request
1632
+ #
1633
+ # Raises on 404: Not found
1634
+ #
1635
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1636
+ # constructed with.
1637
+ # @param policy_id [String]
1638
+ # @param body [Hash, nil] Request body, shaped as `BackupPolicyUpdate`.
1639
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1640
+ # @return [Hash] Parsed JSON, shaped as `BackupPolicy` — see `sig/infrawrench/sdk.rbs`.
1641
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
1642
+ def update(policy_id:, org_id: nil, body: nil, request_options: nil)
1643
+ @transport.request(
1644
+ http_method: "PATCH",
1645
+ path: "/api/org/{orgId}/backups/policies/{policyId}",
1646
+ path_params: { "orgId" => org_id, "policyId" => policy_id },
1647
+ body: body,
1648
+ request_options: request_options
1649
+ )
1650
+ end
1651
+ end
1652
+
1653
+ # `client.backups`
1654
+ class BackupsNamespace
1655
+ # @return [BackupsPoliciesNamespace] `client.backups.policies`
1656
+ attr_reader :policies
1657
+
1658
+ # @api private
1659
+ # @param transport [Transport]
1660
+ def initialize(transport)
1661
+ @transport = transport
1662
+ @policies = BackupsPoliciesNamespace.new(@transport)
1663
+ end
1664
+
1665
+ # List backup coverage across synced resources
1666
+ #
1667
+ # What protects the organization's stateful resources, what does not, and
1668
+ # which backups protect nothing. Derived from already-synced inventory using
1669
+ # the `backupRole` and `backupPolicy` declarations plugins carry on their
1670
+ # resource types — no provider API calls are made and results reflect the
1671
+ # last sync. Findings are recomputed on every read rather than stored.
1672
+ # Orphaned backups carry a trailing-30-day spend quote when billing data is
1673
+ # available.
1674
+ #
1675
+ # GET /api/org/{orgId}/backups
1676
+ #
1677
+ # @param org_id [String, nil] Organization id. Defaults to the `org_id` the client was
1678
+ # constructed with.
1679
+ # @param request_options [Hash, nil] Per-call `:headers`, `:timeout` and `:open_timeout`.
1680
+ # @return [Hash] Parsed JSON, shaped as `BackupCoverageResponse` — see
1681
+ # `sig/infrawrench/sdk.rbs`.
1682
+ # @raise [Infrawrench::ApiError] On any non-2xx response.
1683
+ def get(org_id: nil, request_options: nil)
1684
+ @transport.request(
1685
+ http_method: "GET",
1686
+ path: "/api/org/{orgId}/backups",
1687
+ path_params: { "orgId" => org_id },
1688
+ request_options: request_options
1689
+ )
1690
+ end
1691
+ end
1692
+
1538
1693
  # `client.bastions`
1539
1694
  class BastionsNamespace
1540
1695
  # @api private
@@ -13998,6 +14153,8 @@ module Infrawrench
13998
14153
  attr_reader :audit_logs
13999
14154
  # @return [AuthNamespace] `client.auth`
14000
14155
  attr_reader :auth
14156
+ # @return [BackupsNamespace] `client.backups`
14157
+ attr_reader :backups
14001
14158
  # @return [BastionsNamespace] `client.bastions`
14002
14159
  attr_reader :bastions
14003
14160
  # @return [BillingNamespace] `client.billing`
@@ -14162,6 +14319,7 @@ module Infrawrench
14162
14319
  @associations = AssociationsNamespace.new(@transport)
14163
14320
  @audit_logs = AuditLogsNamespace.new(@transport)
14164
14321
  @auth = AuthNamespace.new(@transport)
14322
+ @backups = BackupsNamespace.new(@transport)
14165
14323
  @bastions = BastionsNamespace.new(@transport)
14166
14324
  @billing = BillingNamespace.new(@transport)
14167
14325
  @billing_rules = BillingRulesNamespace.new(@transport)
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.18.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.19.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.18.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.19.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.18.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.19.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.18.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.19.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.18.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.19.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.18.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.19.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.18.0"
18
+ VERSION = "1.19.0"
19
19
  end
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # infrawrench-sdk v1.18.0 | MIT | Copyright (c) 2026 Infrawrench LLC
3
+ # infrawrench-sdk v1.19.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.18.0).
6
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.19.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.18.0 | MIT | Copyright (c) 2026 Infrawrench LLC
1
+ # infrawrench-sdk v1.19.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.18.0).
4
+ # Generated from the Infrawrench API OpenAPI 3.1 spec (API version 1.19.0).
5
5
  #
6
6
  # DO NOT EDIT. Regenerate with:
7
7
  # pnpm --filter @infrawrench/web generate:sdk
@@ -546,6 +546,138 @@ module Infrawrench
546
546
  "totpUser" => String | nil
547
547
  }
548
548
 
549
+ # Spec schema: `BackupCoverageResponse`.
550
+ type backup_coverage_response = {
551
+ "findings" => Array[backup_finding],
552
+ "counts" => backup_severity_counts,
553
+ "kindCounts" => backup_kind_counts,
554
+ "totalCount" => Integer,
555
+ "resources" => Array[backup_coverage_row],
556
+ "summary" => backup_coverage_summary,
557
+ "generatedAt" => String
558
+ }
559
+
560
+ # Spec schema: `BackupCoverageRow`.
561
+ type backup_coverage_row = {
562
+ "resourceId" => String,
563
+ "pluginId" => plugin_id,
564
+ "pluginName" => String,
565
+ "resourceTypeId" => String,
566
+ "resourceTypeName" => String,
567
+ "accountId" => String,
568
+ "accountName" => String,
569
+ "displayName" => String,
570
+ "externalId" => String | nil,
571
+ "state" => "protected" | "automated" | "stale" | "unknown" | "unprotected",
572
+ "backupCount" => Integer,
573
+ "latestBackupId" => String | nil,
574
+ "latestBackupName" => String | nil,
575
+ "latestBackupAt" => String | nil,
576
+ "rpoHours" => Numeric | nil,
577
+ "automatedBackups" => bool | nil,
578
+ "retentionDays" => Numeric | nil,
579
+ "rpoPolicyId" => String | nil,
580
+ "rpoPolicyName" => String | nil,
581
+ "retentionPolicyId" => String | nil,
582
+ "retentionPolicyName" => String | nil,
583
+ "maxRpoHours" => Integer | nil,
584
+ "minRetentionDays" => Integer | nil
585
+ }
586
+
587
+ # Spec schema: `BackupCoverageSummary`.
588
+ type backup_coverage_summary = {
589
+ "statefulCount" => Integer,
590
+ "protectedCount" => Integer,
591
+ "unprotectedCount" => Integer,
592
+ "unknownCount" => Integer,
593
+ "backupCount" => Integer,
594
+ "orphanedBackupCount" => Integer,
595
+ "unattributableBackupCount" => Integer,
596
+ "orphanedGb" => Numeric | nil,
597
+ "orphanedMonthlyCost" => Numeric | nil,
598
+ "currency" => String | nil,
599
+ "worstRpoHours" => Numeric | nil
600
+ }
601
+
602
+ # Spec schema: `BackupFinding`.
603
+ type backup_finding = {
604
+ "resourceId" => String,
605
+ "pluginId" => plugin_id,
606
+ "pluginName" => String,
607
+ "resourceTypeId" => String,
608
+ "resourceTypeName" => String,
609
+ "accountId" => String,
610
+ "accountName" => String,
611
+ "displayName" => String,
612
+ "externalId" => String | nil,
613
+ "kind" => "unprotected" | "rpo-breach" | "retention-below-policy" | "orphaned-snapshot",
614
+ "severity" => "critical" | "high" | "medium" | "low",
615
+ "title" => String,
616
+ "detail" => String,
617
+ "policyId" => String | nil,
618
+ "policyName" => String | nil,
619
+ "rpoHours" => Numeric | nil,
620
+ "maxRpoHours" => Integer | nil,
621
+ "retentionDays" => Numeric | nil,
622
+ "minRetentionDays" => Integer | nil,
623
+ "latestBackupId" => String | nil,
624
+ "latestBackupName" => String | nil,
625
+ "latestBackupAt" => String | nil,
626
+ "sizeGb" => Numeric | nil,
627
+ "monthlyCost" => Numeric | nil,
628
+ "currency" => String | nil
629
+ }
630
+
631
+ # Spec schema: `BackupKindCounts`.
632
+ type backup_kind_counts = {
633
+ "unprotected" => Integer,
634
+ "rpo-breach" => Integer,
635
+ "retention-below-policy" => Integer,
636
+ "orphaned-snapshot" => Integer
637
+ }
638
+
639
+ # Spec schema: `BackupPolicy`.
640
+ type backup_policy = {
641
+ "id" => String,
642
+ "name" => String,
643
+ "resourceTypeIds" => Array[String],
644
+ "tagKey" => String | nil,
645
+ "tagValue" => String | nil,
646
+ "maxRpoHours" => Integer | nil,
647
+ "minRetentionDays" => Integer | nil,
648
+ "enabled" => bool,
649
+ "createdAt" => String,
650
+ "updatedAt" => String
651
+ }
652
+
653
+ # Spec schema: `BackupPolicyCreate`.
654
+ type backup_policy_create = {
655
+ "name" => String,
656
+ ?"resourceTypeIds" => Array[String],
657
+ ?"tagKey" => String | nil,
658
+ ?"tagValue" => String | nil,
659
+ ?"maxRpoHours" => Integer | nil,
660
+ ?"minRetentionDays" => Integer | nil,
661
+ ?"enabled" => bool
662
+ }
663
+
664
+ # Spec schema: `BackupPolicyList`.
665
+ type backup_policy_list = { "policies" => Array[backup_policy] }
666
+
667
+ # Spec schema: `BackupPolicyUpdate`.
668
+ type backup_policy_update = {
669
+ ?"name" => String,
670
+ ?"resourceTypeIds" => Array[String],
671
+ ?"tagKey" => String | nil,
672
+ ?"tagValue" => String | nil,
673
+ ?"maxRpoHours" => Integer | nil,
674
+ ?"minRetentionDays" => Integer | nil,
675
+ ?"enabled" => bool
676
+ }
677
+
678
+ # Spec schema: `BackupSeverityCounts`.
679
+ type backup_severity_counts = { "critical" => Integer, "high" => Integer, "medium" => Integer, "low" => Integer }
680
+
549
681
  # Spec schema: `Bastion`.
550
682
  type bastion = {
551
683
  "id" => String,
@@ -6080,6 +6212,7 @@ module Infrawrench
6080
6212
  | "expiring"
6081
6213
  | "posture"
6082
6214
  | "access-review"
6215
+ | "backups"
6083
6216
  | "dns"
6084
6217
  | "environment-diff"
6085
6218
  | "ssh-fanout"
@@ -6445,6 +6578,20 @@ module Infrawrench
6445
6578
  def orgs: (?request_options: Hash[Symbol, untyped]?) -> Array[org_membership]
6446
6579
  end
6447
6580
 
6581
+ class BackupsPoliciesNamespace
6582
+ def initialize: (Transport) -> void
6583
+ def create: (?org_id: String?, ?body: backup_policy_create?, ?request_options: Hash[Symbol, untyped]?) -> backup_policy
6584
+ def delete: (policy_id: String, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> nil
6585
+ def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> backup_policy_list
6586
+ def update: (policy_id: String, ?org_id: String?, ?body: backup_policy_update?, ?request_options: Hash[Symbol, untyped]?) -> backup_policy
6587
+ end
6588
+
6589
+ class BackupsNamespace
6590
+ attr_reader policies: BackupsPoliciesNamespace
6591
+ def initialize: (Transport) -> void
6592
+ def get: (?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> backup_coverage_response
6593
+ end
6594
+
6448
6595
  class BastionsNamespace
6449
6596
  def initialize: (Transport) -> void
6450
6597
  def create: (body: create_bastion_request, ?org_id: String?, ?request_options: Hash[Symbol, untyped]?) -> create_bastion_response
@@ -7369,6 +7516,7 @@ module Infrawrench
7369
7516
  attr_reader associations: AssociationsNamespace
7370
7517
  attr_reader audit_logs: AuditLogsNamespace
7371
7518
  attr_reader auth: AuthNamespace
7519
+ attr_reader backups: BackupsNamespace
7372
7520
  attr_reader bastions: BastionsNamespace
7373
7521
  attr_reader billing: BillingNamespace
7374
7522
  attr_reader billing_rules: BillingRulesNamespace
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.18.0
4
+ version: 1.19.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-08-12 00:00:00.000000000 Z
13
13
  dependencies: []
14
- description: Generated Ruby client for the Infrawrench API (v1.18.0). Covers the published
14
+ description: Generated Ruby client for the Infrawrench API (v1.19.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.18.0).
61
+ summary: Generated Ruby client for the Infrawrench API (v1.19.0).
62
62
  test_files: []