{
  "openapi": "3.0.0",
  "info": {
    "version": "c11fc5ef",
    "title": "HCP Terraform/Terraform Enterprise API v2-Beta",
    "description": "OpenAPI Specification for the HCP Terraform/Terraform Enterprise API V2 Public Beta.",
    "license": {
      "name": "MPL-2.0",
      "url": "https://www.mozilla.org/en-US/MPL/2.0/"
    },
    "contact": {
      "name": "API Support",
      "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs"
    }
  },
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "tags": [
    {
      "name": "accounts",
      "x-displayName": "Accounts",
      "description": "Account actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/account"
      }
    },
    {
      "name": "agent-pools",
      "x-displayName": "Agents and Agent Pools",
      "description": "Agent and Agent Pool actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/agents"
      }
    },
    {
      "name": "audit-trails",
      "x-vis": [
        "hcpt"
      ],
      "x-displayName": "Audit Trails",
      "description": "Audit trail event listing for HCP Terraform organizations",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/audit-trails"
      }
    },
    {
      "name": "auditing",
      "x-displayName": "Auditing",
      "description": "Auditing actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/audit-trails"
      }
    },
    {
      "name": "feature-sets",
      "x-vis": [
        "hcpt"
      ],
      "x-displayName": "Feature Sets",
      "description": "Feature set actions representing different pricing plans",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/feature-sets"
      }
    },
    {
      "name": "subscriptions",
      "x-vis": [
        "hcpt"
      ],
      "x-displayName": "Subscriptions",
      "description": "Subscription actions for HCP Terraform billing and feature access",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/subscriptions"
      }
    },
    {
      "name": "configuration-versions",
      "x-displayName": "Configuration Versions",
      "description": "Configuration Version actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/configuration-versions"
      }
    },
    {
      "name": "data-retention-policies",
      "x-vis": [
        "tfe"
      ],
      "x-displayName": "Data Retention Policies",
      "description": "Data Retention Policy actions"
    },
    {
      "name": "organizations",
      "x-displayName": "Organizations",
      "description": "Organization actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/organizations"
      }
    },
    {
      "name": "organization-memberships",
      "x-displayName": "Organization Memberships",
      "description": "Organization membership management, including inviting and removing members",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/organization-memberships"
      }
    },
    {
      "name": "recoverable-items",
      "x-displayName": "Recoverable Items",
      "description": "Recoverable items (soft-deleted resources) management"
    },
    {
      "name": "token-ttl-policies",
      "x-displayName": "Token TTL Policies",
      "description": "Token TTL policy management, including creating and updating policies"
    },
    {
      "name": "projects",
      "x-displayName": "Projects",
      "description": "Project actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/projects"
      }
    },
    {
      "name": "workspaces",
      "x-displayName": "Workspaces",
      "description": "Workspace management, locking, and related operations",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/workspaces"
      }
    },
    {
      "name": "provider-sets",
      "x-displayName": "Provider Sets",
      "description": "Provider set management for organizations, projects, and workspaces",
      "x-vis": [
        "public-beta"
      ]
    },
    {
      "name": "varsets",
      "x-displayName": "Variable Sets",
      "description": "Variable set management for organizations, projects, and workspaces",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/variable-sets"
      }
    },
    {
      "name": "registry",
      "x-displayName": "Registry",
      "description": "Private Registry actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/registry"
      }
    },
    {
      "name": "hyok",
      "x-vis": [
        "hcpt"
      ],
      "x-displayName": "HYOK",
      "description": "HYOK Configuration actions and key data"
    },
    {
      "name": "runs",
      "x-displayName": "Runs",
      "description": "Run actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/run"
      }
    },
    {
      "name": "run-tasks",
      "x-displayName": "Run Tasks",
      "description": "Run task actions for organizations and workspaces",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/run-tasks/run-tasks"
      }
    },
    {
      "name": "task-stages",
      "x-displayName": "Run Task Stages and Results",
      "description": "Run task stage and result actions for tracking run task execution",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/run-tasks/run-task-stages"
      }
    },
    {
      "name": "policies",
      "x-displayName": "Policies",
      "description": "Sentinel and OPA policy management for organizations",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/policies"
      }
    },
    {
      "name": "policy-checks",
      "x-displayName": "Policy Checks",
      "description": "Sentinel policy check actions for runs",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/policy-checks"
      }
    },
    {
      "name": "tf-policy-evaluations",
      "x-vis": [
        "public-beta"
      ],
      "x-displayName": "Terraform Policy Evaluations",
      "description": "Terraform Policy evaluation actions and outcomes for runs.\n\n**Note:** These APIs are in public beta and are available in HCP Terraform only.\n"
    },
    {
      "name": "policy-set-params",
      "x-displayName": "Policy Set Parameters",
      "description": "Sentinel policy set parameter management",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/policy-set-params"
      }
    },
    {
      "name": "policy-sets",
      "x-displayName": "Policy Sets",
      "description": "Policy set management including workspace, project, and policy associations",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/policy-sets"
      }
    },
    {
      "name": "policy-set-versions",
      "x-displayName": "Policy Set Versions",
      "description": "Policy set version management and policy file uploads",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/policy-sets"
      }
    },
    {
      "name": "policy-evaluations",
      "x-displayName": "Policy Evaluations",
      "description": "Sentinel and OPA policy evaluation actions for task stages and policy set outcomes",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/policy-evaluations"
      }
    },
    {
      "name": "run-triggers",
      "x-displayName": "Run Triggers",
      "description": "Run trigger actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/run-triggers"
      }
    },
    {
      "name": "notification-configurations",
      "x-displayName": "Notification Configurations",
      "description": "Notification configuration actions for workspaces and teams",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/notification-configurations"
      }
    },
    {
      "name": "email-recipient-statuses",
      "x-displayName": "Email Recipient Statuses",
      "description": "Email recipient verification and unsubscribe actions"
    },
    {
      "name": "plans",
      "x-displayName": "Plans",
      "description": "Plan actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/plans"
      }
    },
    {
      "name": "assessment-results",
      "x-displayName": "Assessment Results",
      "description": "Assessment Result actions"
    },
    {
      "name": "plan-exports",
      "x-displayName": "Plan Exports",
      "description": "Plan export actions for downloading exported plan data",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/plan-exports"
      }
    },
    {
      "name": "applies",
      "x-displayName": "Applies",
      "description": "Applies",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/applies"
      }
    },
    {
      "name": "cost-estimates",
      "x-displayName": "Cost Estimates",
      "description": "Cost estimate actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/cost-estimates"
      }
    },
    {
      "name": "state-versions",
      "x-displayName": "State Versions",
      "description": "State version actions for reading, creating, and managing Terraform state versions for a workspace",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/state-versions"
      }
    },
    {
      "name": "state-version-outputs",
      "x-displayName": "State Version Outputs",
      "description": "State version output actions for reading Terraform output values from a state version or a workspace's current state",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/state-version-outputs"
      }
    },
    {
      "name": "authentication-tokens",
      "x-displayName": "Authentication Tokens",
      "description": "Authentication Token Actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/users-teams-organizations/api-tokens"
      }
    },
    {
      "name": "metrics-tokens",
      "x-vis": [
        "hcpt"
      ],
      "x-displayName": "Metrics Tokens",
      "description": "Metrics Service tokens API",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/metrics-service-tokens"
      }
    },
    {
      "name": "users",
      "x-displayName": "Users",
      "description": "User actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/users"
      }
    },
    {
      "name": "teams",
      "x-displayName": "Teams",
      "description": "Team management actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/teams"
      }
    },
    {
      "name": "team-projects",
      "x-displayName": "Team Project Access",
      "description": "Team access management for projects",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/team-project-access"
      }
    },
    {
      "name": "team-access",
      "x-displayName": "Team Workspace Access",
      "description": "Team access management for workspaces",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/team-access"
      }
    },
    {
      "name": "vcs",
      "x-displayName": "Version Control System",
      "description": "Operations related to VCS repositories and files",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/vcs"
      }
    },
    {
      "name": "oauth-clients",
      "x-displayName": "OAuth Clients",
      "description": "OAuth Client management for VCS provider connections",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/oauth-clients"
      }
    },
    {
      "name": "oauth-tokens",
      "x-displayName": "OAuth Tokens",
      "description": "OAuth Token management for VCS provider connections",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/oauth-tokens"
      }
    },
    {
      "name": "github-app-installations",
      "x-displayName": "GitHub App Installations",
      "description": "GitHub App installation management for connecting GitHub accounts and organizations",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/github-app-installations"
      }
    },
    {
      "name": "vcs-events",
      "x-displayName": "VCS Events",
      "description": "VCS event listing and filtering for an organization",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/vcs-events"
      }
    },
    {
      "name": "queries",
      "x-displayName": "Queries",
      "description": "Query actions",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/queries"
      }
    },
    {
      "name": "ssh-keys",
      "x-displayName": "SSH Keys",
      "description": "SSH Key management",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/ssh-keys"
      }
    },
    {
      "name": "change-requests",
      "x-displayName": "Change Requests",
      "description": "Change request actions for tracking workspace to-dos",
      "externalDocs": {
        "url": "https://developer.hashicorp.com/terraform/cloud-docs/api-docs/change-requests"
      }
    },
    {
      "name": "workspace-transfers",
      "x-displayName": "Workspace Transfers",
      "description": "Transfer workspaces across organizations"
    },
    {
      "name": "tag-binding",
      "x-displayName": "Tag Bindings",
      "description": "Tag bindings on resources"
    },
    {
      "name": "admin-banners",
      "x-vis": [
        "tfe"
      ],
      "x-displayName": "Admin Banners",
      "description": "Site-wide announcement banner management for Terraform Enterprise administrators."
    },
    {
      "name": "admin-customization-settings",
      "x-displayName": "Admin Customization Settings",
      "description": "Admin customization settings for Terraform Enterprise and HCP Terraform. TFE-only attributes (internal-support-url, internal-documentation-url, internal-tutorials-url, avatar-sources) are available only on Terraform Enterprise.\n"
    }
  ],
  "paths": {
    "/admin/banners": {
      "x-vis": [
        "tfe"
      ],
      "get": {
        "operationId": "getActiveBanners",
        "security": [],
        "summary": "Retrieve Active Site-Wide Announcement Banners",
        "description": "Returns the currently active site-wide announcement banners as an array. Scheduling is evaluated at request time: banners whose scheduled-publish-at has not yet passed or whose scheduled-expire-at has already passed are excluded. Audience filtering is applied server-side: unauthenticated callers receive only all_users banners; authenticated callers receive all active banners regardless of audience. Returns an empty array when no matching banner exists.\n\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "admin-banners"
        ],
        "responses": {
          "200": {
            "description": "Active banners retrieved successfully. Array is empty when none are active.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/admin-banners-collection-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createAdminBanner",
        "summary": "Create Site-Wide Announcement Banner",
        "description": "Creates a site-wide announcement banner. Only one banner can be active at a time; creating a new banner automatically deactivates any existing active banner. If neither scheduled-publish-at nor scheduled-expire-at are provided, the banner is published immediately.\n\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "admin-banners"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/admin-banners-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Banner created successfully.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/admin-banners-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/admin/banners/{id}": {
      "x-vis": [
        "tfe"
      ],
      "patch": {
        "operationId": "updateAdminBanner",
        "summary": "Update Site-Wide Announcement Banner",
        "description": "Updates an existing site-wide announcement banner. Partial updates are supported: only fields present in the request body are modified. All model validations apply, including the schedule all-or-nothing rule. Returns the updated banner on success.\n\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "admin-banners"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the banner to update (e.g. ab-xxxxxxxxxxxxxxxx)."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/admin-banners-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Banner updated successfully.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/admin-banners-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Banner not found. The provided id does not match any banner.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deactivateAdminBanner",
        "summary": "Deactivate Site-Wide Announcement Banner",
        "description": "Deactivates a site-wide announcement banner. This is a soft delete: the banner row is retained for audit history, but deactivated-at is set to the current timestamp and the banner is no longer returned by the active banner endpoint. Returns 204 No Content on success.\n\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "admin-banners"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the banner to deactivate (e.g. ab-xxxxxxxxxxxxxxxx)."
          }
        ],
        "responses": {
          "204": {
            "description": "Banner deactivated successfully."
          },
          "404": {
            "description": "Banner not found. The provided id does not match any banner.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/admin/customization-settings": {
      "get": {
        "operationId": "getAdminCustomizationSettings",
        "summary": "Retrieve Admin Customization Settings",
        "description": "Returns the current admin customization settings singleton. This endpoint is available to all authenticated users (not restricted to site administrators) so that the UI can read customization values for display. TFE-only attributes (internal-support-url, internal-documentation-url, internal-tutorials-url, avatar-sources) are only present in the response when running Terraform Enterprise.\n",
        "tags": [
          "admin-customization-settings"
        ],
        "responses": {
          "200": {
            "description": "Customization settings retrieved successfully.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/admin-customization-settings-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateAdminCustomizationSettings",
        "summary": "Update Admin Customization Settings",
        "description": "Updates the admin customization settings singleton. Only site administrators may update these settings. Partial updates are supported: only attributes present in the request body are modified. TFE-only attributes (internal-support-url, internal-documentation-url, internal-tutorials-url, avatar-sources) are silently ignored when submitted against an HCP Terraform instance. Setting an optional URL field to null or an empty string clears the override and restores the default HashiCorp link.\n",
        "tags": [
          "admin-customization-settings"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/admin-customization-settings-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Customization settings updated successfully.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/admin-customization-settings-envelope"
                }
              }
            }
          },
          "422": {
            "description": "Validation failed. For example, an invalid URL scheme was submitted.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/account/details": {
      "get": {
        "operationId": "getAccountDetails",
        "summary": "Account Details",
        "description": "Get your account details",
        "tags": [
          "accounts"
        ],
        "responses": {
          "200": {
            "description": "Account details",
            "content": {
              "application/vnd.api+json": {
                "examples": {
                  "successResponse": {
                    "summary": "Example successful response",
                    "value": {
                      "data": {
                        "type": "users",
                        "id": "user-12345678",
                        "attributes": {},
                        "relationships": {},
                        "links": {
                          "self": "https://app.terraform.io/api/v2/account/details"
                        }
                      }
                    }
                  }
                },
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/users-envelope"
                    },
                    {
                      "description": "User resource representing the account details of the authenticated user.\nFor internal reasons, HCP Terraform associates team and organization tokens\nwith a synthetic user account called service user.\n"
                    }
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/account/update": {
      "patch": {
        "operationId": "updateAccount",
        "summary": "Update account",
        "description": "Update your username and email address. Other attributes are ignored.",
        "tags": [
          "accounts"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/users-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Account updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/users-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/account/password": {
      "patch": {
        "operationId": "updateAccountPassword",
        "summary": "Update account password",
        "description": "Change your account password",
        "tags": [
          "accounts"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "required": [
                  "data"
                ],
                "properties": {
                  "data": {
                    "type": "object",
                    "required": [
                      "type",
                      "attributes"
                    ],
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "users"
                        ]
                      },
                      "attributes": {
                        "type": "object",
                        "properties": {
                          "current_password": {
                            "type": "string",
                            "description": "The user's current password. Unlike most API data attributes, this one uses underscore_case instead of kebab-case."
                          },
                          "password": {
                            "type": "string",
                            "description": "The user's new password."
                          },
                          "password_confirmation": {
                            "type": "string",
                            "description": "The confirmation of the user's new password. Unlike most API data attributes, this one uses underscore_case instead of kebab-case."
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Account updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/users-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/account/hcp-organizations/{hcp_organization_id}": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "getHCPOrganization",
        "summary": "HCP Organization",
        "tags": [
          "accounts"
        ],
        "description": "Get details of a specific HCP organization\n\nThis operation is only available in HCP Terraform.",
        "parameters": [
          {
            "name": "hcp_organization_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/hcp-organization-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/feature-sets": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "summary": "List Feature Sets",
        "description": "Lists the feature sets available in HCP Terraform. Returns feature sets that are active, current, and public.\n\nThis operation is only available in HCP Terraform.",
        "operationId": "listFeatureSets",
        "tags": [
          "feature-sets"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Successfully retrieved feature sets",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/feature-sets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/feature-sets": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "summary": "List Feature Sets for Organization",
        "description": "Lists the feature sets a particular organization is eligible to access.\n\nThis operation is only available in HCP Terraform.",
        "operationId": "listOrganizationFeatureSets",
        "tags": [
          "feature-sets"
        ],
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "description": "The name of the organization",
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Successfully retrieved feature sets for the organization",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/feature-sets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization not found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{id}": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "showSubscription",
        "summary": "Show a subscription",
        "description": "Show details of a subscription.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "subscriptions"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The ID of the subscription to show.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Subscription details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/subscriptions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Subscription not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/subscription": {
      "x-vis": [
        "hcpt"
      ],
      "patch": {
        "operationId": "updateOrganizationSubscription",
        "summary": "Update organization subscription",
        "description": "Update configurable fields on an organization's active subscription. Currently supports setting, updating, or clearing the RUM alert threshold. Requires org owner permissions. Only available on paid RUM plans.\n\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "subscriptions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "required": [
                  "data"
                ],
                "properties": {
                  "data": {
                    "type": "object",
                    "required": [
                      "type",
                      "attributes"
                    ],
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "subscriptions"
                        ]
                      },
                      "attributes": {
                        "type": "object",
                        "properties": {
                          "rum-alert-threshold": {
                            "type": "integer",
                            "nullable": true,
                            "minimum": 0,
                            "description": "The RUM usage alert threshold. When the organization's billable resource count meets or exceeds this value, an alert email is sent to org owners. Send null or 0 to clear the threshold and disable alerting.\n"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Subscription updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/subscriptions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/agent-pools": {
      "post": {
        "operationId": "createAgentPool",
        "summary": "Create Agent Pool",
        "description": "Create an agent pool for an organization.",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/agent-pools-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Agent pool created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/agent-pools-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "listAgentPools",
        "summary": "List Agent Pools",
        "description": "List agent pools, their agents, and their tokens for an organization.",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          },
          {
            "in": "query",
            "name": "filter[allowed-workspaces][name]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filters agent pools to those associated with the given workspace. The workspace must have permission to use the agent pool."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Agent pools are searchable by name."
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Allows sorting the returned agents pools. Valid values are \"name\" and \"created-at\". Prepending a hyphen to the sort parameter will reverse the order (e.g. \"-name\")."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Agent pools",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/agent-pools"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/agent-pools/{agent_pool_id}": {
      "get": {
        "operationId": "getAgentPool",
        "summary": "Get Agent Pool details",
        "description": "Get details about an agent pool",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_pool_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Agent Pool ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Agent pool details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/agent-pools-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateAgentPool",
        "summary": "Update Agent Pool",
        "description": "Update an agent pool",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_pool_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Agent Pool ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/agent-pools-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Agent pool updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/agent-pools-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteAgentPool",
        "summary": "Delete Agent Pool",
        "description": "Delete an agent pool",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_pool_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Agent Pool ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Agent pool deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/agent-pools/{agent_pool_id}/agents": {
      "get": {
        "operationId": "listAgents",
        "summary": "List Agents",
        "description": "List all agents in the specified agent pool.",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_pool_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the Agent Pool to list."
          },
          {
            "in": "query",
            "name": "filter[last-ping-since]",
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "required": false,
            "description": "Accepts a date in ISO8601 format (ex. `2020-08-11T10:41:23Z`)."
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Allows sorting the returned agents. Valid value is \"created-at\". Prepending a hyphen to the sort parameter will reverse the order (e.g. \"-name\")."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/agents"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Agent Pool not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/agents/{agent_id}": {
      "get": {
        "operationId": "getAgent",
        "summary": "Get Agent details",
        "description": "Get details about an agent",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Agent ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Agent details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/agents-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteAgent",
        "summary": "Delete Agent",
        "description": "Remove an agent",
        "tags": [
          "agent-pools"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Agent ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Agent removed"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/cidr-range-lists/{cidr_range_list_id}": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getCidrRangeList",
        "summary": "Get CIDR Range List details",
        "description": "Get details about a CIDR Range List\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_list_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "CIDR Range List ID"
          }
        ],
        "responses": {
          "200": {
            "description": "CIDR Range List details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/cidr-range-list-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateCidrRangeList",
        "summary": "Update CIDR Range List",
        "description": "Update a CIDR Range List\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_list_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "CIDR Range List ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/cidr-range-list-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "CIDR Range List updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/cidr-range-list-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteCidrRangeList",
        "summary": "Delete CIDR Range List",
        "description": "Delete a CIDR Range List.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_list_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "CIDR Range List ID"
          }
        ],
        "responses": {
          "204": {
            "description": "CIDR Range List deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/cidr-range-lists/{cidr_range_list_id}/relationships/cidr-ranges": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "listCidrRanges",
        "summary": "List CIDR Ranges",
        "description": "List all CIDR Ranges in a CIDR Range List\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_list_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "CIDR Range List ID"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/cidr-ranges"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Organization not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createCidrRange",
        "summary": "Create CIDR Range",
        "description": "Create a new CIDR Range\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_list_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of a CIDR Range List for the newly created CIDR Range"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/cidr-ranges-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "CIDR Range created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/cidr-ranges-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/cidr-range-lists/{cidr_range_list_id}/relationships/agent-pools": {
      "x-vis": [
        "public-beta"
      ],
      "post": {
        "operationId": "assignAgentPoolsToCidrRangeList",
        "summary": "Assign Agent Pools to a CIDR Range List",
        "description": "Assign one or more Agent Pools to a CIDR Range List\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_list_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of a CIDR Range List to assign Agent Pools to"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/agent-pool-ids"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Agent Pools assigned. No content is returned."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "unassignAgentPoolsFromCidrRangeList",
        "summary": "Unassign Agent Pools from a CIDR Range List",
        "description": "Unassign one or more Agent Pools from a CIDR Range List\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_list_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the CIDR Range List you want to unassign Agent Pools from"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/agent-pool-ids"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Agent Pools unassigned. No content is returned."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/cidr-ranges/{cidr_range_id}": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getCidrRange",
        "summary": "Get CIDR Range details",
        "description": "Get details about a CIDR Range\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "CIDR Range ID"
          }
        ],
        "responses": {
          "200": {
            "description": "CIDR Range details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/cidr-ranges-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateCidrRange",
        "summary": "Update CIDR Range",
        "description": "Update a CIDR Range\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "CIDR Range ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/cidr-ranges-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "CIDR Range updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/cidr-ranges-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteCidrRange",
        "summary": "Delete CIDR Range",
        "description": "Delete a CIDR Range.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "cidr_range_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "CIDR Range ID"
          }
        ],
        "responses": {
          "204": {
            "description": "CIDR Range deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/metrics-tokens": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "listMetricsTokens",
        "summary": "List tokens",
        "description": "Lists all Metrics service tokens for the organization.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "metrics-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to list tokens for."
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/metrics-token"
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createMetricsToken",
        "summary": "Generate a new token",
        "description": "Generates a new Metrics Service token.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "metrics-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to generate a token for."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "required": [
                  "data"
                ],
                "properties": {
                  "data": {
                    "type": "object",
                    "required": [
                      "type",
                      "attributes"
                    ],
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "metrics-tokens"
                        ]
                      },
                      "attributes": {
                        "type": "object",
                        "required": [
                          "name"
                        ],
                        "properties": {
                          "name": {
                            "type": "string",
                            "description": "The name of the token."
                          },
                          "expires-at": {
                            "type": "string",
                            "format": "date-time",
                            "description": "The time when the token expires."
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/metrics-token"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/metrics-tokens/{id}": {
      "x-vis": [
        "hcpt"
      ],
      "delete": {
        "operationId": "deleteMetricsToken",
        "summary": "Delete a token",
        "description": "Deletes a Metrics Service token.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "metrics-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Which organization's token should be deleted."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the token to delete."
          }
        ],
        "responses": {
          "204": {
            "description": "Success"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/stacks": {
      "get": {
        "operationId": "listStacks",
        "summary": "List Stacks",
        "description": "List stacks.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Allows sorting the returned stacks. Valid values are \"name\" and \"created-at\". Prepending a hyphen to the sort parameter will reverse the order (e.g. \"-name\")."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "organization",
                  "project",
                  "latest-stack-configuration"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships of the specified name"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stacks",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stacks"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks": {
      "post": {
        "operationId": "createStack",
        "summary": "Create Stack",
        "description": "Create an stack for an organization.",
        "tags": [
          "stacks"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/stacks-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Stack created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stacks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}": {
      "get": {
        "operationId": "getStack",
        "summary": "Get Stack details",
        "description": "Get details about a stack",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stacks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateStack",
        "summary": "Update Stack",
        "description": "Update a stack",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/stacks-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Stack updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stacks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteStack",
        "summary": "Delete Stack",
        "description": "Delete a stack",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack ID"
          },
          {
            "in": "query",
            "name": "force",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "Force delete"
          }
        ],
        "responses": {
          "204": {
            "description": "Stack deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/stack-configuration-summaries": {
      "get": {
        "operationId": "listStackConfigurationSummaries",
        "summary": "List stack configuration summaries.",
        "description": "List stack configuration summaries.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Summary information for all stack configurations.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-configuration-summaries"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/fetch-latest-from-vcs": {
      "post": {
        "operationId": "fetchLatestConfigurationFromVCS",
        "summary": "Fetch Latest Configuration from VCS",
        "description": "Fetch the latest configuration from version control system.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Fetch successfuly started the process of retrieving the latest configuration from VCS."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/latest-output-summary": {
      "get": {
        "operationId": "getStackLatestOutputSummary",
        "summary": "Get latest stack output summary",
        "description": "Redirects to a short-lived URL where the latest aggregated output summary for the stack can be downloaded. Returns a 404 when the stack has no aggregated outputs yet.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack ID"
          }
        ],
        "responses": {
          "307": {
            "description": "Temporary redirect to the URL where the stack output summary can be downloaded.",
            "headers": {
              "Location": {
                "description": "URL where the stack output summary can be downloaded.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "The stack has no aggregated outputs.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/stack-configurations": {
      "post": {
        "operationId": "createStackConfiguration",
        "summary": "Create stack configuration",
        "description": "Create an stack configuration for a stack.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack"
          },
          {
            "in": "query",
            "name": "source",
            "schema": {
              "type": "string",
              "enum": [
                "manual",
                "fetch",
                "reuse"
              ],
              "default": "manual"
            },
            "description": "Whether to reuse the latest configuration content, fetch new content from VCS, or await manual upload to an upload URL."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/stack-configurations-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Stack configuration created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "listStackConfigurations",
        "summary": "List stack configurations",
        "description": "List configurations for a stack.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "ingress-attributes",
                  "stack-configuration-summary"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Accepts a comma-separated list of the enumerated values."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack configurations list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-configurations"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}": {
      "get": {
        "operationId": "getStackConfigurations",
        "summary": "Get Stack Configuration details",
        "description": "Get details about a stack configuration",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack configuration ID"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "ingress-attributes",
                  "stack-configuration-summary",
                  "stack-diagnostics",
                  "stack-aggregate-outputs"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Accepts a comma-separated list of the enumerated values."
          }
        ],
        "responses": {
          "200": {
            "description": "Stack configuration details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/stack-deployments": {
      "get": {
        "operationId": "listStackDeployments",
        "summary": "List stack deployments",
        "description": "List deployments for a stack.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack"
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "description": "Allows sorting by deployment name, 'deployment' or '-deployment' for descending.",
            "schema": {
              "type": "string",
              "enum": [
                "deployment,",
                "-deployment"
              ]
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Stack deployments are searchable by deployment name."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack deployment list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-deployments"
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/stack-deployments/{deployment}/stack-deployment-runs": {
      "get": {
        "operationId": "listDeploymentRuns",
        "summary": "List stack deployment runs.",
        "description": "List stack deployment runs.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack."
          },
          {
            "in": "path",
            "name": "deployment",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "To return the deployment runs for a specific deployment in a stack."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Information for all stack deployment runs for a deployment.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-deployment-runs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/stack-states": {
      "get": {
        "operationId": "listStackStates",
        "summary": "List stack states",
        "description": "List states for a stack.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack state list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-states"
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/stack-output-consumers/upstream": {
      "get": {
        "operationId": "listStackOutputConsumers",
        "summary": "List stack output consumers",
        "description": "List output consumers for a stack(upstream or downstream).",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack"
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "description": "Allows sorting by deployment, stack_name, upstream_name, upstream_publish_output_address, for example 'deployment' or '-deployment' for descending.",
            "schema": {
              "type": "string",
              "enum": [
                "deployment",
                "-deployment",
                "stack_name",
                "upstream_name",
                "upstream_publish_output_address",
                "-stack_name",
                "-upstream_name",
                "-upstream_publish_output_address"
              ]
            }
          },
          {
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Stack output consumers are searchable by deployment, stack_name, upstream_name, upstream_publish_output_address."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack output consumer list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-output-consumers"
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stacks/{stack_id}/stack-output-consumers/downstream": {
      "get": {
        "operationId": "listStackOutputConsumers",
        "summary": "List stack output consumers",
        "description": "List output consumers for a stack(upstream or downstream).",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack"
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "description": "Allows sorting by deployment, stack_name, upstream_name, upstream_publish_output_address, for example 'deployment' or '-deployment' for descending.",
            "schema": {
              "type": "string",
              "enum": [
                "deployment",
                "-deployment",
                "stack_name",
                "upstream_name",
                "upstream_publish_output_address",
                "-stack_name",
                "-upstream_name",
                "-upstream_publish_output_address"
              ]
            }
          },
          {
            "in": "query",
            "name": "search",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Stack output consumers are searchable by deployment, stack_name, upstream_name, upstream_publish_output_address."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack output consumer list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-output-consumers"
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-states/{stack_state_id}": {
      "get": {
        "operationId": "getStackState",
        "summary": "Get Stack State Details",
        "description": "Get details about a stack state",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_state_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack state ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack state details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-states-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-states/{stack_state_id}/description": {
      "get": {
        "operationId": "getStackStateDescription",
        "summary": "Get stack state description",
        "description": "Download the stack state description as a .json file.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_state_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack state ID"
          }
        ],
        "responses": {
          "200": {
            "description": ".json file containing the stack state description.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}/stack-deployment-runs": {
      "get": {
        "operationId": "getStackConfigurationDeploymentRunsCollection",
        "summary": "Get collection of deployment runs for a stack configuration",
        "description": "Index all deployment runs for a stack configuration.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack configuration ID"
          },
          {
            "in": "query",
            "name": "q",
            "required": false,
            "description": "A search query string. Stack deployment runs are searchable by deployment name and deployment group name.",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "description": "Allows sorting by deployment or deployment-group-name e.g., 'deployment' or '-deployment' for descending.",
            "schema": {
              "type": "string",
              "enum": [
                "deployment,",
                "-deployment,",
                "deployment-group-name,",
                "-deployment-group-name"
              ]
            }
          },
          {
            "in": "query",
            "name": "filter[status]",
            "required": false,
            "description": "Filter by deployment run status. Accepts a comma-separated list of statuses. Some statuses match multiple underlying run states: pending matches pending, acquiring-lock, and pending-capacity; running matches pre-deploying and deploying; pending-operator matches pre-deploying-pending-operator and deploying-pending-operator.",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "pending",
                  "running",
                  "pending-operator",
                  "succeeded",
                  "failed",
                  "abandoned"
                ]
              }
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack configurations list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-deployment-runs"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}/stack-deployment-group-summaries": {
      "get": {
        "operationId": "listStackDeploymentGroupSummaries",
        "summary": "List stack deployment group summaries.",
        "description": "List stack deployment group summaries for a given stack configuration.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack configuration."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Summary information for all deployment groups.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-deployment-group-summaries"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}/stack-diagnostics": {
      "get": {
        "operationId": "listStackConfigurationDiagnostics",
        "summary": "List stack configuration diagnostics",
        "description": "List the diagnostics for a given stack configuration.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack configuration"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Diagnostics list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-diagnostics"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-diagnostics/{stack_diagnostic_id}": {
      "get": {
        "operationId": "getStackDiagnostic",
        "summary": "Get stack diagnostic details",
        "description": "Get details about a stack diagnostic",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_diagnostic_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack diagnostic ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack diagnostic details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/stack-diagnostics"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}/upload-url": {
      "get": {
        "operationId": "getStackConfigurationUploadUrl",
        "summary": "Get stack configuration upload URL",
        "description": "Get a url to upload a stack configuration",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack configuration ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack configuration details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "object",
                      "properties": {
                        "source-upload-url": {
                          "type": "string",
                          "description": "URL to upload the stack configuration"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}/stack-published-outputs": {
      "get": {
        "operationId": "listStackConfigurationPublishedOutputs",
        "summary": "List stack configuration published outputs",
        "description": "List the published outputs for a given stack configuration.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack configuration"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack Published Outputs list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-published-outputs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}/stack-deployment-groups": {
      "get": {
        "operationId": "listStackConfigurationDeploymentGroups",
        "summary": "List Stack Deployment Groups",
        "description": "List deployment groups for a stack configuration.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack configuration."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Stack deployment groups are searchable by group name."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by deployment group status. Accepts a comma-separated list of statuses: pending, pre-deploying, deploying, succeeded, failed, abandoned."
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "description": "Allows sorting by group name or status priority, e.g. 'name' or '-name' for descending. Sorting by 'status-priority' orders groups from highest to lowest priority (failed, deploying, pre-deploying, pending, abandoned, succeeded).",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "-name",
                "status-priority",
                "-status-priority"
              ]
            }
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "stack-deployment-group-summary"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Accepts a comma-separated list of the enumerated values."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack Deployment group list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-deployment-groups"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-configurations/{stack_configuration_id}/stack-deployment-groups/{stack_deployment_group_name}": {
      "get": {
        "operationId": "getStackDeploymentGroupByName",
        "summary": "Get Stack Deployment Group by name",
        "description": "Get details about a stack deployment group by name.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack configuration ID"
          },
          {
            "in": "path",
            "name": "stack_deployment_group_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment group name"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack deployment group details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-deployment-groups-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-groups/{stack_deployment_group_id}": {
      "get": {
        "operationId": "getStackDeploymentGroupById",
        "summary": "Get Stack Deployment Group by ID",
        "description": "Get details about a stack deployment group.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_group_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment group ID"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "stack-deployment-group-summary"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Accepts a comma-separated list of the enumerated values."
          }
        ],
        "responses": {
          "200": {
            "description": "Stack deployment group details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-deployment-groups-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-groups/{stack_deployment_group_id}/approve-all-plans": {
      "post": {
        "operationId": "approveStackDeploymentGroup",
        "summary": "Approve Stack Deployment Group",
        "description": "Approve a stack deployment group.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_group_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment group ID"
          }
        ],
        "requestBody": {
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/action-reason"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Approve all plans successfully recieved for Stack Deployment Group"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-groups/{stack_deployment_group_id}/rerun": {
      "post": {
        "operationId": "rerunStackDeploymentInGroup",
        "summary": "Rerun deployments within a Deployment Group",
        "description": "Rerun deployments that have ended up in a failed or abandoned state. Provide the `deployments` query parameter to rerun specific deployments, or omit it to rerun every eligible (failed or abandoned) deployment in the group.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_group_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment group ID"
          },
          {
            "in": "query",
            "name": "deployments",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "required": false,
            "explode": false,
            "description": "Stack deployments we wish to rerun. When omitted, every eligible deployment in the group is rerun."
          }
        ],
        "responses": {
          "204": {
            "description": "Rerun successfully triggered for Stack Deployment Group"
          },
          "409": {
            "description": "The deployments provided do not qualify for a rerun",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "The deployments parameter was empty",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-groups/{stack_deployment_group_id}/stack-deployment-runs": {
      "get": {
        "operationId": "listStackDeploymentGroupRuns",
        "summary": "List Stack Deployment Runs for a Stack Deployment Group",
        "description": "List deployment runs for a stack deployment group.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_group_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack deployment group."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Stack deployment runs are searchable by deployment name."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by run status. Accepts a comma-separated list of the logical statuses: failed, pending-operator (pre-deploying and deploying awaiting operator input), running (pre-deploying and deploying), pending (pending, acquiring-lock and pending-capacity), abandoned, succeeded."
          },
          {
            "in": "query",
            "name": "filter[latest_only]",
            "schema": {
              "type": "string",
              "enum": [
                "true"
              ]
            },
            "required": false,
            "description": "When set to 'true', returns only the latest run for each deployment within the group."
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "description": "Allows sorting by deployment name or status priority, e.g. 'deployment' or '-deployment' for descending. Sorting by 'status-priority' orders runs from highest to lowest priority (failed, deploying, deploying-pending-operator, pre-deploying, pre-deploying-pending-operator, acquiring-lock, pending-capacity, pending, abandoned, succeeded). Defaults to most recently created first.",
            "schema": {
              "type": "string",
              "enum": [
                "deployment",
                "-deployment",
                "status-priority",
                "-status-priority"
              ]
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack Deployment run list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-deployment-runs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-runs/{stack_deployment_run_id}": {
      "get": {
        "operationId": "getStackDeploymentRun",
        "summary": "Get Stack Deployment Run",
        "description": "Get details about a stack deployment run.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment run ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack deployment run details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-deployment-runs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-runs/{stack_deployment_run_id}/approve-all-plans": {
      "post": {
        "operationId": "approveStackDeploymentRun",
        "summary": "Approve Stack Deployment Run",
        "description": "Approve a stack deployment run.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment run ID"
          }
        ],
        "requestBody": {
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/action-reason"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Approve all plans successfuly recieved for Stack Deployment Run"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-runs/{stack_deployment_run_id}/cancel": {
      "post": {
        "operationId": "cancelStackDeploymentRun",
        "summary": "Cancel Stack Deployment Run",
        "description": "Cancel a stack deployment run.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment run ID"
          }
        ],
        "responses": {
          "202": {
            "description": "Cancel successfully recieved for Stack Deployment Run",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "null"
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-runs/{stack_deployment_run_id}/stack-deployment-steps": {
      "get": {
        "operationId": "listStackDeploymentSteps",
        "summary": "List Stack Deployment Steps",
        "description": "List deployment steps for a deployment run.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack deployment run."
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "description": "Allows sorting by step order e.g., 'order' or '-order' for descending.",
            "schema": {
              "type": "string",
              "enum": [
                "order",
                "-order"
              ]
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack deployment step list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-deployment-steps"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-steps/{stack_deployment_step_id}": {
      "get": {
        "operationId": "getStackDeploymentStep",
        "summary": "Get Stack Deployment Step",
        "description": "Get details about a stack deployment step.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_step_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment step ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack deployment step details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-deployment-steps-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-steps/{stack_deployment_step_id}/stack-diagnostics": {
      "get": {
        "operationId": "listStackDeploymentStepDiagnostics",
        "summary": "List stack deployment step diagnostics",
        "description": "List the diagnostics for a given stack deployment step.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_step_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the stack deployment step"
          },
          {
            "in": "query",
            "name": "page[number]",
            "schema": {
              "type": "integer"
            },
            "required": false,
            "description": "If omitted, the endpoint will return the first page."
          },
          {
            "in": "query",
            "name": "page[size]",
            "schema": {
              "type": "integer"
            },
            "required": false,
            "description": "If omitted, the endpoint will return 20 per page."
          }
        ],
        "responses": {
          "200": {
            "description": "Diagnostics list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/stack-diagnostics"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-steps/{stack_deployment_step_id}/advance": {
      "post": {
        "operationId": "advanceStackDeploymentStep",
        "summary": "Advance Stack Deployment Step",
        "description": "Advance a stack deployment step when in the `pending_operator` state.",
        "tags": [
          "stacks"
        ],
        "requestBody": {
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/action-reason"
              }
            }
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_step_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment step ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Advance successfuly recieved for Stack Deployment Step"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-steps/{stack_deployment_step_id}/fail": {
      "post": {
        "operationId": "failStackDeploymentStep",
        "summary": "Fail Stack Deployment Step",
        "description": "Fail a stack deployment step.",
        "tags": [
          "stacks"
        ],
        "requestBody": {
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/action-reason"
              }
            }
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_step_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment step ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Fail successfuly recieved for Stack Deployment Step"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-deployment-steps/{stack_deployment_step_id}/artifacts": {
      "get": {
        "operationId": "getSpecificArtifact",
        "summary": "Get Artifact for a Stack Deployment Step",
        "description": "Get a specific artifact for a stack deployment step.",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_deployment_step_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack deployment step ID"
          },
          {
            "in": "query",
            "name": "name",
            "required": true,
            "description": "Name of the artifact to retrieve",
            "schema": {
              "type": "string",
              "enum": [
                "plan-description",
                "apply-description"
              ]
            }
          }
        ],
        "responses": {
          "307": {
            "description": "Redirect to the artifact download URL",
            "headers": {
              "Location": {
                "description": "The URL to download the artifact",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request, missing or invalid artifact name",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Not Found, artifact not found or not uploaded",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/stack-approvals/{stack_approval_id}": {
      "get": {
        "operationId": "getStackApproval",
        "summary": "Get Stack Approval Details",
        "description": "Get details about a stack approval",
        "tags": [
          "stacks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "stack_approval_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Stack approval ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Stack approval details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/stack-approvals-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations": {
      "get": {
        "operationId": "listOrganizations",
        "summary": "List Organizations",
        "description": "List organizations.",
        "tags": [
          "organizations"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "subscription"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships of the specified name"
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Organizations are searchable by name and notification email."
          },
          {
            "in": "query",
            "name": "q[email]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. This query searches organizations by notification email."
          },
          {
            "in": "query",
            "name": "q[name]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. This query searches organizations by name."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Organizations list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/organizations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "included": {
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "$ref": "#/components/schemas/subscriptions"
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createOrganization",
        "summary": "Create Organization",
        "description": "Create an organization.",
        "tags": [
          "organizations"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/organizations-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Organization created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/organizations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}": {
      "get": {
        "operationId": "getOrganization",
        "summary": "Get Organization details",
        "description": "Get details about an organization.",
        "tags": [
          "organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization Name"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "subscription",
                  "entitlement_set",
                  "default-project"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships of the specified name"
          }
        ],
        "responses": {
          "200": {
            "description": "Organization details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/organizations-envelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "included": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "$ref": "#/components/schemas/subscriptions"
                              },
                              {
                                "$ref": "#/components/schemas/projects"
                              },
                              {
                                "$ref": "#/components/schemas/entitlement-sets"
                              }
                            ]
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "organizations"
        ],
        "operationId": "updateOrganization",
        "summary": "Update Organization",
        "description": "Update an organization.",
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization Name"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/organizations-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Organization updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/organizations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "organizations"
        ],
        "operationId": "updateOrganization",
        "summary": "Update Organization",
        "description": "Update an organization.",
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization Name"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/organizations-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Organization updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/organizations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteOrganization",
        "summary": "Delete Organization",
        "description": "Delete an organization.",
        "tags": [
          "organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization Name"
          }
        ],
        "responses": {
          "204": {
            "description": "Organization deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/cidr-range-lists": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "listCidrRangeLists",
        "summary": "List CIDR Range Lists",
        "description": "List all CIDR Range Lists in an organization\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/cidr-range-lists"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Organization not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createCidrRangeList",
        "summary": "Create CIDR Range List",
        "description": "Create a new CIDR Range List\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "ip-allowlists"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/cidr-range-list-with-ranges-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "CIDR Range List created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/cidr-range-list-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/organization-memberships": {
      "get": {
        "operationId": "listOrganizationMemberships",
        "summary": "List Organization Memberships",
        "description": "List all memberships in an organization. This includes active/inactive members and invited users who have not yet accepted their invitation.",
        "tags": [
          "organization-memberships"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to list memberships for"
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Memberships are searchable by user name or email (case-insensitive)."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string",
              "enum": [
                "active",
                "invited",
                "inactive"
              ]
            },
            "required": false,
            "description": "Filter memberships by status. Can be \"active\", \"invited\", or \"inactive\"."
          },
          {
            "in": "query",
            "name": "filter[email]",
            "schema": {
              "type": "string",
              "format": "email"
            },
            "required": false,
            "description": "Filter memberships by exact email address match."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "user",
                  "teams",
                  "scim-identity"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Can include \"user\", \"teams\", or \"scim-identity\".\nNote: \"scim-identity\" is only available on HCP Terraform.\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Organization memberships list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/organization-memberships"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "included": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "$ref": "#/components/schemas/users"
                          },
                          {
                            "$ref": "#/components/schemas/teams"
                          },
                          {
                            "$ref": "#/components/schemas/organizations"
                          },
                          {
                            "$ref": "#/components/schemas/scim-identities"
                          }
                        ],
                        "discriminator": {
                          "propertyName": "type",
                          "mapping": {
                            "users": "#/components/schemas/users",
                            "teams": "#/components/schemas/teams",
                            "organizations": "#/components/schemas/organizations",
                            "scim-identities": "#/components/schemas/scim-identities"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid filter or include parameter",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createOrganizationMembership",
        "summary": "Invite a User to an Organization",
        "description": "Invite a user to join an organization. Users can be invited by email address.",
        "tags": [
          "organization-memberships"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization the user will be invited to join"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/organization-memberships-envelope"
              },
              "examples": {
                "inviteUser": {
                  "summary": "Invite a user to an organization with team memberships",
                  "value": {
                    "data": {
                      "type": "organization-memberships",
                      "attributes": {
                        "email": "user@example.com"
                      },
                      "relationships": {
                        "teams": {
                          "data": [
                            {
                              "type": "teams",
                              "id": "team-GeLZkdnK6xAVjA5H"
                            },
                            {
                              "type": "teams",
                              "id": "team-XxEoUFzP9pW3r5d1"
                            }
                          ]
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successfully invited the user",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/organization-memberships-envelope"
                }
              }
            }
          },
          "400": {
            "description": "Unable to invite user due to organization limits",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Unable to invite user due to validation errors (e.g., invalid email, missing teams)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organization-memberships": {
      "get": {
        "operationId": "listUserOrganizationMemberships",
        "summary": "List User's Own Organization Memberships",
        "description": "List all organization memberships for the currently authenticated user.",
        "tags": [
          "organization-memberships"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "user",
                  "teams",
                  "organization"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Can include \"user\", \"teams\", or \"organization\"."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "User's organization memberships list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/organization-memberships"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "included": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "$ref": "#/components/schemas/users"
                          },
                          {
                            "$ref": "#/components/schemas/teams"
                          },
                          {
                            "$ref": "#/components/schemas/organizations"
                          }
                        ],
                        "discriminator": {
                          "propertyName": "type",
                          "mapping": {
                            "users": "#/components/schemas/users",
                            "teams": "#/components/schemas/teams",
                            "organizations": "#/components/schemas/organizations"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organization-memberships/{organization_membership_id}": {
      "get": {
        "operationId": "getOrganizationMembership",
        "summary": "Show Organization Membership",
        "description": "Get details about a specific organization membership.",
        "tags": [
          "organization-memberships"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_membership_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The organization membership ID"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "user",
                  "teams"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Can include \"user\" or \"teams\"."
          }
        ],
        "responses": {
          "200": {
            "description": "Organization membership details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/organization-memberships-envelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "included": {
                          "type": "array",
                          "items": {
                            "oneOf": [
                              {
                                "$ref": "#/components/schemas/users"
                              },
                              {
                                "$ref": "#/components/schemas/teams"
                              }
                            ],
                            "discriminator": {
                              "propertyName": "type",
                              "mapping": {
                                "users": "#/components/schemas/users",
                                "teams": "#/components/schemas/teams"
                              }
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Organization membership not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteOrganizationMembership",
        "summary": "Remove User from Organization",
        "description": "Remove a user from an organization. You cannot remove yourself from organizations which you own.",
        "tags": [
          "organization-memberships"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_membership_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The organization membership ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Successfully removed the user from the organization"
          },
          "403": {
            "description": "Unable to remove the user. You cannot remove yourself from organizations which you own.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization membership not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/recoverable-items": {
      "get": {
        "operationId": "listRecoverableItems",
        "summary": "List Recoverable Items",
        "description": "List all recoverable items (soft-deleted resources) in an organization.",
        "tags": [
          "recoverable-items"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "recoverable",
                  "deleted_by",
                  "project"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships of the specified name. Multiple values can be comma-separated."
          },
          {
            "in": "query",
            "name": "filter[search]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Search term to filter recoverable items by name or project name."
          },
          {
            "in": "query",
            "name": "filter[having_managed_resources]",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "If true, filter recoverable items that have managed resources. False has no effect."
          },
          {
            "in": "query",
            "name": "filter[expires_after]",
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "required": false,
            "description": "Filter recoverable items that expire after the specified date and time."
          },
          {
            "in": "query",
            "name": "filter[recoverable_type]",
            "schema": {
              "type": "string",
              "enum": [
                "workspaces",
                "stacks"
              ]
            },
            "required": false,
            "description": "Filter recoverable items by recoverable type."
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string",
              "enum": [
                "expires_at",
                "-expires_at",
                "recoverable_name",
                "-recoverable_name",
                "unmanaged_resources",
                "-unmanaged_resources"
              ]
            },
            "required": false,
            "description": "Sort recoverable items by specified field. Prefix with '-' for descending order."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of recoverable items",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/recoverable-items"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "$ref": "#/components/schemas/pagination"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Organization not found or not entitled to this feature",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/recoverable-items/{id}/actions/recover": {
      "post": {
        "operationId": "recoverRecoverableItem",
        "summary": "Recover a Recoverable Item",
        "description": "Recover a soft-deleted resource by restoring it from a recoverable item. The resource must not be expired, permanently deleted, or already recovered.",
        "tags": [
          "recoverable-items"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the recoverable item."
          }
        ],
        "responses": {
          "204": {
            "description": "Successfully recovered the item. No content returned."
          },
          "422": {
            "description": "Recoverable item cannot be recovered due to its current state",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                },
                "examples": {
                  "expired": {
                    "summary": "Item has expired",
                    "value": {
                      "errors": [
                        {
                          "status": "422",
                          "title": "unprocessable content",
                          "detail": "Recoverable item has expired and is no longer eligible for recovery"
                        }
                      ]
                    }
                  },
                  "permanently_deleted": {
                    "summary": "Item has been permanently deleted",
                    "value": {
                      "errors": [
                        {
                          "status": "422",
                          "title": "unprocessable content",
                          "detail": "Recoverable item has been manually permanently deleted, and is no longer eligible for recovery"
                        }
                      ]
                    }
                  },
                  "already_recovered": {
                    "summary": "Item has already been recovered",
                    "value": {
                      "errors": [
                        {
                          "status": "422",
                          "title": "unprocessable content",
                          "detail": "Recoverable item has already been recovered"
                        }
                      ]
                    }
                  },
                  "recovery_failed": {
                    "summary": "Recovery operation failed",
                    "value": {
                      "errors": [
                        {
                          "status": "422",
                          "title": "unprocessable content",
                          "detail": "Recovery failed"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/recoverable-items/{id}/actions/permanently-delete": {
      "post": {
        "operationId": "permanentlyDeleteRecoverableItem",
        "summary": "Permanently Delete a Recoverable Item",
        "description": "Permanently delete a recoverable item, making the soft-deleted resource unrecoverable. The item must not be expired, already permanently deleted, or recovered.",
        "tags": [
          "recoverable-items"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID of the recoverable item."
          }
        ],
        "responses": {
          "204": {
            "description": "Successfully permanently deleted the item. No content returned."
          },
          "422": {
            "description": "Recoverable item cannot be permanently deleted due to its current state",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                },
                "examples": {
                  "already_expired": {
                    "summary": "Item has already expired",
                    "value": {
                      "errors": [
                        {
                          "status": "422",
                          "title": "unprocessable content",
                          "detail": "Recoverable item has already expired and been permanently deleted"
                        }
                      ]
                    }
                  },
                  "already_permanently_deleted": {
                    "summary": "Item has already been permanently deleted",
                    "value": {
                      "errors": [
                        {
                          "status": "422",
                          "title": "unprocessable content",
                          "detail": "Recoverable item has already been manually permanently deleted"
                        }
                      ]
                    }
                  },
                  "already_recovered": {
                    "summary": "Item has been recovered",
                    "value": {
                      "errors": [
                        {
                          "status": "422",
                          "title": "unprocessable content",
                          "detail": "Recoverable item has been recovered, and is no longer eligible for permanent deletion"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/relationships/module-producers": {
      "x-vis": [
        "tfe"
      ],
      "get": {
        "operationId": "listModuleProducers",
        "summary": "List Module Producers",
        "description": "List organizations that are configured to share modules with an organization.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization's module producers to view."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Module producers list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/organizations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/relationships/data-retention-policy": {
      "x-vis": [
        "tfe"
      ],
      "get": {
        "operationId": "getDataRetentionPolicy",
        "summary": "Get Data Retention Policy",
        "description": "Show the data retention policy set explicitly on the organization.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "organizations",
          "data-retention-policies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to show the data retention policy for."
          }
        ],
        "responses": {
          "200": {
            "description": "Data retention policy details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/data-retention-policy-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "organizations",
          "data-retention-policies"
        ],
        "operationId": "createOrUpdateDataRetentionPolicy",
        "summary": "Create or Update Data Retention Policy",
        "description": "Create a data retention policy for an organization or update the existing policy.\n\nThis operation is only available in Terraform Enterprise.",
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to update the data retention policy for."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/data-retention-policy-envelope"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Data retention policy created or updated"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "organizations",
          "data-retention-policies"
        ],
        "operationId": "createOrUpdateDataRetentionPolicy",
        "summary": "Create or Update Data Retention Policy",
        "description": "Create a data retention policy for an organization or update the existing policy.\n\nThis operation is only available in Terraform Enterprise.",
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to update the data retention policy for."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/data-retention-policy-envelope"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Data retention policy created or updated"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteDataRetentionPolicy",
        "summary": "Delete Data Retention Policy",
        "description": "Remove the data retention policy explicitly set on an organization.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "organizations",
          "data-retention-policies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to remove the data retention policy for."
          }
        ],
        "responses": {
          "204": {
            "description": "Data retention policy deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/projects": {
      "get": {
        "operationId": "listProjects",
        "summary": "List Projects",
        "description": "List all projects in an organization.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "filter[names]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Comma-separated list of project names to filter by."
          },
          {
            "in": "query",
            "name": "filter[permissions][create-workspace]",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "If present, returns a list of projects that the authenticated user can create workspaces in."
          },
          {
            "in": "query",
            "name": "filter[permissions][update]",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "If present, returns a list of projects that the authenticated user can update."
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Optional. Allows sorting the organization's projects by \"name\". Prepending a hyphen to the sort parameter reverses the order. For example, \"-name\" sorts by name in reverse alphabetical order. If omitted, the default sort order is arbitrary but stable.\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of projects",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/projects"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "$ref": "#/components/schemas/pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createProject",
        "summary": "Create a Project",
        "description": "Create a new project in an organization.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Project created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/projects-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/token-ttl-policies": {
      "get": {
        "operationId": "listTokenTtlPolicies",
        "summary": "List Token TTL Policies",
        "description": "List all token TTL policies for an organization.",
        "tags": [
          "token-ttl-policies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to list token TTL policies for"
          }
        ],
        "responses": {
          "200": {
            "description": "Token TTL policies list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/token-ttl-policy"
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "User is not part of the owners team of the organization",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization does not exist or user does not belong to the organization",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "upsertTokenTtlPolicies",
        "summary": "Create or Update Token TTL Policies",
        "description": "Create or Update token TTL policies for an organization.",
        "tags": [
          "token-ttl-policies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/token-ttl-policies-envelope"
              },
              "examples": {
                "upsert": {
                  "summary": "Upsert token TTL policies",
                  "value": {
                    "data": {
                      "type": "organization-token-ttl-policies",
                      "attributes": {
                        "token-ttl-policies": [
                          {
                            "token-type": "organization",
                            "max-ttl-ms": 5184000000
                          },
                          {
                            "token-type": "user",
                            "max-ttl-ms": 189216000000
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successfully created or updated token TTL policies",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/token-ttl-policy"
                      }
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "User is not part of the owners team of the organization",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization does not exist or user does not belong to the organization",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Unable to create token TTL policy due to validation errors",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{project_id}": {
      "get": {
        "operationId": "getProject",
        "summary": "Get Project",
        "description": "Get details of a specific project.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          }
        ],
        "responses": {
          "200": {
            "description": "Project details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/projects-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateProject",
        "summary": "Update Project",
        "description": "Update an existing project.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Project updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/projects-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteProject",
        "summary": "Delete Project",
        "description": "Delete a project.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          }
        ],
        "responses": {
          "204": {
            "description": "Project deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{project_id}/relationships/workspaces": {
      "post": {
        "operationId": "moveWorkspacesIntoProject",
        "summary": "Move Workspaces into a Project",
        "description": "Move one or more workspaces into a project. You must have permission to move workspaces on the destination project as well as any source project(s). If you are not authorized to move any of the workspaces in the request, or if any workspaces in the request are not found, then no workspaces will be moved.\n",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the destination project."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Successfully moved workspace(s)."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{project_id}/relationships/tag-bindings": {
      "get": {
        "operationId": "listProjectTagBindings",
        "summary": "List Project Tag Bindings",
        "description": "List all tags associated with a project.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          }
        ],
        "responses": {
          "200": {
            "description": "List of tags",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/tag-bindings-collection"
                }
              }
            }
          },
          "404": {
            "description": "Project not found or user unauthorized to view project",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addProjectTagBindings",
        "summary": "Add Tag Bindings to a Project",
        "description": "Add one or more tag bindings to a project.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tag-bindings-collection"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tags added"
          },
          "404": {
            "description": "Project not found or user unauthorized to manage tags",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "replaceProjectTagBindings",
        "summary": "Replace Tag Bindings in a Project",
        "description": "Replace all tag bindings in a project.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tag-bindings-collection"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tag bindings replaced"
          },
          "404": {
            "description": "Project not found or user unauthorized to manage tag bindings",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{project_id}/effective-tag-bindings": {
      "get": {
        "operationId": "listProjectEffectiveTagBindings",
        "summary": "List Project Effective Tag Bindings",
        "description": "List all effective (inherited and direct) tag bindings for a project.",
        "tags": [
          "projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          }
        ],
        "responses": {
          "200": {
            "description": "List of effective tag bindings",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/effective-tag-bindings-envelope-many"
                }
              }
            }
          },
          "404": {
            "description": "Project not found or user unauthorized to view project",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/workspaces": {
      "get": {
        "operationId": "listWorkspaces",
        "summary": "List Workspaces",
        "description": "List all workspaces in an organization.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "search[name]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Partial name to filter workspaces by name."
          },
          {
            "in": "query",
            "name": "search[wildcard-name]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Wildcard name filter for workspaces."
          },
          {
            "in": "query",
            "name": "filter[current-run][status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Comma-separated list of run statuses to filter workspaces by."
          },
          {
            "in": "query",
            "name": "filter[project][id]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter workspaces by project external ID."
          },
          {
            "in": "query",
            "name": "search[tags]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Comma-separated list of legacy tag names that workspaces must have."
          },
          {
            "in": "query",
            "name": "search[exclude-tags]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Comma-separated list of legacy tag names that workspaces must not have."
          },
          {
            "in": "query",
            "name": "filter[tagged]",
            "schema": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "key"
                ],
                "properties": {
                  "key": {
                    "type": "string"
                  },
                  "value": {
                    "type": "string"
                  }
                }
              }
            },
            "required": false,
            "style": "deepObject",
            "explode": true,
            "description": "Filter workspaces by effective tag bindings. Example usage is `filter[tagged][0][key]=env&filter[tagged][0][value]=prod`."
          },
          {
            "in": "query",
            "name": "filter[tag-union]",
            "schema": {
              "type": "boolean",
              "default": false
            },
            "required": false,
            "description": "Use OR logic for filter[tagged] across effective tag bindings when any provided tag key/value pair may match. By default, filtering uses intersection semantics, so all provided tags must match."
          },
          {
            "in": "query",
            "name": "filter[tag-value-default-null]",
            "schema": {
              "type": "boolean",
              "default": false
            },
            "required": false,
            "description": "Treat omitted filter[tagged][value] fields as NULL for effective tag bindings."
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Sort workspaces. Valid values include name, current-run.created-at. Prefix with a hyphen (e.g., -name) to sort in descending order.\n"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "agent_pool",
                  "current_assessment_result",
                  "current_configuration_version",
                  "current_configuration_version.ingress_attributes",
                  "current_run",
                  "current_run.apply",
                  "current_run.plan",
                  "current_run.configuration_version",
                  "current_run.configuration_version.ingress_attributes",
                  "current_state_version",
                  "current_state_version.resources_processed",
                  "latest_run",
                  "latest_run.plan",
                  "latest_run.configuration_version",
                  "latest_run.configuration_version.ingress_attributes",
                  "locked_by",
                  "no_code_module_version",
                  "no_code_module_version.no_code_module",
                  "no_code_module_version.no_code_module.latest_version",
                  "organization",
                  "outputs",
                  "project",
                  "readme",
                  "vars",
                  "effective_tag_bindings"
                ]
              }
            },
            "required": false,
            "description": "Comma-separated list of relationship names to side-load.\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of workspaces",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/workspaces"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        },
                        "status-counts": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "integer"
                          }
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "included": {
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "$ref": "#/components/schemas/no-code-module-versions"
                          },
                          {
                            "$ref": "#/components/schemas/no-code-modules"
                          },
                          {
                            "$ref": "#/components/schemas/workspace-readme"
                          },
                          {
                            "$ref": "#/components/schemas/workspace-outputs"
                          }
                        ],
                        "discriminator": {
                          "propertyName": "type",
                          "mapping": {
                            "no-code-module-versions": "#/components/schemas/no-code-module-versions",
                            "no-code-modules": "#/components/schemas/no-code-modules",
                            "workspace-readme": "#/components/schemas/workspace-readme",
                            "workspace-outputs": "#/components/schemas/workspace-outputs"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Organization not found or user unauthorized to view workspaces",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createWorkspace",
        "summary": "Create a Workspace",
        "description": "Create a new workspace in an organization.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Workspace created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Organization not found or user unauthorized to create workspaces",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body or validation error",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/workspaces/{workspace_name}": {
      "get": {
        "operationId": "getWorkspaceByName",
        "summary": "Get a Workspace by Name",
        "description": "Get details of a workspace by organization name and workspace name.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "workspace_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the workspace."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "agent_pool",
                  "current_assessment_result",
                  "current_configuration_version",
                  "current_configuration_version.ingress_attributes",
                  "current_run",
                  "current_run.apply",
                  "current_run.plan",
                  "current_run.configuration_version",
                  "current_run.configuration_version.ingress_attributes",
                  "current_state_version",
                  "current_state_version.resources_processed",
                  "latest_run",
                  "latest_run.plan",
                  "latest_run.configuration_version",
                  "latest_run.configuration_version.ingress_attributes",
                  "locked_by",
                  "no_code_module_version",
                  "no_code_module_version.no_code_module",
                  "no_code_module_version.no_code_module.latest_version",
                  "organization",
                  "outputs",
                  "project",
                  "readme",
                  "vars",
                  "effective_tag_bindings"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships.\n"
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/workspaces-envelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "included": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "$ref": "#/components/schemas/no-code-module-versions"
                              },
                              {
                                "$ref": "#/components/schemas/no-code-modules"
                              },
                              {
                                "$ref": "#/components/schemas/workspace-readme"
                              },
                              {
                                "$ref": "#/components/schemas/workspace-outputs"
                              }
                            ],
                            "discriminator": {
                              "propertyName": "type",
                              "mapping": {
                                "no-code-module-versions": "#/components/schemas/no-code-module-versions",
                                "no-code-modules": "#/components/schemas/no-code-modules",
                                "workspace-readme": "#/components/schemas/workspace-readme",
                                "workspace-outputs": "#/components/schemas/workspace-outputs"
                              }
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateWorkspaceByName",
        "summary": "Update a Workspace by Name",
        "description": "Update settings of an existing workspace by organization name and workspace name.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "workspace_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteWorkspaceByName",
        "summary": "Delete a Workspace by Name",
        "description": "Delete a workspace by organization name and workspace name. This permanently removes the workspace and all its associated data.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "workspace_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the workspace."
          }
        ],
        "responses": {
          "204": {
            "description": "Workspace deleted"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to delete workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/workspaces/{workspace_name}/actions/safe-delete": {
      "post": {
        "operationId": "safeDeleteWorkspaceByName",
        "summary": "Safe Delete a Workspace by Name",
        "description": "Delete a workspace by organization name and workspace name only if it has no resources under management. Returns a conflict error if the workspace has managed resources or is locked.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "workspace_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the workspace."
          }
        ],
        "responses": {
          "204": {
            "description": "Workspace deleted"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to delete workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "409": {
            "description": "Workspace has managed resources or is locked and cannot be safely deleted",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{project_id}/notification-configurations": {
      "get": {
        "summary": "List Notification Configurations for a Project",
        "description": "List all notification configurations for a given project.\n",
        "operationId": "listProjectNotificationConfigurations",
        "tags": [
          "Notification Configurations"
        ],
        "parameters": [
          {
            "name": "project_id",
            "in": "path",
            "description": "The ID of the project",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/notification-configurations"
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Project not found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "summary": "Create a Notification Configuration for a Project",
        "description": "Create a new notification configuration for a given project.\n",
        "operationId": "createProjectNotificationConfiguration",
        "tags": [
          "Notification Configurations"
        ],
        "parameters": [
          {
            "name": "project_id",
            "in": "path",
            "description": "The ID of the project",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/notification-configurations-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Notification configuration created successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/notification-configurations-envelope"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Project not found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/notification-configurations": {
      "get": {
        "operationId": "listWorkspaceNotificationConfigurations",
        "summary": "List Notification Configurations for a Workspace",
        "description": "List all notification configurations for a workspace.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of notification configurations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/notification-configurations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createWorkspaceNotificationConfiguration",
        "summary": "Create a Notification Configuration for a Workspace",
        "description": "Create a new notification configuration for a workspace.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/notification-configurations-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Notification configuration created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/notification-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/teams/{team_id}/notification-configurations": {
      "get": {
        "operationId": "listTeamNotificationConfigurations",
        "summary": "List Notification Configurations for a Team",
        "description": "List all notification configurations for a team.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of notification configurations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/notification-configurations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createTeamNotificationConfiguration",
        "summary": "Create a Notification Configuration for a Team",
        "description": "Create a new notification configuration for a team.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/notification-configurations-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Notification configuration created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/notification-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/notification-configurations/{notification_configuration_id}": {
      "get": {
        "operationId": "getNotificationConfiguration",
        "summary": "Show a Notification Configuration",
        "description": "Get details about a notification configuration.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "notification_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the notification configuration."
          }
        ],
        "responses": {
          "200": {
            "description": "Notification configuration details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/notification-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateNotificationConfiguration",
        "summary": "Update a Notification Configuration",
        "description": "Update an existing notification configuration.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "notification_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the notification configuration."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/notification-configurations-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Notification configuration updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/notification-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteNotificationConfiguration",
        "summary": "Delete a Notification Configuration",
        "description": "Delete a notification configuration.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "notification_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the notification configuration."
          }
        ],
        "responses": {
          "204": {
            "description": "Notification configuration deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/notification-configurations/{notification_configuration_id}/actions/enable": {
      "post": {
        "operationId": "enableNotificationConfiguration",
        "summary": "Enable a Notification Configuration",
        "description": "Enable a notification configuration by triggering a verification request.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "notification_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the notification configuration."
          }
        ],
        "responses": {
          "200": {
            "description": "Notification configuration enabled",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/notification-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/notification-configurations/{notification_configuration_id}/actions/verify": {
      "post": {
        "operationId": "verifyNotificationConfiguration",
        "summary": "Verify a Notification Configuration",
        "description": "Send a verification request to the configured destination URL.",
        "tags": [
          "notification-configurations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "notification_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the notification configuration."
          }
        ],
        "responses": {
          "200": {
            "description": "Notification configuration verified",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/notification-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/email-recipient-statuses/verify": {
      "get": {
        "operationId": "verifyEmailRecipientStatus",
        "summary": "Verify Email Recipient",
        "description": "Render the email verification page using a signed token. This endpoint is public and does not require authentication.",
        "tags": [
          "email-recipient-statuses"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "token",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The signed token for verifying the email address"
          },
          {
            "in": "query",
            "name": "config",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "The notification configuration external ID used to render the subscribable name"
          }
        ],
        "responses": {
          "200": {
            "description": "Email verification page rendered successfully",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Invalid or expired token",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "performEmailRecipientVerification",
        "summary": "Perform Email Recipient Verification",
        "description": "Verify an email recipient status using a signed token. This endpoint is public and does not require authentication.",
        "tags": [
          "email-recipient-statuses"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "required": [
                  "token"
                ],
                "properties": {
                  "token": {
                    "type": "string",
                    "description": "The signed token for verifying the email address"
                  },
                  "config": {
                    "type": "string",
                    "description": "The notification configuration external ID used to render the subscribable name"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Email recipient verification completed successfully",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Invalid or expired token",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "415": {
            "description": "Invalid content type",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/email-recipient-statuses/unsubscribe": {
      "get": {
        "operationId": "unsubscribeEmailRecipient",
        "summary": "Unsubscribe Email Recipient",
        "description": "Unsubscribe an email recipient from notifications using a signed token. This endpoint is public and does not require authentication.",
        "tags": [
          "email-recipient-statuses"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "token",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The signed token for unsubscribing the email address"
          }
        ],
        "responses": {
          "200": {
            "description": "Email recipient unsubscribed successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/email-recipient-statuses-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Invalid or expired token",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "saveUnsubscribePreferences",
        "summary": "Save Email Unsubscribe Preferences",
        "description": "Save email unsubscribe preferences using a signed token. This endpoint is public and does not require authentication.",
        "tags": [
          "email-recipient-statuses"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "token",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The signed token for the unsubscribe operation"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "unsubscribe_preference": {
                    "type": "string",
                    "enum": [
                      "project",
                      "all_organization",
                      "cancel"
                    ],
                    "description": "The unsubscribe preference selected by the user"
                  },
                  "configuration": {
                    "type": "string",
                    "description": "Optional external ID of the notification configuration (for project unsubscribe)"
                  }
                },
                "required": [
                  "unsubscribe_preference"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Preferences saved successfully",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Invalid or expired token",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/queries": {
      "post": {
        "operationId": "createQuery",
        "summary": "Create a Query Run",
        "description": "Create a new query run.",
        "tags": [
          "queries"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/queries-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Query created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/queries-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/queries/{query_id}": {
      "get": {
        "operationId": "getQuery",
        "summary": "Get Query",
        "description": "Get details of a specific query.",
        "tags": [
          "queries"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "query_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the query."
          }
        ],
        "responses": {
          "200": {
            "description": "Query details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/queries-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/queries/{query_id}/actions/cancel": {
      "post": {
        "operationId": "cancelQueryRun",
        "summary": "Cancel a Query Run",
        "description": "Cancel a query run that is currently pending or running.",
        "tags": [
          "queries"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "query_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Query ID"
          }
        ],
        "responses": {
          "202": {
            "description": "Successfully canceled a query run",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "null"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Query not found or user unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "409": {
            "description": "Failed to transition query run to a canceled state.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/queries": {
      "get": {
        "operationId": "getWorkspaceQueries",
        "summary": "Get Queries for a Workspace",
        "description": "Get list of queries for a particular workspace.",
        "tags": [
          "queries"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The id of the workspace."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of Queries",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/queries"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "$ref": "#/components/schemas/pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/search/no-code-query": {
      "x-vis": [
        "public-beta"
      ],
      "post": {
        "operationId": "createNoCodeQuery",
        "summary": "Create a No-Code Query",
        "description": "Create a new no-code query for a workspace.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "queries"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/no-code-query"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "No-code query created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/no-code-query"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/search/no-code-query/{id}": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getNoCodeQuery",
        "summary": "Get a No-Code Query",
        "description": "Get the configuration of a specific no-code query.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "queries"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the no-code query."
          }
        ],
        "responses": {
          "200": {
            "description": "No-code query details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/components/schemas/no-code-query"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/all-vars": {
      "get": {
        "operationId": "listAllVars",
        "summary": "List All Variables Accessible to a Workspace",
        "description": "This API returns the list of all variables that are accessible to a workspace. This includes variables defined directly on the workspace as well as variables inherited from any variable sets attached to the workspace.",
        "tags": [
          "vars"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "List of all variables accessible to a workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/vars"
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/vars": {
      "get": {
        "operationId": "listWorkspaceVars",
        "summary": "List Variables",
        "description": "List variables for a workspace.",
        "tags": [
          "vars"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "List of variables for the workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/vars"
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createWorkspaceVar",
        "summary": "Create a Variable",
        "description": "Create a variable for a workspace.",
        "tags": [
          "vars"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/vars-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Variable created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/vars/{id}": {
      "get": {
        "operationId": "showWorkspaceVar",
        "summary": "Show a Variable",
        "description": "Show details of a variable in a workspace.",
        "tags": [
          "vars"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable."
          }
        ],
        "responses": {
          "200": {
            "description": "Variable details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateWorkspaceVar",
        "summary": "Update a Variable",
        "description": "Update attributes of an existing variable in a workspace.",
        "tags": [
          "vars"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/vars-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Variable updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteWorkspaceVar",
        "summary": "Delete a Variable",
        "description": "Delete a variable from a workspace.",
        "tags": [
          "vars"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable."
          }
        ],
        "responses": {
          "204": {
            "description": "Variable deleted successfully"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/provider-sets/{provider_set_id}": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "showProviderSet",
        "summary": "Show a Provider Set",
        "description": "Fetch details about the specified provider set.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "provider_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the provider set."
          },
          {
            "in": "query",
            "name": "include",
            "description": "Comma-separated list of related resources to include. Valid values: projects, workspaces.\n",
            "schema": {
              "type": "string"
            },
            "required": false,
            "example": "projects,workspaces"
          }
        ],
        "responses": {
          "200": {
            "description": "Provider set details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/provider-sets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateProviderSet",
        "summary": "Update a Provider Set",
        "description": "Update attributes of an existing provider set.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "provider_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the provider set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/provider-sets-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Provider set updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/provider-sets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteProviderSet",
        "summary": "Delete a Provider Set",
        "description": "Delete an existing provider set.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "provider_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the provider set."
          }
        ],
        "responses": {
          "204": {
            "description": "Provider set deleted successfully"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/provider-sets/{provider_set_id}/relationships/projects": {
      "x-vis": [
        "public-beta"
      ],
      "post": {
        "operationId": "addProviderSetProjects",
        "summary": "Add Projects to a Provider Set",
        "description": "Add projects to a provider set. Relationships are additive; existing project assignments are preserved.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "provider_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the provider set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Projects successfully added to provider set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeProviderSetProjects",
        "summary": "Remove Projects from a Provider Set",
        "description": "Remove projects from a provider set. Projects not currently assigned to the set are ignored.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "provider_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the provider set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Projects successfully removed from provider set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/provider-sets/{provider_set_id}/relationships/workspaces": {
      "x-vis": [
        "public-beta"
      ],
      "post": {
        "operationId": "addProviderSetWorkspaces",
        "summary": "Add Workspaces to a Provider Set",
        "description": "Add workspaces to a provider set. Relationships are additive; existing workspace assignments are preserved.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "provider_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the provider set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Workspaces successfully added to provider set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeProviderSetWorkspaces",
        "summary": "Remove Workspaces from a Provider Set",
        "description": "Remove workspaces from a provider set. Workspaces not currently assigned to the set are ignored.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "provider_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the provider set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Workspaces successfully removed from provider set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/provider-sets": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getProviderSets",
        "summary": "Get Provider Sets",
        "description": "Fetch details about all the provider sets in an organization.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "include",
            "description": "Comma-separated list of related resources to include. Valid values: projects, workspaces.\n",
            "schema": {
              "type": "string"
            },
            "required": false,
            "example": "projects,workspaces"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Provider sets' details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/provider-sets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createProviderSet",
        "summary": "Create a Provider Set",
        "description": "Create a provider set belonging to an organization.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/provider-sets-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Provider set created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/provider-sets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "batchDeleteProviderSets",
        "summary": "Batch Delete Provider Sets",
        "description": "Delete multiple provider sets in a single request.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "provider-sets"
                          ]
                        },
                        "id": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Provider sets deleted successfully"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/provider-sets/{provider_set_name}": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "showProviderSetByName",
        "summary": "Show a Provider Set by name",
        "description": "Fetch details about the specified provider set.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "provider_set_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the provider_set."
          },
          {
            "in": "query",
            "name": "include",
            "description": "Comma-separated list of related resources to include. Valid values: projects, workspaces.\n",
            "schema": {
              "type": "string"
            },
            "required": false,
            "example": "projects,workspaces"
          }
        ],
        "responses": {
          "200": {
            "description": "Provider set details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/provider-sets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{project_id}/provider-sets": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getProjectProviderSets",
        "summary": "Get Provider Sets",
        "description": "Fetch details about all the provider sets assigned to a project.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The id of a project."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Provider sets' details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/provider-sets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/provider-sets": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getWorkspaceProviderSets",
        "summary": "Get Provider Sets",
        "description": "Fetch details about all the provider sets assigned to a workspace.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "provider-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The id of a workspace."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Provider sets' details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/provider-sets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/varsets/{varset_id}": {
      "get": {
        "operationId": "showVarset",
        "summary": "Show a Variable Set",
        "description": "Fetch details about the specified variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "responses": {
          "200": {
            "description": "Variable set details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/varsets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateVarset",
        "summary": "Update a Variable Set",
        "description": "Update attributes of an existing variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/varsets-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Variable set updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/varsets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "updateVarsetPost",
        "summary": "Update a Variable Set (POST)",
        "description": "Update attributes of an existing variable set using POST.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/varsets-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Variable set updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/varsets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteVarset",
        "summary": "Delete a Variable Set",
        "description": "Delete an existing variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "responses": {
          "204": {
            "description": "Variable set deleted successfully"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/varsets": {
      "get": {
        "operationId": "listOrganizationVarsets",
        "summary": "List Variable Sets for an Organization",
        "description": "List all variable sets for an organization.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. You can search for a variable set using its name."
          },
          {
            "in": "query",
            "name": "filter[global]",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "When true, returns only global variable sets. When false, returns only non-global variable sets."
          },
          {
            "in": "query",
            "name": "scope",
            "schema": {
              "type": "string",
              "enum": [
                "owned"
              ]
            },
            "required": false,
            "description": "When set to \"owned\", returns only organization-owned variable sets."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of variable sets for the organization",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/varsets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "$ref": "#/components/schemas/pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createVarset",
        "summary": "Create a Variable Set",
        "description": "Create a new variable set in an organization.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/varsets-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Variable set created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/varsets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/varsets/{varset_id}/relationships/vars": {
      "get": {
        "operationId": "listVarsetVars",
        "summary": "List Variables in a Variable Set",
        "description": "List all variables in a variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "responses": {
          "200": {
            "description": "List of variables in the variable set",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/vars"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addVarsetVar",
        "summary": "Add a Variable to a Variable Set",
        "description": "Add a new variable to an existing variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/vars-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Variable added to variable set",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/varsets/{varset_id}/relationships/vars/{id}": {
      "get": {
        "operationId": "showVarsetVar",
        "summary": "Show a Variable in a Variable Set",
        "description": "Show details of a variable in a variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable."
          }
        ],
        "responses": {
          "200": {
            "description": "Variable details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateVarsetVar",
        "summary": "Update a Variable in a Variable Set",
        "description": "Update attributes of an existing variable in a variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable to update."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/vars-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Variable updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteVarsetVar",
        "summary": "Delete a Variable from a Variable Set",
        "description": "Delete a variable from a variable set.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable to delete."
          }
        ],
        "responses": {
          "204": {
            "description": "Variable deleted successfully"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/varsets/{varset_id}/relationships/vars/{id}": {
      "get": {
        "operationId": "showWorkspaceVarsetVar",
        "summary": "Show a Variable in a Variable Set (Workspace Context)",
        "description": "Show details of a variable in a variable set, with overwrite context from the specified workspace.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace providing overwrite context."
          },
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable."
          }
        ],
        "responses": {
          "200": {
            "description": "Variable details with workspace overwrite context",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/varsets/{varset_id}/relationships/vars": {
      "get": {
        "operationId": "listWorkspaceVarsetVars",
        "summary": "List Variables in a Variable Set (Workspace Context)",
        "description": "List all variables in a variable set, with overwrite context from the specified workspace.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace providing overwrite context."
          },
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "responses": {
          "200": {
            "description": "List of variables in the variable set with workspace overwrite context",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/vars"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/varsets/{varset_id}/relationships/projects": {
      "post": {
        "operationId": "applyVarsetToProjects",
        "summary": "Apply Variable Set to Projects",
        "description": "Apply a variable set to one or more projects. When you apply a variable set to a project, all the workspaces in that project will have the variable set applied to them.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Variable set successfully applied to the requested projects."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeVarsetFromProjects",
        "summary": "Remove Variable Set from Projects",
        "description": "Remove a variable set from one or more projects.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Variable set successfully removed from the requested projects."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/varsets/{varset_id}/relationships/workspaces": {
      "post": {
        "operationId": "applyVarsetToWorkspaces",
        "summary": "Apply Variable Set to Workspaces",
        "description": "Apply a variable set to one or more workspaces.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Variable set successfully applied to the requested workspaces."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeVarsetFromWorkspaces",
        "summary": "Remove Variable Set from Workspaces",
        "description": "Remove a variable set from one or more workspaces.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Variable set successfully removed from the requested workspaces."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/varsets/{varset_id}/relationships/stacks": {
      "post": {
        "operationId": "applyVarsetToStacks",
        "summary": "Apply Variable Set to Stacks",
        "description": "Apply a variable set to one or more Stacks. Only available in HCP Terraform.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/jsonapi-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Variable set successfully applied to the requested Stacks."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeVarsetFromStacks",
        "summary": "Remove Variable Set from Stacks",
        "description": "Remove a variable set from one or more Stacks.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "varset_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the variable set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/jsonapi-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Variable set successfully removed from the requested Stacks."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{project_id}/varsets": {
      "get": {
        "operationId": "listProjectVarsets",
        "summary": "List Variable Sets for a Project",
        "description": "List all variable sets for a project. This includes global variable sets from the project's organization.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the project."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. You can search for a variable set using its name."
          },
          {
            "in": "query",
            "name": "scope",
            "schema": {
              "type": "string",
              "enum": [
                "applied",
                "shared",
                "owned",
                "all"
              ]
            },
            "required": false,
            "description": "Filter variable sets by scope relative to the project."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of variable sets for the project",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/varsets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "$ref": "#/components/schemas/pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/varsets": {
      "get": {
        "operationId": "listWorkspaceVarsets",
        "summary": "List Variable Sets for a Workspace",
        "description": "List all variable sets for a workspace. This includes global variable sets from the workspace's organization and variable sets attached to the project this workspace is contained within.",
        "tags": [
          "varsets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. You can search for a variable set using its name."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of variable sets for the workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/varsets"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "$ref": "#/components/schemas/pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/resources": {
      "get": {
        "operationId": "listWorkspaceResources",
        "summary": "List Workspace Resources",
        "description": "List all resources in a workspace's current state.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace to retrieve resources from."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Optional search query to filter resources by address pattern."
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string",
              "enum": [
                "name:asc",
                "name:desc",
                "nameIndex:asc",
                "nameIndex:desc",
                "provider:asc",
                "provider:desc",
                "providerType:asc",
                "providerType:desc",
                "module:asc",
                "module:desc",
                "updatedAt:asc",
                "updatedAt:desc"
              ]
            },
            "required": false,
            "description": "Optional sort parameter. Allows sorting workspace resources by name, nameIndex, provider,  providerType, module, or updatedAt. Format is \"field:order\" where order is \"asc\" or \"desc\".\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of workspace resources",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/workspace-resource"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}": {
      "get": {
        "operationId": "getWorkspace",
        "summary": "Get a Workspace",
        "description": "Get details of a specific workspace by its external ID.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "agent_pool",
                  "current_assessment_result",
                  "current_configuration_version",
                  "current_configuration_version.ingress_attributes",
                  "current_run",
                  "current_run.apply",
                  "current_run.plan",
                  "current_run.configuration_version",
                  "current_run.configuration_version.ingress_attributes",
                  "current_state_version",
                  "current_state_version.resources_processed",
                  "latest_run",
                  "latest_run.plan",
                  "latest_run.configuration_version",
                  "latest_run.configuration_version.ingress_attributes",
                  "locked_by",
                  "no_code_module_version",
                  "no_code_module_version.no_code_module",
                  "no_code_module_version.no_code_module.latest_version",
                  "organization",
                  "outputs",
                  "project",
                  "readme",
                  "vars",
                  "effective_tag_bindings"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships.\n"
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/workspaces-envelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "included": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "$ref": "#/components/schemas/no-code-module-versions"
                              },
                              {
                                "$ref": "#/components/schemas/no-code-modules"
                              },
                              {
                                "$ref": "#/components/schemas/workspace-readme"
                              },
                              {
                                "$ref": "#/components/schemas/workspace-outputs"
                              }
                            ],
                            "discriminator": {
                              "propertyName": "type",
                              "mapping": {
                                "no-code-module-versions": "#/components/schemas/no-code-module-versions",
                                "no-code-modules": "#/components/schemas/no-code-modules",
                                "workspace-readme": "#/components/schemas/workspace-readme",
                                "workspace-outputs": "#/components/schemas/workspace-outputs"
                              }
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateWorkspace",
        "summary": "Update a Workspace",
        "description": "Update settings of an existing workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteWorkspace",
        "summary": "Delete a Workspace",
        "description": "Delete a workspace. This permanently removes the workspace and all its associated data including runs, state versions, and configuration versions.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "204": {
            "description": "Workspace deleted"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to delete workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/actions/lock": {
      "post": {
        "operationId": "lockWorkspace",
        "summary": "Lock a Workspace",
        "description": "Lock a workspace. A workspace can only be locked by one entity at a time. Returns a conflict error if the workspace is already locked.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/action-reason"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace locked successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to lock workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "409": {
            "description": "Workspace is already locked",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/actions/unlock": {
      "post": {
        "operationId": "unlockWorkspace",
        "summary": "Unlock a Workspace",
        "description": "Unlock a workspace. Users can unlock a workspace if they locked it. Unlocking a workspace locked by another user requires force-unlock. Returns a conflict error if the workspace is not locked by the requesting user.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace unlocked successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to unlock workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "409": {
            "description": "Workspace is locked by another user",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/actions/force-unlock": {
      "post": {
        "operationId": "forceUnlockWorkspace",
        "summary": "Force Unlock a Workspace",
        "description": "Forcibly unlock a workspace regardless of who locked it. This action requires elevated permissions and should be used with caution.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace force-unlocked successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to force-unlock workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/actions/safe-delete": {
      "post": {
        "operationId": "safeDeleteWorkspace",
        "summary": "Safe Delete a Workspace",
        "description": "Delete a workspace only if it has no resources under management. Returns a conflict error if the workspace has managed resources or is locked.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "204": {
            "description": "Workspace deleted"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to delete workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "409": {
            "description": "Workspace has managed resources or is locked and cannot be safely deleted",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/actions/assess": {
      "post": {
        "operationId": "assessWorkspace",
        "summary": "Trigger a Workspace Assessment",
        "description": "Trigger a drift detection assessment for a workspace. The workspace must have assessments enabled and not have a pending assessment already running.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "Assessment triggered successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage assessments",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "409": {
            "description": "Assessment cannot be triggered in the current workspace state",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/relationships/remote-state-consumers": {
      "get": {
        "operationId": "listWorkspaceRemoteStateConsumers",
        "summary": "List Remote State Consumers",
        "description": "List the workspaces that are allowed to access this workspace's state. When global-remote-state is enabled on the workspace, this lists all workspaces in the organization; otherwise, it lists only the explicitly allowed consumers.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          },
          {
            "in": "query",
            "name": "show_only_configured",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "When true, return only explicitly configured remote state consumers even if global-remote-state is enabled.\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of workspaces that can consume this workspace's remote state",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/workspaces"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addWorkspaceRemoteStateConsumers",
        "summary": "Add Remote State Consumers",
        "description": "Add workspaces to the list of allowed remote state consumers.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Remote state consumers updated"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage remote state consumers",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "replaceWorkspaceRemoteStateConsumers",
        "summary": "Replace Remote State Consumers",
        "description": "Replace the entire list of allowed remote state consumers with the provided list.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Remote state consumers replaced"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage remote state consumers",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeWorkspaceRemoteStateConsumers",
        "summary": "Remove Remote State Consumers",
        "description": "Remove workspaces from the list of allowed remote state consumers.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Remote state consumers removed"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage remote state consumers",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/relationships/ssh-key": {
      "patch": {
        "operationId": "assignWorkspaceSshKey",
        "summary": "Assign an SSH Key to a Workspace",
        "description": "Assign an SSH key to a workspace for use when cloning VCS repositories. Pass null for the id to unassign the current SSH key.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/ssh-keys-nullable-identifier-document"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "SSH key assignment updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace or SSH key not found, or user unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/relationships/vars": {
      "patch": {
        "operationId": "updateWorkspaceVars",
        "summary": "Update Workspace Variables",
        "description": "Batch update workspace variables. Provide an array of variable objects to update. Variables are matched by their external ID.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspace-vars-update-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Variables updated"
          },
          "400": {
            "description": "Too many variables or invalid request",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to update variables",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Validation error on one or more variables",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/relationships/tag-bindings": {
      "get": {
        "operationId": "listWorkspaceTagBindings",
        "summary": "List Workspace Tags",
        "description": "List all tags associated with a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "List of tags",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/tag-bindings-collection"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addWorkspaceTagBindings",
        "summary": "Add Tag Bindings to a Workspace",
        "description": "Add one or more tag bindings to a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tag-bindings-collection"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tags added"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage tags",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "replaceWorkspaceTagBindings",
        "summary": "Replace Tag Bindings in a Workspace",
        "description": "Replace all tag bindings in a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tag-bindings-collection"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tag bindings replaced"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage tag bindings",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/effective-tag-bindings": {
      "get": {
        "operationId": "listWorkspaceEffectiveTagBindings",
        "summary": "List Workspace Effective Tag Bindings",
        "description": "List all effective (inherited and direct) tag bindings for a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "List of effective tag bindings",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/effective-tag-bindings-envelope-many"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/relationships/tags": {
      "get": {
        "operationId": "listWorkspaceTags",
        "summary": "List Workspace Tags",
        "description": "List all tags associated with a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "List of tags",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "tags"
                            ]
                          },
                          "attributes": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string"
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addWorkspaceTags",
        "summary": "Add Tags to a Workspace",
        "description": "Add one or more tags to a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tags-create-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tags added"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage tags",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeWorkspaceTags",
        "summary": "Remove Tags from a Workspace",
        "description": "Remove one or more tags from a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tags-remove-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tags removed"
          },
          "404": {
            "description": "Workspace not found or user unauthorized to manage tags",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/relationships/data-retention-policy": {
      "x-vis": [
        "tfe"
      ],
      "get": {
        "operationId": "getWorkspaceDataRetentionPolicy",
        "summary": "Get Workspace Data Retention Policy",
        "description": "Show the data retention policy explicitly set on the workspace.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "workspaces",
          "data-retention-policies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace data retention policy",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/data-retention-policy-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or policy not set",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "setWorkspaceDataRetentionPolicy",
        "summary": "Set Workspace Data Retention Policy",
        "description": "Create or update the data retention policy explicitly set on the workspace.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "workspaces",
          "data-retention-policies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/data-retention-policy-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Data retention policy set",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/data-retention-policy-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteWorkspaceDataRetentionPolicy",
        "summary": "Delete Workspace Data Retention Policy",
        "description": "Remove the data retention policy explicitly set on the workspace.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "workspaces",
          "data-retention-policies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "204": {
            "description": "Data retention policy deleted"
          },
          "404": {
            "description": "Workspace not found or user unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/current-state-version": {
      "get": {
        "operationId": "getCurrentStateVersion",
        "summary": "Get Current State Version",
        "description": "Get the current state version for a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "outputs"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships.\n"
          }
        ],
        "responses": {
          "200": {
            "description": "Current state version details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/current-state-version-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found, no current state version exists, or user unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/current-assessment-result": {
      "get": {
        "operationId": "getCurrentAssessmentResult",
        "summary": "Get Current Assessment Result",
        "description": "Get the most recent drift detection assessment result for a workspace.",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          }
        ],
        "responses": {
          "200": {
            "description": "Current assessment result",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/assessment-results-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found, no current assessment result exists, or user unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/applicable-varsets": {
      "get": {
        "operationId": "listApplicableVarsets",
        "summary": "List Applicable Variable Sets",
        "description": "List the variable sets that can be applied to a workspace. This returns variable sets from the workspace's organization that are not already applied to the workspace, filtered by project scope.\n",
        "tags": [
          "workspaces"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The external ID of the workspace."
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Optional search query to filter variable sets by name."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of applicable variable sets",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "varsets"
                            ]
                          },
                          "attributes": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string"
                              },
                              "description": {
                                "type": "string",
                                "nullable": true
                              },
                              "global": {
                                "type": "boolean"
                              },
                              "auto-apply": {
                                "type": "boolean"
                              },
                              "var-count": {
                                "type": "integer"
                              },
                              "workspace-count": {
                                "type": "integer"
                              },
                              "project-count": {
                                "type": "integer"
                              },
                              "created-at": {
                                "type": "string",
                                "format": "date-time",
                                "readOnly": true
                              },
                              "updated-at": {
                                "type": "string",
                                "format": "date-time",
                                "readOnly": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        },
                        "status-counts": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "integer"
                          }
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to view workspace",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs": {
      "post": {
        "operationId": "createRun",
        "summary": "Create a Run",
        "description": "Create a new run.",
        "tags": [
          "runs"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/runs-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Run created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/runs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "listRuns",
        "summary": "List Runs",
        "description": "List all runs in a workspace.",
        "tags": [
          "runs"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Workspace ID"
          },
          {
            "in": "query",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization Name"
          },
          {
            "in": "query",
            "name": "filter[operation]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by run operation."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by run status."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of runs",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/runs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}": {
      "get": {
        "operationId": "getRun",
        "summary": "Get Run details",
        "description": "Get details about a run.",
        "tags": [
          "runs"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Run ID"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "plan",
                  "apply",
                  "created_by",
                  "configuration_version",
                  "configuration_version.ingress_attributes",
                  "cost_estimate",
                  "workspace",
                  "task_stages",
                  "tf_policy_evaluations"
                ]
              }
            },
            "required": false,
            "description": "Available side-load related resources. Multiple values can be comma-separated.\n\nAvailable includes:\n- `plan` - The plan for this run\n- `apply` - The apply for this run\n- `created_by` - The user who created this run\n- `configuration_version` - The configuration version used\n- `configuration_version.ingress_attributes` - VCS ingress details\n- `cost_estimate` - Cost estimation for this run\n- `workspace` - The workspace this run belongs to\n- `task_stages` - Run task stages\n- `tf_policy_evaluations` - Terraform Policy evaluations *(public-beta)*\n"
          }
        ],
        "responses": {
          "200": {
            "description": "Run details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/runs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}/configuration-version": {
      "get": {
        "operationId": "getRunConfigurationVersion",
        "summary": "Get Run Configuration Version",
        "description": "Get details of a specific configuration version.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run"
          }
        ],
        "responses": {
          "200": {
            "description": "Configuration version details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/configuration-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}/configuration-version/download": {
      "get": {
        "operationId": "downloadRunConfigurationVersion",
        "summary": "Download Run Configuration Version",
        "description": "Generate a temporary URL to download the configuration version files.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run."
          }
        ],
        "responses": {
          "200": {
            "description": ".tar.gz file containing the configuration version.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}/comments": {
      "get": {
        "operationId": "listRunComments",
        "summary": "List Comments for a Run",
        "description": "List all comments for a run.",
        "tags": [
          "comments"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Run ID"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of comments",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/comments"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createRunComment",
        "summary": "Create a Comment",
        "description": "Create a new comment on a run.",
        "tags": [
          "comments"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Run ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/comments-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Comment created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/comments-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/comments/{id}": {
      "get": {
        "operationId": "showComment",
        "summary": "Show a Comment",
        "description": "Get details about a comment.",
        "tags": [
          "comments"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Comment ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Comment details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/comments-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}/actions/apply": {
      "post": {
        "operationId": "applyRun",
        "summary": "Apply a Run",
        "description": "Apply a run that is paused waiting for confirmation.",
        "tags": [
          "runs"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Run ID"
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/action-comment"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Successfully queued an apply request",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "null"
                  ]
                }
              }
            }
          },
          "409": {
            "description": "Run was not paused for confirmation; apply not allowed.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/runs": {
      "get": {
        "operationId": "listWorkspaceRuns",
        "summary": "List Runs in a Workspace",
        "description": "List all runs in a workspace.",
        "tags": [
          "runs"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Workspace ID"
          },
          {
            "in": "query",
            "name": "filter[operation]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by run operation."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by run status."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of runs",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/runs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/run-triggers": {
      "get": {
        "operationId": "listRunTriggers",
        "summary": "List Run Triggers",
        "description": "List all run triggers for a workspace.",
        "tags": [
          "run-triggers"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Workspace ID"
          },
          {
            "in": "query",
            "name": "filter[run-trigger][type]",
            "schema": {
              "type": "string",
              "enum": [
                "inbound",
                "outbound"
              ]
            },
            "required": true,
            "description": "Filter by run trigger type (inbound or outbound)"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of run triggers",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/run-triggers"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createRunTrigger",
        "summary": "Create a Run Trigger",
        "description": "Create a new run trigger for a workspace.",
        "tags": [
          "run-triggers"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Workspace ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/run-triggers-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Run trigger created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/run-triggers-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/run-triggers/{id}": {
      "get": {
        "operationId": "showRunTrigger",
        "summary": "Show a Run Trigger",
        "description": "Get details about a run trigger.",
        "tags": [
          "run-triggers"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Run Trigger ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Run trigger details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/run-triggers-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteRunTrigger",
        "summary": "Delete a Run Trigger",
        "description": "Delete a run trigger.",
        "tags": [
          "run-triggers"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Run Trigger ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Run trigger deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/runs": {
      "get": {
        "operationId": "listOrganizationRuns",
        "summary": "List Runs in an Organization",
        "description": "List all runs in an organization.",
        "tags": [
          "runs"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization name"
          },
          {
            "in": "query",
            "name": "filter[operation]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by run operation."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by run status."
          },
          {
            "in": "query",
            "name": "filter[timeframe]",
            "schema": {
              "type": "string",
              "default": "year"
            },
            "required": false,
            "description": "Filter by timeframe. Must be a numeric year or \"year\" for the last 12 months (the default)."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of runs",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/runs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination-without-totals"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plans/{id}": {
      "get": {
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the plan to show.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "showPlan",
        "summary": "Show a plan",
        "description": "This endpoint returns a specific plan by its ID.",
        "tags": [
          "plans"
        ],
        "responses": {
          "200": {
            "description": "Successfully returned the plan.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/plans-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plans/{id}/json-output": {
      "get": {
        "operationId": "getPlanJSONOutput",
        "summary": "Get the JSON execution plan",
        "description": "This endpoint generates a temporary authenticated URL to the location of the JSON formatted execution plan.\nWhen successful, this endpoint responds with a temporary redirect that should be followed.\n\nThis endpoint is available for plans using Terraform 0.12 and later.\nThe temporary URL has a life of 1 minute and should not be relied upon beyond the initial request.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the plan to show.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "plans"
        ],
        "responses": {
          "204": {
            "description": "Plan JSON supported, but plan has not yet completed."
          },
          "307": {
            "description": "Plan JSON found and temporary download URL generated.",
            "headers": {
              "Location": {
                "description": "Temporary URL to download the JSON output",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "422": {
            "description": "Plan does not use a supported version of Terraform (< 0.12.X).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plans/{id}/json-output-redacted": {
      "get": {
        "operationId": "getPlanJSONOutputRedacted",
        "summary": "Get the redacted JSON execution plan",
        "description": "This endpoint generates a temporary authenticated URL to the location of the redacted JSON formatted execution plan, or returns the parsed redacted plan inline when the pre-generated file is not yet available.\n\nThis endpoint is available for plans using Terraform 0.15.2 and later. The temporary URL has a life of 1 minute and should not be relied upon beyond the initial request.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the plan to show.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "plans"
        ],
        "responses": {
          "200": {
            "description": "Plan JSON output rendered inline because the pre-generated redacted plan file is not yet available.",
            "content": {
              "application/json": {}
            }
          },
          "204": {
            "description": "Redacted plan JSON supported, but plan has not yet completed."
          },
          "307": {
            "description": "Redacted plan JSON found and temporary download URL generated.",
            "headers": {
              "Location": {
                "description": "Temporary URL to download the redacted JSON output",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Plan or redacted plan output not found.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Plan does not use a supported version of Terraform (< 0.15.2).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plans/{id}/json-schema": {
      "get": {
        "operationId": "getPlanJSONSchema",
        "summary": "Get the JSON provider schema for a plan",
        "description": "This endpoint generates a temporary authenticated URL to the location of the JSON formatted provider schemas associated with a plan.\nWhen successful, this endpoint responds with a temporary redirect that should be followed.\n\nThis endpoint is available for plans using Terraform 0.12 and later. The temporary URL has a life of 1 minute and should not be relied upon beyond the initial request.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the plan to show.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "plans"
        ],
        "responses": {
          "204": {
            "description": "Provider schema JSON supported, but plan has not yet completed."
          },
          "307": {
            "description": "Provider schema JSON found and temporary download URL generated.",
            "headers": {
              "Location": {
                "description": "Temporary URL to download the JSON provider schemas",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Plan or provider schema output not found.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Plan does not use a supported version of Terraform (< 0.12.X).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plans/{id}/actions/soft-delete-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "softDeletePlanBackingData",
        "summary": "Soft Delete Plan Backing Data",
        "description": "Mark the backing files associated with this plan for garbage collection. Terraform permanently deletes backing files after a set number of days unless the plan is restored.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "plans"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the plan to mark for garbage collection."
          }
        ],
        "responses": {
          "204": {
            "description": "Plan backing data marked for garbage collection"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plans/{id}/actions/restore-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "restorePlanBackingData",
        "summary": "Restore Plan Backing Data",
        "description": "Restore backing files associated with a plan that was previously marked for garbage collection. This restores the plan back to its finalized state.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "plans"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the plan to restore."
          }
        ],
        "responses": {
          "204": {
            "description": "Plan backing data restore initiated"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plans/{id}/actions/permanently-delete-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "permanentlyDeletePlanBackingData",
        "summary": "Permanently Delete Plan Backing Data",
        "description": "Permanently delete the backing files associated with a plan that has been soft deleted. This action cannot be undone.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "plans"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the plan to permanently delete backing data for."
          }
        ],
        "responses": {
          "204": {
            "description": "Plan backing data permanently deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{id}/plan/json-schema": {
      "get": {
        "operationId": "getPlanJSONSchemaOutput",
        "summary": "Get the JSON provider schema corresponding to a plan",
        "description": "This endpoint generates a temporary authenticated URL to the location of the JSON formatted provider schema.\nWhen successful, this endpoint responds with a temporary redirect that should be followed.\n\nThis endpoint is available for plans using Terraform 0.12 and later.\nThe temporary URL has a life of 1 minute and should not be relied upon beyond the initial request.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the plan to show.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "plans"
        ],
        "responses": {
          "204": {
            "description": "Plan JSON supported, but plan has not yet completed."
          },
          "307": {
            "description": "Plan JSON found and temporary download URL generated.",
            "headers": {
              "Location": {
                "description": "Temporary URL to download the JSON schema output",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "422": {
            "description": "Plan does not use a supported version of Terraform (< 0.12.X).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{id}/plan": {
      "get": {
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the run whose plan you want to get.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "operationId": "getRunPlan",
        "summary": "Get a plan by Run ID",
        "description": "This endpoint returns a specific plan by its run ID.",
        "tags": [
          "plans"
        ],
        "responses": {
          "200": {
            "description": "Successfully returned the plan.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/plans-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{id}/plan/json-output": {
      "get": {
        "operationId": "getRunPlanJsonOutput",
        "summary": "Get the JSON execution plan by Run ID",
        "description": "This endpoint generates a temporary authenticated URL to the location of the JSON formatted execution plan.\nWhen successful, this endpoint responds with a temporary redirect that should be followed.\n\nThis endpoint is available for plans using Terraform 0.12 and later.\nThe temporary URL has a life of 1 minute and should not be relied upon beyond the initial request.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the run whose plan json you want to get.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "plans"
        ],
        "responses": {
          "204": {
            "description": "Plan JSON supported, but plan has not yet completed."
          },
          "307": {
            "description": "Plan JSON found and temporary download URL generated.",
            "headers": {
              "Location": {
                "description": "Temporary URL to download the JSON output",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "422": {
            "description": "Plan does not use a supported version of Terraform (< 0.12.X).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policies/{policy_id}": {
      "get": {
        "operationId": "showPolicy",
        "summary": "Show a Policy",
        "description": "Get details about a policy.",
        "tags": [
          "policies"
        ],
        "parameters": [
          {
            "name": "policy_id",
            "in": "path",
            "required": true,
            "description": "The ID of the policy to show.",
            "schema": {
              "type": "string",
              "example": "pol-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policies-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updatePolicy",
        "summary": "Update a Policy",
        "description": "Update the enforcement level or description of an existing policy. To update the policy code itself, use the upload endpoint.",
        "tags": [
          "policies"
        ],
        "parameters": [
          {
            "name": "policy_id",
            "in": "path",
            "required": true,
            "description": "The ID of the policy to update.",
            "schema": {
              "type": "string",
              "example": "pol-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/policies-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policies-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deletePolicy",
        "summary": "Delete a Policy",
        "description": "Delete a policy from an organization.",
        "tags": [
          "policies"
        ],
        "parameters": [
          {
            "name": "policy_id",
            "in": "path",
            "required": true,
            "description": "The ID of the policy to delete.",
            "schema": {
              "type": "string",
              "example": "pol-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/policies": {
      "get": {
        "operationId": "listPolicies",
        "summary": "List Policies",
        "description": "List all policies for an organization.",
        "tags": [
          "policies"
        ],
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "description": "The name of the organization.",
            "schema": {
              "type": "string",
              "example": "my-organization"
            }
          },
          {
            "name": "search[name]",
            "in": "query",
            "required": false,
            "description": "Allows searching the organization's policies by name.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filter[kind]",
            "in": "query",
            "required": false,
            "description": "Filter policies by kind. Valid values are sentinel and opa.",
            "schema": {
              "type": "string",
              "enum": [
                "sentinel",
                "opa"
              ]
            }
          },
          {
            "name": "sort",
            "in": "query",
            "required": false,
            "description": "Sort policies by the specified field. Valid values are name, -name, updated-at, and -updated-at. Prefix with - for descending order.",
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/policies"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createPolicy",
        "summary": "Create a Policy",
        "description": "Create a new policy object for the organization. After creation, upload the policy code using the upload endpoint.",
        "tags": [
          "policies"
        ],
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "description": "The name of the organization.",
            "schema": {
              "type": "string",
              "example": "my-organization"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/policies-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policies-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policies/{policy_id}/download": {
      "get": {
        "operationId": "downloadPolicy",
        "summary": "Download a Policy",
        "description": "Generate a temporary URL to the current version of the policy code and redirect to that location. Returns 404 if no policy code has been uploaded.",
        "tags": [
          "policies"
        ],
        "parameters": [
          {
            "name": "policy_id",
            "in": "path",
            "required": true,
            "description": "The ID of the policy to download.",
            "schema": {
              "type": "string",
              "example": "pol-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "200": {
            "description": ".tar.gz file containing the policy code.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policies/{policy_id}/upload": {
      "put": {
        "operationId": "uploadPolicy",
        "summary": "Upload a Policy",
        "description": "Upload code to an existing Sentinel or OPA policy. The request body must be the policy code with a Content-Type of application/octet-stream. Policy uploads are limited to 10MB.",
        "tags": [
          "policies"
        ],
        "parameters": [
          {
            "name": "policy_id",
            "in": "path",
            "required": true,
            "description": "The ID of the policy to upload code to.",
            "schema": {
              "type": "string",
              "example": "pol-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/octet-stream": {
              "schema": {
                "type": "string",
                "format": "binary",
                "description": "The policy code as a binary stream."
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policies-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-checks/{id}": {
      "get": {
        "operationId": "getPolicyCheck",
        "summary": "Show a Policy Check",
        "description": "Get information about a specific policy check.",
        "tags": [
          "policy-checks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy check to show."
          }
        ],
        "responses": {
          "200": {
            "description": "Policy check details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-checks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-checks/{id}/output": {
      "get": {
        "operationId": "getPolicyCheckOutput",
        "summary": "Get Policy Check Output",
        "description": "Retrieve the Sentinel output log for a policy check. When output is available, the response redirects to a temporary presigned URL. When no result exists yet, the response is 204 No Content.",
        "tags": [
          "policy-checks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy check."
          }
        ],
        "responses": {
          "200": {
            "description": "Output log retrieved successfully.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-checks/{id}/actions/override": {
      "post": {
        "operationId": "overridePolicyCheck",
        "summary": "Override a Policy Check",
        "description": "Override a soft-mandatory or warning policy check to allow the run to continue.",
        "tags": [
          "policy-checks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy check to override."
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/action-comment"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Policy check successfully overridden",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-checks-envelope"
                }
              }
            }
          },
          "409": {
            "description": "The policy check is not in an overridable state.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}/policy-checks": {
      "get": {
        "operationId": "listRunPolicyChecks",
        "summary": "List Policy Checks for a Run",
        "description": "List the policy checks associated with a run.",
        "tags": [
          "policy-checks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run to list policy checks for."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of policy checks",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/policy-checks"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}/tf-policy-evaluations": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "listRunTfPolicyEvaluations",
        "summary": "List Terraform Policy Evaluations for a Run",
        "description": "List the Terraform Policy evaluations associated with a run.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "tf-policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run to list Terraform Policy evaluations for."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of Terraform Policy evaluations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/tf-policy-evaluation"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/tf-policy-evaluations/{id}": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getTfPolicyEvaluation",
        "summary": "Show a Terraform Policy Evaluation",
        "description": "Get details about a specific Terraform Policy evaluation.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "tf-policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the Terraform Policy evaluation to show."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "tf_policy_set_outcomes"
                ]
              }
            },
            "required": false,
            "description": "Comma-separated list of related resources to include."
          }
        ],
        "responses": {
          "200": {
            "description": "Terraform Policy evaluation details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/tf-policy-evaluations-envelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "included": {
                          "type": "array",
                          "items": {
                            "oneOf": [
                              {
                                "$ref": "#/components/schemas/tf-policy-set-outcome"
                              }
                            ]
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/tf-policy-evaluations/{id}/actions/override": {
      "x-vis": [
        "public-beta"
      ],
      "post": {
        "operationId": "overrideTfPolicyEvaluation",
        "summary": "Override a Terraform Policy Evaluation",
        "description": "Override a mandatory-overridable Terraform Policy evaluation to allow the run to continue.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "tf-policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the Terraform Policy evaluation to override."
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "properties": {
                  "comment": {
                    "type": "string",
                    "nullable": true,
                    "description": "An optional comment explaining the reason for overriding the Terraform Policy evaluation."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Terraform Policy evaluation successfully overridden",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/tf-policy-evaluations-envelope"
                }
              }
            }
          },
          "409": {
            "description": "The Terraform Policy evaluation is not in an overridable state.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/tf-policy-evaluations/{tf_policy_evaluation_id}/tf-policy-set-outcomes": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "listTfPolicyEvaluationTfPolicySetOutcomes",
        "summary": "List Terraform Policy Set Outcomes for a Terraform Policy Evaluation",
        "description": "List the Terraform Policy set outcomes associated with a Terraform Policy evaluation. Supports filtering via the `filter` parameter.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "tf-policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "tf_policy_evaluation_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the Terraform Policy evaluation to list Terraform Policy set outcomes for."
          },
          {
            "in": "query",
            "name": "filter",
            "style": "deepObject",
            "explode": true,
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "string",
                    "enum": [
                      "passed",
                      "failed",
                      "errored",
                      "unknown"
                    ],
                    "description": "Filter outcomes by status."
                  },
                  "enforcement_level": {
                    "type": "string",
                    "enum": [
                      "advisory",
                      "mandatory",
                      "mandatory_overridable"
                    ],
                    "description": "Filter outcomes by enforcement level."
                  }
                }
              }
            },
            "description": "Filter outcomes using OR-grouped AND conditions. Each numeric index defines\nan independent AND-condition group; groups are combined with OR.\n\nExample — return outcomes that are errored OR (failed + mandatory) OR (failed + mandatory_overridable):\n```\nfilter[0][status]=errored\n&filter[1][status]=failed&filter[1][enforcement_level]=mandatory\n&filter[2][status]=failed&filter[2][enforcement_level]=mandatory_overridable\n```\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of Terraform Policy set outcomes",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/tf-policy-set-outcome"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid filter provided",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/tf-policy-set-outcomes/{id}": {
      "x-vis": [
        "public-beta"
      ],
      "get": {
        "operationId": "getTfPolicySetOutcome",
        "summary": "Show a Terraform Policy Set Outcome",
        "description": "Get details about a specific Terraform Policy set outcome.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "tf-policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the Terraform Policy set outcome to show."
          }
        ],
        "responses": {
          "200": {
            "description": "Terraform Policy set outcome details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/tf-policy-set-outcomes-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/parameters": {
      "get": {
        "operationId": "listPolicySetParams",
        "summary": "List Policy Set Parameters",
        "description": "List parameters belonging to a policy set.",
        "tags": [
          "policy-set-params"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of policy set parameters",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/vars"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createPolicySetParam",
        "summary": "Create a Policy Set Parameter",
        "description": "Create a new parameter for a policy set.",
        "tags": [
          "policy-set-params"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/vars-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Policy set parameter created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/parameters/{id}": {
      "get": {
        "operationId": "getPolicySetParam",
        "summary": "Get a Policy Set Parameter",
        "description": "Get details about a policy set parameter.",
        "tags": [
          "policy-set-params"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the parameter."
          }
        ],
        "responses": {
          "200": {
            "description": "Policy set parameter details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updatePolicySetParam",
        "summary": "Update a Policy Set Parameter",
        "description": "Update an existing policy set parameter.",
        "tags": [
          "policy-set-params"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the parameter to update."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/vars-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Policy set parameter updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vars-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deletePolicySetParam",
        "summary": "Delete a Policy Set Parameter",
        "description": "Delete a policy set parameter.",
        "tags": [
          "policy-set-params"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the parameter to delete."
          }
        ],
        "responses": {
          "204": {
            "description": "Policy set parameter deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}": {
      "get": {
        "operationId": "getPolicySet",
        "summary": "Get a Policy Set",
        "description": "Get details about a specific policy set.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "responses": {
          "200": {
            "description": "Policy set details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-sets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updatePolicySet",
        "summary": "Update a Policy Set",
        "description": "Update an existing policy set.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/policy-sets-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Policy set updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-sets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deletePolicySet",
        "summary": "Delete a Policy Set",
        "description": "Delete a policy set. Deleting a policy set does not delete the policies it contains.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "responses": {
          "204": {
            "description": "Policy set deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/policy-sets": {
      "get": {
        "operationId": "listPolicySets",
        "summary": "List Policy Sets",
        "description": "List all policy sets in an organization.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "filter[versioned]",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "If true, only return versioned policy sets. If false, only return non-versioned policy sets."
          },
          {
            "in": "query",
            "name": "filter[kind]",
            "schema": {
              "type": "string",
              "enum": [
                "sentinel",
                "opa",
                "tfpolicy"
              ]
            },
            "required": false,
            "description": "Filter policy sets by kind.\n\n**Note:** The following kind values are in public-beta:\n- `tfpolicy` - Terraform Policy enforcement\n"
          },
          {
            "in": "query",
            "name": "search[name]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter policy sets by name."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of policy sets",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/policy-sets"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createPolicySet",
        "summary": "Create a Policy Set",
        "description": "Create a new policy set in an organization.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/policy-sets-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Policy set created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-sets-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/relationships/workspaces": {
      "post": {
        "operationId": "addPolicySetWorkspaces",
        "summary": "Add Workspaces to a Policy Set",
        "description": "Add workspaces to a policy set. Relationships are additive; existing workspace memberships are preserved.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Workspaces successfully added to policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removePolicySetWorkspaces",
        "summary": "Remove Workspaces from a Policy Set",
        "description": "Remove workspaces from a policy set. Workspaces not currently in the set are ignored.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Workspaces successfully removed from policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/relationships/policies": {
      "post": {
        "operationId": "addPolicySetPolicies",
        "summary": "Add Policies to a Policy Set",
        "description": "Add policies to a policy set. Additive; existing memberships are preserved. Each `data` item references an existing policy by id; see the request schema for accepted shapes.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/policies-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Policies successfully added to policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removePolicySetPolicies",
        "summary": "Remove Policies from a Policy Set",
        "description": "Remove policies from a policy set. Policies not currently in the set are ignored.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/policies-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Policies successfully removed from policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/relationships/projects": {
      "post": {
        "operationId": "addPolicySetProjects",
        "summary": "Add Projects to a Policy Set",
        "description": "Add projects to a policy set. Relationships are additive; existing project memberships are preserved.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Projects successfully added to policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removePolicySetProjects",
        "summary": "Remove Projects from a Policy Set",
        "description": "Remove projects from a policy set. Projects not currently in the set are ignored.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Projects successfully removed from policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/relationships/workspace-exclusions": {
      "post": {
        "operationId": "addPolicySetWorkspaceExclusions",
        "summary": "Add Workspace Exclusions to a Policy Set",
        "description": "Add workspace exclusions to a policy set. Excluded workspaces will not have the policy set applied to them even if the set is global.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Workspace exclusions successfully added to policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removePolicySetWorkspaceExclusions",
        "summary": "Remove Workspace Exclusions from a Policy Set",
        "description": "Remove workspace exclusions from a policy set. Workspace exclusions not currently in the set are ignored.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspaces-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Workspace exclusions successfully removed from policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/relationships/project-exclusions": {
      "post": {
        "operationId": "addPolicySetProjectExclusions",
        "summary": "Add Project Exclusions to a Policy Set",
        "description": "Add project exclusions to a policy set. Excluded projects will not have the policy set applied to them even if the set is global.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Project exclusions successfully added to policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removePolicySetProjectExclusions",
        "summary": "Remove Project Exclusions from a Policy Set",
        "description": "Remove project exclusions from a policy set. project exclusions not currently in the set are ignored.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Project exclusions successfully removed from policy set."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/tag-selectors": {
      "x-vis": [
        "public-beta"
      ],
      "post": {
        "operationId": "addPolicySetTagSelectors",
        "summary": "Add Tag Selectors to a Policy Set",
        "description": "Add tag selectors to a policy set. Tag selectors define tag-based scoping rules for the policy set.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "tag-key": {
                          "type": "string",
                          "description": "The tag key to match."
                        },
                        "tag-value": {
                          "type": "string",
                          "nullable": true,
                          "description": "The tag value to match."
                        },
                        "is-exclude": {
                          "type": "boolean",
                          "description": "Whether this selector excludes matching workspaces."
                        }
                      },
                      "required": [
                        "tag-key",
                        "tag-value",
                        "is-exclude"
                      ]
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tag selectors successfully added to policy set."
          },
          "404": {
            "description": "Policy set not found or feature not enabled.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Validation error, e.g. tag-based scoping conflicts with explicit associations.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removePolicySetTagSelectors",
        "summary": "Remove Tag Selectors from a Policy Set",
        "description": "Remove tag selectors from a policy set by their tag key and value.\n\nThis operation is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
        "tags": [
          "policy-sets"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "tag-key": {
                          "type": "string",
                          "description": "The tag key to match."
                        },
                        "tag-value": {
                          "type": "string",
                          "nullable": true,
                          "description": "The tag value to match."
                        },
                        "is-exclude": {
                          "type": "boolean",
                          "description": "Whether this selector excludes matching workspaces."
                        }
                      },
                      "required": [
                        "tag-key",
                        "tag-value",
                        "is-exclude"
                      ]
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tag selectors successfully removed from policy set."
          },
          "404": {
            "description": "Policy set not found or feature not enabled.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-sets/{policy_set_id}/versions": {
      "get": {
        "operationId": "listPolicySetVersions",
        "summary": "List Policy Set Versions",
        "description": "List all versions of a policy set.",
        "tags": [
          "policy-set-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of policy set versions",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/policy-set-versions"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createPolicySetVersion",
        "summary": "Create a Policy Set Version",
        "description": "Create a new version for a policy set. The version will be in a pending state until policies are uploaded to it.",
        "tags": [
          "policy-set-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set."
          }
        ],
        "responses": {
          "201": {
            "description": "Policy set version created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-set-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-set-versions/{policy_set_version_id}": {
      "get": {
        "operationId": "getPolicySetVersion",
        "summary": "Get a Policy Set Version",
        "description": "Get details about a specific policy set version.",
        "tags": [
          "policy-set-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set version."
          }
        ],
        "responses": {
          "200": {
            "description": "Policy set version details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-set-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-evaluations/{policy_evaluation_id}": {
      "get": {
        "operationId": "getPolicyEvaluation",
        "summary": "Show a Policy Evaluation",
        "description": "Get details about a specific policy evaluation.",
        "tags": [
          "policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_evaluation_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy evaluation to show."
          }
        ],
        "responses": {
          "200": {
            "description": "Policy evaluation details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-evaluations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-evaluations/{policy_evaluation_id}/policy-set-outcomes": {
      "get": {
        "operationId": "listPolicySetOutcomes",
        "summary": "List Policy Set Outcomes",
        "description": "List the policy set outcomes associated with a policy evaluation.",
        "tags": [
          "policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_evaluation_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy evaluation to list outcomes for."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of policy set outcomes",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/policy-set-outcomes"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid filter provided",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/policy-set-outcomes/{policy_set_outcome_id}": {
      "get": {
        "operationId": "getPolicySetOutcome",
        "summary": "Show a Policy Set Outcome",
        "description": "Get details about a specific policy set outcome.",
        "tags": [
          "policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "policy_set_outcome_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the policy set outcome to show."
          }
        ],
        "responses": {
          "200": {
            "description": "Policy set outcome details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/policy-set-outcomes-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-stages/{task_stage_id}/policy-evaluations": {
      "get": {
        "operationId": "listTaskStagePolicyEvaluations",
        "summary": "List Policy Evaluations for a Task Stage",
        "description": "List the policy evaluations associated with a task stage.",
        "tags": [
          "policy-evaluations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_stage_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task stage to list policy evaluations for."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of policy evaluations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/policy-evaluations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plan-exports": {
      "post": {
        "operationId": "createPlanExport",
        "summary": "Create a Plan Export",
        "description": "Export data from a plan in the specified format. The export process is asynchronous, and the resulting data becomes downloadable when its status is \"finished\".",
        "tags": [
          "plan-exports"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/plan-exports-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Plan export created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/plan-exports-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plan-exports/{id}": {
      "get": {
        "operationId": "showPlanExport",
        "summary": "Show a Plan Export",
        "description": "Get details about a specific plan export.",
        "tags": [
          "plan-exports"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the plan export to show."
          }
        ],
        "responses": {
          "200": {
            "description": "Plan export details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/plan-exports-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deletePlanExport",
        "summary": "Delete a Plan Export",
        "description": "Delete the exported plan data. Plan exports expire after one hour, but can be deleted manually.",
        "tags": [
          "plan-exports"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the plan export to delete."
          }
        ],
        "responses": {
          "204": {
            "description": "Plan export deleted successfully"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/plan-exports/{id}/download": {
      "get": {
        "operationId": "downloadPlanExport",
        "summary": "Download exported plan data",
        "description": "Generate a temporary URL to the location of the exported plan data in a .tar.gz archive, then redirect to that link.",
        "tags": [
          "plan-exports"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the plan export to download."
          }
        ],
        "responses": {
          "200": {
            "description": ".tar.gz file containing the exported plan data.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessment-results/{id}": {
      "get": {
        "summary": "Show an assessment result",
        "operationId": "getAssessmentResult",
        "tags": [
          "assessment-results"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The external ID of the assessment result to show.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/assessment-results-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Assessment result not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessment-results/{id}/json-output": {
      "get": {
        "operationId": "getAssessmentResultJSONOutput",
        "summary": "Get the JSON assessment output",
        "description": "This endpoint returns the JSON formatted assessment output.\nThis is only available when the assessment has succeeded and has JSON output data.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The external ID of the assessment result.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "assessment-results"
        ],
        "responses": {
          "200": {
            "description": "Assessment result JSON output found and returned.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true,
                  "description": "The JSON formatted assessment output with dynamic structure"
                }
              }
            }
          },
          "404": {
            "description": "Assessment result failed or JSON output is not available.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessment-results/{id}/json-schema": {
      "get": {
        "operationId": "getAssessmentResultJSONSchema",
        "summary": "Get the JSON schema",
        "description": "This endpoint returns the JSON schema for the assessment result.\nThis is only available when the assessment has succeeded and has provider schemas.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The external ID of the assessment result.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "assessment-results"
        ],
        "responses": {
          "200": {
            "description": "JSON schema found and returned.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "The JSON schema of the assessment result"
                }
              }
            }
          },
          "404": {
            "description": "Assessment result failed or JSON schema is not available.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessment-results/{id}/sanitized-plan": {
      "get": {
        "operationId": "getAssessmentResultSanitizedPlan",
        "summary": "Get the sanitized plan",
        "description": "This endpoint returns the sanitized plan for the assessment result.\nThis is only available when HYOK is enabled for the organization,\nthe assessment has succeeded, and a sanitized plan is available.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The external ID of the assessment result.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "tags": [
          "assessment-results"
        ],
        "responses": {
          "200": {
            "description": "Sanitized plan found and returned.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "description": "The sanitized plan output"
                }
              }
            }
          },
          "404": {
            "description": "HYOK not available, assessment result failed, or sanitized plan is not available.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessment-results/{id}/log-output": {
      "get": {
        "operationId": "getAssessmentResultLogOutput",
        "summary": "Get the log output",
        "description": "This endpoint returns the log output for the assessment result.\nSupports both JSON and plain text formats based on the Accept header.\nQuery parameters allow for pagination of log output.\n",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The external ID of the assessment result.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Maximum number of bytes to return",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Byte offset to start reading from",
            "required": false,
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "tail",
            "in": "query",
            "description": "If true, return the last N bytes instead of the first N bytes",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "tags": [
          "assessment-results"
        ],
        "responses": {
          "200": {
            "description": "Log output returned successfully.",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string",
                  "description": "The log output in plain text format"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/applies/{id}": {
      "get": {
        "summary": "Show an apply",
        "operationId": "getApply",
        "tags": [
          "applies"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The ID of the apply to show.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/applies-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Apply not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/applies/{id}/errored-state": {
      "get": {
        "summary": "Recover a failed state upload after applying",
        "operationId": "getApplyErroredState",
        "tags": [
          "applies"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The ID of the apply to recover state for.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "307": {
            "description": "Errored state available and user is authorized to read it",
            "headers": {
              "Location": {
                "description": "Storage URL to raw state file",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "default": {
            "description": "Apply not found, errored state not uploaded, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/applies/{id}/actions/soft-delete-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "softDeleteApplyBackingData",
        "summary": "Soft Delete Apply Backing Data",
        "description": "Mark the backing files associated with this apply for garbage collection. Terraform permanently deletes backing files after a set number of days unless the apply is restored.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "applies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the apply to mark for garbage collection."
          }
        ],
        "responses": {
          "204": {
            "description": "Apply backing data marked for garbage collection"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/applies/{id}/actions/restore-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "restoreApplyBackingData",
        "summary": "Restore Apply Backing Data",
        "description": "Restore backing files associated with an apply that was previously marked for garbage collection. This restores the apply back to its finalized state.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "applies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the apply to restore."
          }
        ],
        "responses": {
          "204": {
            "description": "Apply backing data restore initiated"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/applies/{id}/actions/permanently-delete-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "permanentlyDeleteApplyBackingData",
        "summary": "Permanently Delete Apply Backing Data",
        "description": "Permanently delete the backing files associated with an apply that has been soft deleted. This action cannot be undone.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "applies"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the apply to permanently delete backing data for."
          }
        ],
        "responses": {
          "204": {
            "description": "Apply backing data permanently deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessments/{id}/actions/soft-delete-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "softDeleteAssessmentBackingData",
        "summary": "Soft Delete Assessment Backing Data",
        "description": "Mark the backing files associated with this assessment for garbage collection. Terraform permanently deletes backing files after a set number of days unless the assessment is restored.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "assessments"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the assessment to mark for garbage collection."
          }
        ],
        "responses": {
          "204": {
            "description": "Assessment backing data marked for garbage collection"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessments/{id}/actions/restore-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "restoreAssessmentBackingData",
        "summary": "Restore Assessment Backing Data",
        "description": "Restore backing files associated with an assessment that was previously marked for garbage collection. This restores the assessment back to its finalized state.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "assessments"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the assessment to restore."
          }
        ],
        "responses": {
          "204": {
            "description": "Assessment backing data restore initiated"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/assessments/{id}/actions/permanently-delete-backing-data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "permanentlyDeleteAssessmentBackingData",
        "summary": "Permanently Delete Assessment Backing Data",
        "description": "Permanently delete the backing files associated with an assessment that has been soft deleted. This action cannot be undone.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "assessments"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the assessment to permanently delete backing data for."
          }
        ],
        "responses": {
          "204": {
            "description": "Assessment backing data permanently deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/cost-estimates/{id}": {
      "get": {
        "summary": "Show a cost estimate",
        "operationId": "showCostEstimate",
        "tags": [
          "cost-estimates"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "description": "The ID of the cost estimate to show.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/cost-estimates-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Cost estimate not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/state-versions": {
      "get": {
        "operationId": "listStateVersions",
        "summary": "List State Versions for a Workspace",
        "description": "List state versions for a workspace, filtered by organization and workspace name.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "filter[workspace][name]",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the workspace to list state versions for."
          },
          {
            "in": "query",
            "name": "filter[organization][name]",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization that owns the workspace."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter state versions by status. One or more comma-separated values from pending, finalized, or discarded."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of state versions",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/state-versions"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/state-versions/{state_version_id}": {
      "get": {
        "operationId": "getStateVersion",
        "summary": "Show a State Version",
        "description": "Show details for a specific state version.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "state_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the state version to show."
          }
        ],
        "responses": {
          "200": {
            "description": "State version details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/state-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/state-versions/{state_version_id}/outputs": {
      "get": {
        "operationId": "listStateVersionOutputs",
        "summary": "List State Version Outputs",
        "description": "List the output values associated with a specific state version.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "state_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the state version whose outputs to list."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of state version outputs",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/state-version-outputs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/state-versions/{state_version_id}/actions/soft_delete_backing_data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "softDeleteStateVersionBackingData",
        "summary": "Soft Delete State Version Backing Data",
        "description": "Mark the backing files associated with this state version for garbage collection. Terraform permanently deletes backing files after a set number of days unless the state version is restored.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "state_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the state version to mark for garbage collection."
          }
        ],
        "responses": {
          "204": {
            "description": "State version backing data marked for garbage collection"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/state-versions/{state_version_id}/actions/restore_backing_data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "restoreStateVersionBackingData",
        "summary": "Restore State Version Backing Data",
        "description": "Restore backing files associated with a state version that was previously marked for garbage collection. This restores the state version back to its finalized state.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "state_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the state version to restore."
          }
        ],
        "responses": {
          "204": {
            "description": "State version backing data restore initiated"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/state-versions/{state_version_id}/actions/permanently_delete_backing_data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "permanentlyDeleteStateVersionBackingData",
        "summary": "Permanently Delete State Version Backing Data",
        "description": "Permanently delete the backing files associated with a state version that has been soft deleted. This action cannot be undone.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "state_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the state version to permanently delete backing data for."
          }
        ],
        "responses": {
          "204": {
            "description": "State version backing data permanently deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/state-versions": {
      "post": {
        "operationId": "createStateVersion",
        "summary": "Create a State Version",
        "description": "Create a state version and set it as the current state version for the given workspace. The workspace must be locked by the user creating the state version.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace to create the state version in."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/state-versions-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "State version created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/state-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "rollbackStateVersion",
        "summary": "Rollback to a Previous State Version",
        "description": "Create a state version by duplicating the specified state version and set it as the current state version for the given workspace. The workspace must be locked by the user performing the rollback.",
        "tags": [
          "state-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace to rollback the state version in."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/state-versions-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "State version rollback created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/state-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/state-version-outputs/{state_version_output_id}": {
      "get": {
        "operationId": "getStateVersionOutput",
        "summary": "Show a State Version Output",
        "description": "Show details for a specific state version output.",
        "tags": [
          "state-version-outputs"
        ],
        "parameters": [
          {
            "name": "state_version_output_id",
            "in": "path",
            "required": true,
            "description": "The ID of the state version output to show.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/state-version-outputs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "State version output not found or user not authorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/current-state-version-outputs": {
      "get": {
        "operationId": "getCurrentStateVersionOutputs",
        "summary": "Show Current State Version Outputs for a Workspace",
        "description": "List the current state version outputs for a workspace. Sensitive output values are not revealed and will be returned as null. Organization users who do not have permission to read state versions may use this endpoint to fetch the latest output values for a workspace.",
        "tags": [
          "state-version-outputs"
        ],
        "parameters": [
          {
            "name": "workspace_id",
            "in": "path",
            "required": true,
            "description": "The ID of the workspace to read outputs from.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/state-version-outputs"
                      }
                    }
                  }
                }
              }
            }
          },
          "503": {
            "description": "State version outputs are being processed and are not yet ready. Retry the request.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "State version outputs not found or user not authorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/hyok-configurations": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "listHyokConfigurations",
        "summary": "List HYOK Configurations",
        "description": "List all HYOK configurations in an organization\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/hyok-configurations"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Organization not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createHyokConfiguration",
        "summary": "Create HYOK Configuration",
        "description": "Create a new HYOK configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/hyok-configurations-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "HYOK Configuration created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/hyok-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/hyok-configurations/test": {
      "x-vis": [
        "hcpt"
      ],
      "post": {
        "operationId": "testUnpersistedHyokConfiguration",
        "summary": "Test new HYOK configuration",
        "description": "Test an HYOK configuration that has yet to be saved on HCP Terraform. The test ensures that the configuration is set up correctly to connect to the specified KMS.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "required": [
                  "hyok-configuration",
                  "oidc-configuration"
                ],
                "properties": {
                  "hyok-configuration": {
                    "type": "object",
                    "properties": {
                      "data": {
                        "$ref": "#/components/schemas/hyok-configurations"
                      }
                    }
                  },
                  "oidc-configuration": {
                    "type": "object",
                    "properties": {
                      "data": {
                        "oneOf": [
                          {
                            "$ref": "#/components/schemas/aws-oidc-configurations"
                          },
                          {
                            "$ref": "#/components/schemas/gcp-oidc-configurations"
                          },
                          {
                            "$ref": "#/components/schemas/azure-oidc-configurations"
                          },
                          {
                            "$ref": "#/components/schemas/vault-oidc-configurations"
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "HYOK Configuration successfully tested and verified"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/oidc-configurations": {
      "x-vis": [
        "hcpt"
      ],
      "post": {
        "operationId": "createOidcConfiguration",
        "summary": "Create OIDC Configuration",
        "description": "Create a new OIDC configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/oidc-configuration-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "OIDC Configuration created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oidc-configuration-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/hyok-configurations/{hyok_configuration_id}": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "getHyokConfiguration",
        "summary": "Get HYOK configuration details",
        "description": "Get details about an HYOK configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Configuration ID"
          }
        ],
        "responses": {
          "200": {
            "description": "HYOK Configuration details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/hyok-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateHyokConfiguration",
        "summary": "Update HYOK Configuration",
        "description": "Update an HYOK configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK configuration ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/hyok-configurations-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "HYOK configuration updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/hyok-configurations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteHyokConfiguration",
        "summary": "Delete HYOK Configuration",
        "description": "Delete an HYOK configuration. Can only be performed on unused configurations.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Configuration ID"
          }
        ],
        "responses": {
          "204": {
            "description": "HYOK configuration deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/hyok-configurations/{hyok_configuration_id}/hyok-customer-key-versions": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "listHyokCustomerKeyVersions",
        "summary": "List HYOK Customer Key Versions",
        "description": "List all HYOK Customer Key Versions for an HYOK Configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Configuration ID"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/hyok-customer-key-versions"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/hyok-configurations/{hyok_configuration_id}/actions/revoke": {
      "x-vis": [
        "hcpt"
      ],
      "post": {
        "operationId": "revokeHyokConfiguration",
        "summary": "Revoke HYOK configuration",
        "description": "Revoke an HYOK configuration, instructing HCP Terraform to migrate off of the described key.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Configuration ID"
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "HYOK Configuration revocation initiated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "null"
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/hyok-configurations/{hyok_configuration_id}/actions/test": {
      "x-vis": [
        "hcpt"
      ],
      "post": {
        "operationId": "testHyokConfiguration",
        "summary": "Test HYOK configuration",
        "description": "Test an HYOK configuration to ensure that it is set up correctly to connect to the specified KMS.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Configuration ID"
          }
        ],
        "responses": {
          "204": {
            "description": "HYOK Configuration successfully tested and verified"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/hyok-customer-key-versions/{hyok_customer_key_version_id}": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "getHyokCustomerKeyVersion",
        "summary": "Get HYOK Customer Key Version details",
        "description": "Get details about a HYOK Customer Key Version\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_customer_key_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Customer Key Version ID"
          }
        ],
        "responses": {
          "200": {
            "description": "HYOK Customer Key Version details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/hyok-customer-key-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteHyokCustomerKeyVersion",
        "summary": "Delete HYOK Customer Key Version",
        "description": "Delete a HYOK Customer Key Version. Can only be performed on unused key versions.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_customer_key_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Customer Key Version ID"
          }
        ],
        "responses": {
          "204": {
            "description": "HYOK Customer Key Version deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/hyok-customer-key-versions/{hyok_customer_key_version_id}/actions/revoke": {
      "x-vis": [
        "hcpt"
      ],
      "post": {
        "operationId": "revokeHyokCustomerKeyVersion",
        "summary": "Revoke HYOK Customer Key Version",
        "description": "Revoke a HYOK Customer Key Version.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_customer_key_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Customer Key Version ID"
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "HYOK Key Version revocation initiated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "null"
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/hyok-encrypted-data-keys/{hyok_encrypted_data_key_id}": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "getHyokEncryptedDataKey",
        "summary": "Get HYOK Encrypted Data Key details",
        "description": "Get details about a HYOK Encrypted Data Key\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "hyok_encrypted_data_key_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "HYOK Encrypted Data Key ID"
          }
        ],
        "responses": {
          "200": {
            "description": "HYOK Encrypted Data Key details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/hyok-encrypted-data-keys-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oidc-configurations/{oidc_configuration_id}": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "getOidcConfiguration",
        "summary": "Get OIDC Configuration details",
        "description": "Get details about an OIDC configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oidc_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "OIDC Configuration ID"
          }
        ],
        "responses": {
          "200": {
            "description": "OIDC Configuration details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oidc-configuration-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateOidcConfiguration",
        "summary": "Update OIDC Configuration",
        "description": "Update an OIDC configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oidc_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "OIDC Configuration ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/oidc-configuration-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OIDC Configuration updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oidc-configuration-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteOidcConfiguration",
        "summary": "Delete OIDC Configuration",
        "description": "Delete an OIDC configuration\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "hyok"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oidc_configuration_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "OIDC Configuration ID"
          }
        ],
        "responses": {
          "204": {
            "description": "OIDC Configuration deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/authentication-tokens/{id}": {
      "get": {
        "operationId": "getAuthenticationToken",
        "summary": "Get authentication token details",
        "description": "Get details about an authentication token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID - Can be a token ID or a team ID, depending on the token type"
          }
        ],
        "responses": {
          "200": {
            "description": "Authentication Token details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/authentication-tokens-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error Details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteAuthenticationToken",
        "summary": "Delete authentication Token",
        "description": "Delete an authentication token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "ID - Can be a token ID or a team ID, depending on the token type"
          }
        ],
        "responses": {
          "204": {
            "description": "Authentication token deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/users/{user_id}": {
      "get": {
        "operationId": "showUser",
        "summary": "Show User",
        "description": "Shows details for a given user.",
        "tags": [
          "users"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "user_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the desired user."
          }
        ],
        "responses": {
          "200": {
            "description": "User details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/users-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/users/{user_id}/github-app-oauth-tokens": {
      "get": {
        "operationId": "listUserGithubAppOauthTokens",
        "summary": "List User GitHub App OAuth Tokens",
        "description": "List GitHub App OAuth tokens for a given user.",
        "tags": [
          "users"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "user_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the user."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "GitHub App OAuth tokens",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/github-app-oauth-tokens"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/users/{user_id}/authentication-tokens": {
      "get": {
        "operationId": "listUserTokens",
        "summary": "List User Tokens",
        "description": "List all tokens for a specified user",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "user_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "User ID"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/authentication-tokens"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createUserToken",
        "summary": "Create User Token",
        "description": "Create a user token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "user_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "User ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/authentication-tokens-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "User token created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/authentication-tokens-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/agent-pools/{agent_pool_id}/authentication-tokens": {
      "get": {
        "operationId": "listAgentTokens",
        "summary": "List Agent Tokens",
        "description": "List all tokens for the specified agent pool.",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_pool_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the Agent Pool"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/authentication-tokens"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createAgentToken",
        "summary": "Create Agent Token",
        "description": "Create an agent token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "agent_pool_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the Agent Pool"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/authentication-tokens-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Agent token created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/authentication-tokens-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Agent Pool not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body (missing attributes, wrong types, etc.)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "500": {
            "description": "Failure during Agent Token creation",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/teams/{id}/authentication-token": {
      "get": {
        "operationId": "getTeamAuthenticationToken",
        "summary": "Get team authentication token details",
        "description": "Get details about a team's authentication token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Team ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Authentication Token details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/authentication-tokens-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error Details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createTeamAuthenticationToken",
        "summary": "Create (or regenerate) the legacy team authentication token",
        "description": "Creates the team's legacy, descriptionless authentication token. If one already exists, it is revoked and replaced.",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Team ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/authentication-tokens-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Authentication token created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/authentication-tokens-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteTeamAuthenticationToken",
        "summary": "Delete team authentication token",
        "description": "Delete a team's authentication token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Team ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Authentication token deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organization/audit-trail": {
      "x-vis": [
        "hcpt"
      ],
      "get": {
        "operationId": "showOrganizationAuditTrail",
        "summary": "List organization audit events",
        "description": "Returns a list of audit events for the organization associated with the authentication token. HCP Terraform retains 14 days of audit log information. Unlike most HCP Terraform APIs, this endpoint does not use the JSON:API specification. This endpoint requires an organization token or an audit trail token; user tokens and team tokens are not accepted.\n\nThis operation is only available in HCP Terraform.",
        "tags": [
          "audit-trails"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "since",
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "required": false,
            "description": "Returns only audit events created after this date. Must be a UTC ISO8601 datetime string (YYYY-MM-DDTHH:MM:SS.SSSZ)."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Audit events list",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "format": "uuid",
                            "description": "The ID of this audit event."
                          },
                          "version": {
                            "type": "string",
                            "description": "The audit trail schema version."
                          },
                          "type": {
                            "type": "string",
                            "description": "The type of audit event (defaults to \"Resource\")."
                          },
                          "timestamp": {
                            "type": "string",
                            "format": "date-time",
                            "description": "UTC ISO8601 timestamp of the event."
                          },
                          "auth": {
                            "type": "object",
                            "properties": {
                              "accessor_id": {
                                "type": "string",
                                "description": "The ID of the audited actor."
                              },
                              "description": {
                                "type": "string",
                                "nullable": true,
                                "description": "Username of the audited actor."
                              },
                              "type": {
                                "type": "string",
                                "nullable": true,
                                "description": "Authentication type. One of \"Client\", \"Impersonated\", or \"System\"."
                              },
                              "impersonator_id": {
                                "type": "string",
                                "nullable": true,
                                "description": "The ID of the impersonating actor, if available."
                              },
                              "organization_id": {
                                "type": "string",
                                "description": "The ID of the organization."
                              }
                            }
                          },
                          "request": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "nullable": true,
                                "description": "The ID of the request, if available."
                              }
                            }
                          },
                          "resource": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "description": "The ID of the audited resource."
                              },
                              "type": {
                                "type": "string",
                                "description": "The type of the audited resource (e.g., \"run\")."
                              },
                              "action": {
                                "type": "string",
                                "description": "The action that was audited (e.g., \"applied\")."
                              },
                              "meta": {
                                "type": "object",
                                "nullable": true,
                                "additionalProperties": true,
                                "description": "Key-value metadata about the audited event. Defaults to null."
                              }
                            }
                          }
                        }
                      }
                    },
                    "pagination": {
                      "type": "object",
                      "properties": {
                        "current_page": {
                          "type": "integer"
                        },
                        "page_size": {
                          "type": "integer"
                        },
                        "prev_page": {
                          "type": "integer",
                          "nullable": true
                        },
                        "next_page": {
                          "type": "integer",
                          "nullable": true
                        },
                        "total_pages": {
                          "type": "integer"
                        },
                        "total_count": {
                          "type": "integer"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Unauthorized or forbidden",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/authentication-token": {
      "get": {
        "operationId": "getOrganizationToken",
        "summary": "Get organization token details",
        "description": "Get details about an organization token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization name"
          },
          {
            "in": "query",
            "name": "token",
            "schema": {
              "type": "string",
              "enum": [
                "audit-trails"
              ]
            },
            "required": false,
            "description": "The type of organization token to retrieve. Omit for the default organization token.",
            "x-vis": [
              "hcpt"
            ]
          }
        ],
        "responses": {
          "200": {
            "description": "Organization Token details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/authentication-tokens-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error Details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createOrganizationToken",
        "summary": "Create Organization Token",
        "description": "Create an organization token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization name"
          },
          {
            "in": "query",
            "name": "token",
            "schema": {
              "type": "string",
              "enum": [
                "audit-trails"
              ]
            },
            "required": false,
            "description": "The type of organization token to create. Omit for the default organization token.",
            "x-vis": [
              "hcpt"
            ]
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/authentication-tokens-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Organization token created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/authentication-tokens-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteOrganizationToken",
        "summary": "Delete organization Token",
        "description": "Delete an organization token",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization name"
          },
          {
            "in": "query",
            "name": "token",
            "schema": {
              "type": "string",
              "enum": [
                "audit-trails"
              ]
            },
            "required": false,
            "description": "The type of organization token to delete. Omit for the default organization token.",
            "x-vis": [
              "hcpt"
            ]
          }
        ],
        "responses": {
          "204": {
            "description": "Organization token deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/team-tokens": {
      "get": {
        "operationId": "listTeamTokensForAnOrganization",
        "summary": "List Team Tokens for an Organization",
        "description": "List all tokens for a specified organization",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization Name"
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Search team tokens by team name."
          },
          {
            "in": "query",
            "name": "filter[expiry_status]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by token expiry status. Accepts a comma-separated list of any of: `active`, `expiring_in_7_days`, `expiring_in_30_days`, `expired`, `no_expiration`. Multiple values are combined with OR."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/authentication-tokens"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteTeamTokensForAnOrganization",
        "summary": "Bulk-Delete Team Tokens for an Organization",
        "description": "Bulk-delete team tokens for an organization.",
        "tags": [
          "authentication-tokens"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Organization Name"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "authentication-tokens"
                          ]
                        },
                        "id": {
                          "type": "string",
                          "description": "External ID of the team token to delete.",
                          "example": "at-abc123def456"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Tokens deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/teams": {
      "get": {
        "operationId": "listTeams",
        "summary": "List Teams",
        "description": "List teams in an organization. Any member of an organization can view visible teams and any secret teams they are a member of.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "A search query string. Teams are searchable by name (case-insensitive)."
          },
          {
            "in": "query",
            "name": "filter[names]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "If specified, restricts results to a team with a matching name. If multiple comma separated values are specified, teams matching any of the names are returned."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "users",
                  "organization-memberships"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Can include \"users\" or \"organization-memberships\"."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "Teams list",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/teams"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "included": {
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "$ref": "#/components/schemas/users"
                          },
                          {
                            "$ref": "#/components/schemas/organization-memberships"
                          }
                        ],
                        "discriminator": {
                          "propertyName": "type",
                          "mapping": {
                            "users": "#/components/schemas/users",
                            "organization-memberships": "#/components/schemas/organization-memberships"
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid include parameter",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createTeam",
        "summary": "Create Team",
        "description": "Create a team in an organization.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Name of the organization"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/teams-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Team created successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/teams-envelope"
                }
              }
            }
          },
          "400": {
            "description": "Invalid include parameter",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body (missing attributes, wrong types, etc.)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/teams/{team_id}": {
      "get": {
        "operationId": "getTeam",
        "summary": "Show Team Information",
        "description": "Get details about a team.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Team ID"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "users",
                  "organization-memberships"
                ]
              }
            },
            "required": false,
            "description": "Optionally side-load relationships. Can include \"users\" or \"organization-memberships\"."
          }
        ],
        "responses": {
          "200": {
            "description": "Team details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/teams-envelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "included": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "$ref": "#/components/schemas/users"
                              },
                              {
                                "$ref": "#/components/schemas/organization-memberships"
                              }
                            ],
                            "discriminator": {
                              "propertyName": "type",
                              "mapping": {
                                "users": "#/components/schemas/users",
                                "organization-memberships": "#/components/schemas/organization-memberships"
                              }
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Invalid include parameter",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateTeam",
        "summary": "Update Team",
        "description": "Update a team's attributes.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Team ID"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/teams-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Team updated successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/teams-envelope"
                }
              }
            }
          },
          "400": {
            "description": "Invalid include parameter",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body (missing attributes, wrong types, etc.)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteTeam",
        "summary": "Delete Team",
        "description": "Delete a team. Only organization owners can delete teams.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Team ID"
          }
        ],
        "responses": {
          "204": {
            "description": "Team deleted successfully"
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/teams/{team_id}/relationships/users": {
      "post": {
        "operationId": "addTeamMembersByUsername",
        "summary": "Add Users to Team (by username)",
        "description": "Add multiple users to a team using their usernames. Both users and teams must already exist.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/users-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Users successfully added to team."
          },
          "400": {
            "description": "Invalid request (blank ID, wrong type, user does not exist, user is already a member, user is not in the organization).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. The organization is managed by HCP.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeTeamMembersByUsername",
        "summary": "Remove Users from Team (by username)",
        "description": "Remove multiple users from a team using their usernames. This only removes users from this team; it does not delete the users from the organization.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/users-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Users successfully removed from team."
          },
          "400": {
            "description": "Invalid request (blank ID, wrong type, user is not a member).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. The organization is managed by HCP, or attempting to remove the last owner of the owners team.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/teams/{team_id}/relationships/organization-memberships": {
      "get": {
        "operationId": "listTeamOrganizationMemberships",
        "summary": "List Team Organization Memberships",
        "description": "List all organization memberships for a team. Returns both active members and invited users.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string",
              "enum": [
                "active",
                "invited",
                "inactive"
              ]
            },
            "required": false,
            "description": "Filter memberships by status."
          },
          {
            "in": "query",
            "name": "filter[is_service_account]",
            "schema": {
              "type": "string",
              "enum": [
                "true",
                "false"
              ]
            },
            "required": false,
            "description": "Filter to include only service account members."
          },
          {
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string",
              "enum": [
                "status",
                "-status"
              ]
            },
            "required": false,
            "description": "Sort memberships. Prefix with '-' for descending order (e.g. '-status')."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of organization memberships for the team.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/organization-memberships"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid filter or sort parameter.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addTeamMembersByOrgMembership",
        "summary": "Add Users to Team (by organization membership ID)",
        "description": "Add multiple users to a team using their organization membership IDs. Unlike the username method, users only need a pending invitation to the organization.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/organization-memberships-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Users successfully added to team."
          },
          "400": {
            "description": "Invalid request (blank ID, wrong type, membership does not exist, user is already a member, user is not in the organization).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. The organization is managed by HCP.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeTeamMembersByOrgMembership",
        "summary": "Remove Users from Team (by organization membership ID)",
        "description": "Remove multiple users from a team using their organization membership IDs. This only removes users from this team; it does not delete the users from the organization.",
        "tags": [
          "teams"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/organization-memberships-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Users successfully removed from team."
          },
          "400": {
            "description": "Invalid request (blank ID, wrong type, membership does not exist, user is not a member).",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden. The organization is managed by HCP, or attempting to remove the last active owner of the owners team.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Team not found, or user unauthorized to perform action.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/team-projects": {
      "get": {
        "operationId": "listTeamProjects",
        "summary": "List Team Access to a Project",
        "description": "List all team access grants for a project.",
        "tags": [
          "team-projects"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "filter[project][id]",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The project ID to list team access for."
          },
          {
            "in": "query",
            "name": "filter[team][id]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Optionally filter by team ID."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of team-project access grants",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/team-projects"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Project not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addProjectTeamAccess",
        "summary": "Add Team Access to a Project",
        "description": "Add a team's access to a project.",
        "tags": [
          "team-projects"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/team-projects-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Team access created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/team-projects-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Project or team not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body (missing attributes, wrong types, etc.)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/team-projects/{team_project_id}": {
      "get": {
        "operationId": "showProjectTeamAccess",
        "summary": "Show a Team Access Relationship",
        "description": "Get details about a team's access to a project.",
        "tags": [
          "team-projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team/project relationship."
          }
        ],
        "responses": {
          "200": {
            "description": "Team-project access details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/team-projects-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Team access not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateProjectTeamAccess",
        "summary": "Update Team Access to a Project",
        "description": "Update a team's access level on a project.",
        "tags": [
          "team-projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team/project relationship."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/team-projects-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Team access updated successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/team-projects-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Team access not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body (missing attributes, wrong types, etc.)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeProjectTeamAccess",
        "summary": "Remove Team Access from a Project",
        "description": "Remove a team's access from a project.",
        "tags": [
          "team-projects"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_project_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the team/project relationship."
          }
        ],
        "responses": {
          "204": {
            "description": "Team access removed successfully"
          },
          "404": {
            "description": "Team access not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/team-workspaces": {
      "get": {
        "operationId": "listTeamWorkspaces",
        "summary": "List Team Access to a Workspace",
        "description": "List all team access relationships. Optionally filter by workspace or team ID.",
        "tags": [
          "team-access"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "filter[workspace][id]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "The workspace ID to list team access for."
          },
          {
            "in": "query",
            "name": "filter[team][id]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "The team ID to list workspace access for."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of team access relationships",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/team-workspaces"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Workspace not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "addTeamAccess",
        "summary": "Add Team Access to a Workspace",
        "description": "Add a team's access to a workspace.",
        "tags": [
          "team-access"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/team-workspaces-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Team access relationship created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/team-workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace or Team not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body (missing attributes, wrong types, etc.)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/team-workspaces/{team_workspace_id}": {
      "get": {
        "operationId": "showTeamAccess",
        "summary": "Show a Team Access Relationship",
        "description": "Get details about a team's access to a workspace.",
        "tags": [
          "team-access"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The team/workspace relationship ID."
          }
        ],
        "responses": {
          "200": {
            "description": "Team access relationship details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/team-workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Team access not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateTeamAccess",
        "summary": "Update Team Access to a Workspace",
        "description": "Update a team's access to a workspace.",
        "tags": [
          "team-access"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The team/workspace relationship ID."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/team-workspaces-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Team access relationship updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/team-workspaces-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Team access not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Malformed request body (missing attributes, wrong types, etc.)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "removeTeamAccess",
        "summary": "Remove Team Access to a Workspace",
        "description": "Remove a team's access to a workspace.",
        "tags": [
          "team-access"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "team_workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The team/workspace relationship ID."
          }
        ],
        "responses": {
          "204": {
            "description": "Team access relationship deleted"
          },
          "404": {
            "description": "Team access not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/tasks/integrations": {
      "get": {
        "operationId": "listTaskIntegrations",
        "tags": [
          "tasks"
        ],
        "summary": "List Integrations",
        "description": "List all available integrations that can be used with tasks. \nBy default, only active integrations are returned.\n",
        "parameters": [
          {
            "name": "search",
            "in": "query",
            "required": false,
            "description": "Search integrations by name (case-insensitive, partial match).",
            "schema": {
              "type": "string",
              "example": "cloud"
            }
          },
          {
            "name": "category",
            "in": "query",
            "required": false,
            "description": "Filter integrations by category.",
            "schema": {
              "type": "string",
              "example": "cost-estimation"
            }
          },
          {
            "name": "include_inactive",
            "in": "query",
            "required": false,
            "description": "Include inactive integrations in the results.",
            "schema": {
              "type": "string",
              "enum": [
                "true",
                "false"
              ],
              "default": "false"
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/integrations"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/configuration-versions": {
      "get": {
        "operationId": "listConfigurationVersions",
        "summary": "List Configuration Versions",
        "description": "List configuration versions for a workspace.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of configuration versions",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data"
                  ],
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/configuration-versions"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createConfigurationVersion",
        "summary": "Create Configuration Version",
        "description": "Create a new configuration version in a workspace.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/configuration-versions-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Configuration version created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/configuration-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/configuration-versions/{configuration_version_id}": {
      "get": {
        "operationId": "getConfigurationVersion",
        "summary": "Get Configuration Version",
        "description": "Get details of a specific configuration version.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "configuration_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the configuration version."
          }
        ],
        "responses": {
          "200": {
            "description": "Configuration version details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/configuration-versions-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/configuration-versions/{configuration_version_id}/ingress-attributes": {
      "get": {
        "operationId": "getIngressAttributes",
        "summary": "Get Ingress Attributes",
        "description": "Get commit information for a configuration version.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "configuration_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the configuration version."
          }
        ],
        "responses": {
          "200": {
            "description": "Ingress attributes details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ingress-attributes"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/configuration-versions/{configuration_version_id}/actions/archive": {
      "post": {
        "operationId": "archiveConfigurationVersion",
        "summary": "Archive Configuration Version",
        "description": "Archive the uploaded files for a configuration version.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "configuration_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the configuration version."
          }
        ],
        "responses": {
          "202": {
            "description": "Archive process initiated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "null"
                  ]
                }
              }
            }
          },
          "409": {
            "description": "Configuration version was in a non-archivable state or the configuration version was created with VCS and cannot be archived through the API.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/configuration-versions/{configuration_version_id}/actions/soft_delete_backing_data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "softDeleteConfigurationVersion",
        "summary": "Soft Delete Configuration Version",
        "description": "Mark a configuration version for garbage collection.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "configuration_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the configuration version."
          }
        ],
        "responses": {
          "200": {
            "description": "Configuration version marked for garbage collection"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/configuration-versions/{configuration_version_id}/actions/restore_backing_data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "restoreConfigurationVersion",
        "summary": "Restore Configuration Version",
        "description": "Restore a configuration version marked for garbage collection.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "configuration_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the configuration version."
          }
        ],
        "responses": {
          "200": {
            "description": "Configuration version restored"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/configuration-versions/{configuration_version_id}/actions/permanently_delete_backing_data": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "permanentlyDeleteConfigurationVersion",
        "summary": "Permanently Delete Configuration Version",
        "description": "Permanently delete the backing files for a configuration version.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "configuration_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the configuration version."
          }
        ],
        "responses": {
          "200": {
            "description": "Configuration version permanently deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/configuration-versions/{configuration_version_id}/download": {
      "get": {
        "operationId": "downloadConfigurationVersion",
        "summary": "Download Configuration Version",
        "description": "Generate a temporary URL to download the configuration version files.",
        "tags": [
          "configuration-versions"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "configuration_version_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the configuration version."
          }
        ],
        "responses": {
          "200": {
            "description": ".tar.gz file containing the configuration version.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/vcs-events": {
      "get": {
        "operationId": "listOrganizationVcsEvents",
        "summary": "List VCS Events",
        "description": "List VCS events for an organization.",
        "tags": [
          "vcs-events"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization to list VCS events from."
          },
          {
            "in": "query",
            "name": "filter[from]",
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "required": false,
            "description": "RFC3339 formatted UTC timestamp. If omitted, defaults to 10 days ago."
          },
          {
            "in": "query",
            "name": "filter[to]",
            "schema": {
              "type": "string",
              "format": "date-time"
            },
            "required": false,
            "description": "RFC3339 formatted UTC timestamp. If omitted, defaults to now."
          },
          {
            "in": "query",
            "name": "filter[oauth_client_external_ids]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Comma-separated list of OAuth client external IDs to filter by."
          },
          {
            "in": "query",
            "name": "filter[levels]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Comma-separated list of event levels to filter by. Accepted values are \"info\" and \"error\"."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "oauth_client"
                ]
              }
            },
            "required": false,
            "description": "Allows including related resource data."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of VCS events",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/vcs-events"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/vcs/tree": {
      "get": {
        "operationId": "getVcsTree",
        "summary": "List directories in a repository",
        "description": "This endpoint returns a list of directories in a repository \nat the root or at a specific reference (branch, tag, or commit SHA).\nNote: This endpoint only returns directories, not files.\n",
        "tags": [
          "vcs"
        ],
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The name of the organization"
          },
          {
            "name": "oauth_token_id",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The OAuth token ID to authenticate with the VCS provider"
          },
          {
            "name": "identifier",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The repository identifier (e.g., \"owner/repo\")"
          },
          {
            "name": "branch",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "The branch, tag, or commit SHA to list directories for. \nIf not provided, the default branch will be used.\n"
          },
          {
            "name": "githubAppInstallationId",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "The GitHub App installation ID (only needed when using GitHub App authentication)"
          }
        ],
        "responses": {
          "200": {
            "description": "Successfully retrieved repository directories",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "description": "Unique identifier for the directory"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "vcs-tree"
                            ]
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Repository not found or user doesn't have access"
          },
          "422": {
            "description": "VCS provider error",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      }
    },
    "/organizations/{organization_name}/vcs/repo": {
      "get": {
        "operationId": "checkVcsRepository",
        "summary": "Check if a repository exists",
        "description": "This endpoint checks if a repository exists and is accessible to the user.\n",
        "tags": [
          "vcs"
        ],
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The name of the organization"
          },
          {
            "name": "oauth_token_id",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The OAuth token ID to authenticate with the VCS provider"
          },
          {
            "name": "identifier",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The repository identifier (e.g., \"owner/repo\")"
          }
        ],
        "responses": {
          "200": {
            "description": "Successfully checked repository existence",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/vcs-repo-check-envelope"
                }
              }
            }
          },
          "404": {
            "description": "OAuth token not found or user doesn't have access"
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ]
      }
    },
    "/organizations/{organization_name}/registry-modules/validation": {
      "get": {
        "operationId": "validateRegistryModuleNames",
        "summary": "Check if a module name and provider combination is available",
        "description": "This endpoint checks if a module name and provider combination is available for use within an organization.\nIt returns a validation result indicating whether the name is already in use.\n",
        "tags": [
          "registry"
        ],
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The name of the organization"
          },
          {
            "name": "name",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The name of the module to validate"
          },
          {
            "name": "provider",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The provider of the module to validate"
          }
        ],
        "responses": {
          "200": {
            "description": "Successfully validated the module name and provider",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/registry-module-address-validations-envelope"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "404": {
            "description": "Organization not found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/registry-modules/{registry_name}/{namespace}/{name}/{provider}": {
      "get": {
        "operationId": "getRegistryModule",
        "summary": "Show a registry module",
        "description": "Returns details for a registry module, including its status, publishing\nmechanism, version statuses, and VCS settings when available to the\nrequesting organization.\n",
        "tags": [
          "registry"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization requesting the module."
          },
          {
            "in": "path",
            "name": "registry_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The registry the module belongs to (e.g. \"private\" or \"public\")."
          },
          {
            "in": "path",
            "name": "namespace",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The namespace of the module."
          },
          {
            "in": "path",
            "name": "name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the module."
          },
          {
            "in": "path",
            "name": "provider",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The provider of the module."
          }
        ],
        "responses": {
          "200": {
            "description": "The registry module was found.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/registry-modules-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateRegistryModule",
        "summary": "Update a registry module",
        "description": "When updating a VCS-backed private registry module, you can change the publishing\nmechanism (branch, tags, or tag prefix) and the VCS connection itself.\nChanging the connection re-validates the new VCS source and re-ingests the\nmodule.\n",
        "tags": [
          "registry"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization that owns the module."
          },
          {
            "in": "path",
            "name": "registry_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The registry the module belongs to (e.g. \"private\")."
          },
          {
            "in": "path",
            "name": "namespace",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The namespace of the module."
          },
          {
            "in": "path",
            "name": "name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the module."
          },
          {
            "in": "path",
            "name": "provider",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The provider of the module."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/registry-modules-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The registry module was updated.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/registry-modules-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/tests/registry-modules/{registry_name}/{namespace}/{name}/{provider}/test-runs/{test_run_id}/cleanups/{id}": {
      "get": {
        "operationId": "getTestRunCleanup",
        "summary": "Get a Test Run Cleanup",
        "description": "Get details about a specific cleanup attempt associated with a test run.\n",
        "tags": [
          "registry"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "registry_name",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The registry host name."
          },
          {
            "in": "path",
            "name": "namespace",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The namespace of the registry module."
          },
          {
            "in": "path",
            "name": "name",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The name of the registry module."
          },
          {
            "in": "path",
            "name": "provider",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The provider of the registry module."
          },
          {
            "in": "path",
            "name": "test_run_id",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The ID of the test run."
          },
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The ID of the test run cleanup."
          }
        ],
        "responses": {
          "200": {
            "description": "Test run cleanup details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/test-run-cleanups-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Test run cleanup not found or user unauthorized to perform action",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/ssh-keys": {
      "get": {
        "operationId": "listSshKeys",
        "tags": [
          "ssh-keys"
        ],
        "summary": "List SSH Keys",
        "description": "List all SSH keys for an organization.",
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "description": "The name of the organization.",
            "schema": {
              "type": "string",
              "example": "my-organization"
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/ssh-keys"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createSshKey",
        "tags": [
          "ssh-keys"
        ],
        "summary": "Create an SSH Key",
        "description": "Create a new SSH key for an organization.",
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "description": "The name of the organization.",
            "schema": {
              "type": "string",
              "example": "my-organization"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/ssh-keys-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ssh-keys-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/ssh-keys/{ssh_key_id}": {
      "get": {
        "operationId": "getSshKey",
        "tags": [
          "ssh-keys"
        ],
        "summary": "Get an SSH Key",
        "description": "Retrieve the details of a single SSH key.",
        "parameters": [
          {
            "name": "ssh_key_id",
            "in": "path",
            "required": true,
            "description": "The ID of the SSH key.",
            "schema": {
              "type": "string",
              "example": "sshkey-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ssh-keys-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateSshKey",
        "tags": [
          "ssh-keys"
        ],
        "summary": "Update an SSH Key",
        "description": "Update the name of an SSH key.",
        "parameters": [
          {
            "name": "ssh_key_id",
            "in": "path",
            "required": true,
            "description": "The ID of the SSH key.",
            "schema": {
              "type": "string",
              "example": "sshkey-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/ssh-keys-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/ssh-keys-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteSshKey",
        "tags": [
          "ssh-keys"
        ],
        "summary": "Delete an SSH Key",
        "description": "Delete an SSH key.",
        "parameters": [
          {
            "name": "ssh_key_id",
            "in": "path",
            "required": true,
            "description": "The ID of the SSH key.",
            "schema": {
              "type": "string",
              "example": "sshkey-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/change-requests": {
      "get": {
        "operationId": "listWorkspaceChangeRequests",
        "summary": "List Change Requests in a Workspace",
        "description": "List all change requests for a workspace.",
        "tags": [
          "change-requests"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The workspace ID."
          },
          {
            "in": "query",
            "name": "archive",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "When true, returns only archived change requests. When false, returns only unarchived change requests. When omitted, returns all change requests ordered by creation date."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of change requests",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/workspace-change-requests"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/change-requests/{change_request_id}": {
      "get": {
        "operationId": "showChangeRequest",
        "summary": "Show a Change Request",
        "description": "Get details about a specific change request.",
        "tags": [
          "change-requests"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "change_request_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The change request ID."
          }
        ],
        "responses": {
          "200": {
            "description": "Change request details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-change-requests-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/change-requests/{change_request_id}/actions/archive": {
      "get": {
        "operationId": "getChangeRequestArchive",
        "summary": "Get Change Request Archive Status",
        "description": "Get the current state of a change request, including its archive status.",
        "tags": [
          "change-requests"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "change_request_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The change request ID."
          }
        ],
        "responses": {
          "200": {
            "description": "Change request details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-change-requests-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "archiveChangeRequest",
        "summary": "Archive a Change Request",
        "description": "Archive a change request to mark it as completed.",
        "tags": [
          "change-requests"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "change_request_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The change request ID."
          }
        ],
        "responses": {
          "200": {
            "description": "Change request successfully archived",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-change-requests-envelope"
                }
              }
            }
          },
          "400": {
            "description": "The change request is already archived.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oauth-clients/{oauth_client_id}": {
      "get": {
        "operationId": "getOAuthClient",
        "summary": "Get an OAuth Client",
        "description": "Show details of an existing OAuth client.",
        "tags": [
          "oauth-clients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oauth_client_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the OAuth Client."
          },
          {
            "in": "query",
            "name": "show_affected_workspaces",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "If true, includes names of up to 25 affected workspaces and the total count."
          }
        ],
        "responses": {
          "200": {
            "description": "OAuth Client details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oauth-clients-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateOAuthClient",
        "summary": "Update an OAuth Client",
        "description": "Update settings of an existing OAuth client.",
        "tags": [
          "oauth-clients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oauth_client_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the OAuth Client to update."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/oauth-clients-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OAuth Client updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oauth-clients-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "destroyOAuthClient",
        "summary": "Destroy an OAuth Client",
        "description": "Remove an existing OAuth client and unlink any associated workspaces.",
        "tags": [
          "oauth-clients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oauth_client_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the OAuth Client to destroy."
          }
        ],
        "responses": {
          "204": {
            "description": "OAuth Client successfully destroyed."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oauth-clients": {
      "post": {
        "operationId": "createOAuthClient",
        "summary": "Create an OAuth Client",
        "description": "Create a VCS connection between an organization and a VCS provider. The organization is specified via the `organization-id` attribute. This endpoint allows you to provide a pre-generated OAuth token string instead of going through the OAuth Application flow.\n",
        "tags": [
          "oauth-clients"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/oauth-clients-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "OAuth Client created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oauth-clients-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/oauth-clients": {
      "get": {
        "operationId": "listOAuthClients",
        "summary": "List OAuth Clients",
        "description": "List all VCS connections between an organization and its VCS providers.",
        "tags": [
          "oauth-clients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "show_affected_workspaces",
            "schema": {
              "type": "boolean"
            },
            "required": false,
            "description": "If true, includes names of up to 25 affected workspaces and total count per client."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of OAuth Clients",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/oauth-clients"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createOAuthClientForOrganization",
        "summary": "Create an OAuth Client for an Organization",
        "description": "Create a VCS connection between an organization and a VCS provider. This endpoint allows you to provide a pre-generated OAuth token string instead of going through the OAuth Application flow.\n",
        "tags": [
          "oauth-clients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/oauth-clients-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "OAuth Client created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oauth-clients-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oauth-clients/{oauth_client_id}/relationships/projects": {
      "post": {
        "operationId": "attachOAuthClientToProjects",
        "summary": "Attach an OAuth Client to Projects",
        "description": "Attach an OAuth client to one or more projects.",
        "tags": [
          "oauth-clients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oauth_client_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the OAuth Client to attach to projects."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "OAuth Client successfully attached to projects."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "detachOAuthClientFromProjects",
        "summary": "Detach an OAuth Client from Projects",
        "description": "Detach an OAuth client from one or more projects.",
        "tags": [
          "oauth-clients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "oauth_client_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the OAuth Client to detach from projects."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/projects-identifier-array-document"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "OAuth Client successfully detached from projects."
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oauth-tokens/{oauth_token_id}": {
      "get": {
        "tags": [
          "oauth-tokens"
        ],
        "summary": "Show an OAuth Token",
        "description": "Get details about an OAuth token.",
        "operationId": "getOauthToken",
        "parameters": [
          {
            "name": "oauth_token_id",
            "in": "path",
            "required": true,
            "description": "The ID of the OAuth token.",
            "schema": {
              "type": "string",
              "example": "ot-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oauth-tokens-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "oauth-tokens"
        ],
        "summary": "Update an OAuth Token",
        "description": "Update an OAuth token by setting its SSH key.",
        "operationId": "updateOauthToken",
        "parameters": [
          {
            "name": "oauth_token_id",
            "in": "path",
            "required": true,
            "description": "The ID of the OAuth token.",
            "schema": {
              "type": "string",
              "example": "ot-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/oauth-tokens-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/oauth-tokens-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "oauth-tokens"
        ],
        "summary": "Destroy an OAuth Token",
        "description": "Destroy an OAuth token.",
        "operationId": "deleteOauthToken",
        "parameters": [
          {
            "name": "oauth_token_id",
            "in": "path",
            "required": true,
            "description": "The ID of the OAuth token.",
            "schema": {
              "type": "string",
              "example": "ot-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/oauth-tokens": {
      "get": {
        "tags": [
          "oauth-tokens"
        ],
        "summary": "List OAuth Tokens for an Organization",
        "description": "List all OAuth tokens for a given organization.",
        "operationId": "listOauthTokensForOrganization",
        "parameters": [
          {
            "name": "organization_name",
            "in": "path",
            "required": true,
            "description": "The name of the organization.",
            "schema": {
              "type": "string",
              "example": "my-organization"
            }
          },
          {
            "name": "filter[provider]",
            "in": "query",
            "required": false,
            "description": "Filter tokens by VCS provider name.",
            "schema": {
              "type": "string",
              "example": "github"
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/oauth-tokens"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oauth-clients/{oauth_client_id}/oauth-tokens": {
      "get": {
        "tags": [
          "oauth-tokens"
        ],
        "summary": "List OAuth Tokens for an OAuth Client",
        "description": "List all OAuth tokens for a given OAuth client.",
        "operationId": "listOauthTokensForOauthClient",
        "parameters": [
          {
            "name": "oauth_client_id",
            "in": "path",
            "required": true,
            "description": "The ID of the OAuth client.",
            "schema": {
              "type": "string",
              "example": "oc-xxxxxxxxxxxxxxxx"
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/oauth-tokens"
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oauth-tokens/{oauth_token_id}/authorized-repos": {
      "get": {
        "tags": [
          "oauth-tokens"
        ],
        "summary": "List Authorized Repositories for an OAuth Token",
        "description": "List all repositories that the OAuth token is authorized to access.",
        "operationId": "listAuthorizedReposForOauthToken",
        "parameters": [
          {
            "name": "oauth_token_id",
            "in": "path",
            "required": true,
            "description": "The ID of the OAuth token.",
            "schema": {
              "type": "string",
              "example": "ot-xxxxxxxxxxxxxxxx"
            }
          },
          {
            "name": "organization",
            "in": "query",
            "required": false,
            "description": "The VCS organization name to scope repositories to. Required for Azure DevOps providers.",
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/authorized-repos"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "next-page": {
                          "type": "integer",
                          "nullable": true,
                          "description": "The next page number, if more pages are available."
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/oauth-tokens/{oauth_token_id}/vcs-organizations": {
      "get": {
        "tags": [
          "oauth-tokens"
        ],
        "summary": "List VCS Organizations for an OAuth Token",
        "description": "List all VCS organizations accessible via the OAuth token. Only applicable to Azure DevOps providers.",
        "operationId": "listVcsOrganizationsForOauthToken",
        "parameters": [
          {
            "name": "oauth_token_id",
            "in": "path",
            "required": true,
            "description": "The ID of the OAuth token.",
            "schema": {
              "type": "string",
              "example": "ot-xxxxxxxxxxxxxxxx"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/vcs-organization"
                      }
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/github-app-installations": {
      "get": {
        "operationId": "listGithubAppInstallations",
        "summary": "List GitHub App Installations",
        "description": "List GitHub App installations available to the current user.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "filter[name]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by GitHub organization or login name."
          },
          {
            "in": "query",
            "name": "filter[installation_id]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by GitHub installation ID."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of GitHub App installations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/github-app-installations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/github-app-installations/{github_app_installation_id}/repos": {
      "get": {
        "operationId": "listGithubAppInstallationRepos",
        "summary": "List GitHub App Installation Repositories",
        "description": "List repositories accessible through a GitHub App installation.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "github_app_installation_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the GitHub App installation."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of repositories",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/github-app-repos"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/github-app/installation/{github_app_installation_id}": {
      "get": {
        "operationId": "getGithubAppInstallation",
        "summary": "Show GitHub App Installation",
        "description": "Get details about a GitHub App installation.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "github_app_installation_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the GitHub App installation."
          }
        ],
        "responses": {
          "200": {
            "description": "GitHub App installation details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/github-app-installations-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/github-app/installations": {
      "get": {
        "operationId": "listGithubAppInstallationsForCurrentUser",
        "summary": "List GitHub App Installations for Current User",
        "description": "List GitHub App installations accessible to the current authenticated user.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "filter[name]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by GitHub organization or login name."
          },
          {
            "in": "query",
            "name": "filter[installation_id]",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Filter by GitHub installation ID."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of GitHub App installations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/github-app-installations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/admin/github-app-installations": {
      "x-vis": [
        "tfe"
      ],
      "get": {
        "operationId": "adminListGithubAppInstallations",
        "summary": "List GitHub App Installations (Admin)",
        "description": "List the webhook-synchronized installations of the site's Global GitHub App across every organization, including disconnected and suspended installations. This endpoint is exclusive to Terraform Enterprise and requires site-admin access.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "filter[query]",
            "schema": {
              "type": "string",
              "maxLength": 255
            },
            "required": false,
            "description": "Filter by GitHub account name (partial match) or exact GitHub installation ID."
          },
          {
            "in": "query",
            "name": "filter[status]",
            "schema": {
              "type": "string",
              "enum": [
                "all",
                "connected",
                "disconnected",
                "suspended"
              ]
            },
            "required": false,
            "description": "Filter by installation status. Defaults to all."
          },
          {
            "in": "query",
            "name": "filter[type]",
            "schema": {
              "type": "string",
              "enum": [
                "Organization",
                "User"
              ]
            },
            "required": false,
            "description": "Filter by GitHub account type."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of GitHub App installations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/github-app-installations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        },
                        "total-installation-count": {
                          "type": "integer",
                          "description": "The unfiltered number of synchronized installations for the app, independent of the filter and page parameters."
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/admin/github-app-installations/refresh": {
      "x-vis": [
        "tfe"
      ],
      "post": {
        "operationId": "adminRefreshGithubAppInstallations",
        "summary": "Refresh GitHub App Installations (Admin)",
        "description": "Request an on-demand reconciliation of the Global GitHub App's installation inventory against GitHub, recovering installations whose webhook deliveries were missed. Only available when the app is hosted on GHE.com. This endpoint is exclusive to Terraform Enterprise and requires site-admin access.\n\nThis operation is only available in Terraform Enterprise.",
        "tags": [
          "github-app-installations"
        ],
        "responses": {
          "204": {
            "description": "Reconciliation enqueued"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/github-app-installations": {
      "get": {
        "operationId": "listOrganizationGithubAppInstallations",
        "summary": "List Organization GitHub App Installations",
        "description": "List GitHub App installations linked to an organization.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of GitHub App installations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/github-app-installations"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/github-app-installations/{github_app_installation_id}/repos": {
      "get": {
        "operationId": "listOrganizationGithubAppInstallationRepos",
        "summary": "List Organization GitHub App Installation Repositories",
        "description": "List repositories accessible through a GitHub App installation linked to an organization.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "github_app_installation_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the GitHub App installation."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of repositories",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/github-app-repos"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/github-app-installations/{github_app_installation_id}/link-account": {
      "post": {
        "operationId": "linkOrganizationGithubAppInstallation",
        "summary": "Link GitHub App Installation to Organization",
        "description": "Link a GitHub App installation to an organization.",
        "tags": [
          "github-app-installations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "path",
            "name": "github_app_installation_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the GitHub App installation."
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  }
                }
              },
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/tasks/{id}": {
      "get": {
        "operationId": "getTask",
        "summary": "Get a Run Task",
        "description": "Get details about a run task.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run task."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "workspace_tasks",
                  "workspace_tasks.workspace"
                ]
              }
            },
            "required": false,
            "description": "Allows including related resource data.\n"
          }
        ],
        "responses": {
          "200": {
            "description": "Run task details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/tasks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateTask",
        "summary": "Update a Run Task",
        "description": "Update a run task.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run task."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tasks-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Run task updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/tasks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteTask",
        "summary": "Delete a Run Task",
        "description": "Delete a run task.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run task."
          }
        ],
        "responses": {
          "204": {
            "description": "Run task deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/tasks": {
      "get": {
        "operationId": "listOrganizationTasks",
        "summary": "List Run Tasks",
        "description": "List all run tasks in an organization.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "workspace_tasks",
                  "workspace_tasks.workspace"
                ]
              }
            },
            "required": false,
            "description": "Allows including related resource data.\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of run tasks",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/tasks"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createTask",
        "summary": "Create a Run Task",
        "description": "Create a run task in an organization.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/tasks-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Run task created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/tasks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/tasks/{id}/relationships/workspace-tasks": {
      "get": {
        "operationId": "listTaskWorkspaceTasks",
        "summary": "List Workspace Run Tasks for a Run Task",
        "description": "List all workspace run tasks associated with a run task.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run task."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of workspace run tasks",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/workspace-tasks"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-configs/{external_id}": {
      "get": {
        "operationId": "getTaskConfig",
        "summary": "Get a Task Configuration",
        "description": "Get details about a task configuration.",
        "tags": [
          "tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "external_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task configuration."
          },
          {
            "in": "query",
            "name": "include",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "Allows including related resource data. Value must be a comma-separated list containing one or more of `projects`, `task`, `owner`, or `organization`.\n"
          }
        ],
        "responses": {
          "200": {
            "description": "Task configuration details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-configs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateTaskConfig",
        "summary": "Update a Task Configuration",
        "description": "Update a task configuration.",
        "tags": [
          "tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "external_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task configuration."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/task-configs-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Task configuration updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-configs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/task-configs": {
      "get": {
        "operationId": "listOrganizationTaskConfigs",
        "summary": "List Task Configurations",
        "description": "List task configurations in an organization that apply to a given target project.\n",
        "tags": [
          "tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "filter[target_id]",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the target project to filter by."
          },
          {
            "in": "query",
            "name": "filter[target_type]",
            "schema": {
              "type": "string",
              "enum": [
                "projects"
              ]
            },
            "required": true,
            "description": "The type of the target to filter by."
          },
          {
            "in": "query",
            "name": "filter[task_category]",
            "schema": {
              "type": "string",
              "enum": [
                "hook",
                "task",
                "native"
              ]
            },
            "required": false,
            "description": "Restricts results to task configurations whose task belongs to the given category.\n"
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of task configurations",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/task-configs"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createTaskConfig",
        "summary": "Create a Task Configuration",
        "description": "Create a task configuration in an organization.",
        "tags": [
          "tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/task-configs-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Task configuration created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-configs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/organizations/{organization_name}/task-configs/for-owner": {
      "get": {
        "operationId": "getTaskConfigForOwner",
        "summary": "Get a Task Configuration for an Owner",
        "description": "Get the task configuration for a specific task and owner within an organization.\n",
        "tags": [
          "tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_name",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The name of the organization."
          },
          {
            "in": "query",
            "name": "q[task_id]",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task."
          },
          {
            "in": "query",
            "name": "q[owner_id]",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the owner. For organization owners, this is the organization name."
          },
          {
            "in": "query",
            "name": "q[owner_type]",
            "schema": {
              "type": "string",
              "enum": [
                "organizations"
              ]
            },
            "required": true,
            "description": "The type of the owner."
          }
        ],
        "responses": {
          "200": {
            "description": "Task configuration details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-configs-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/tasks": {
      "get": {
        "operationId": "listWorkspaceTasks",
        "summary": "List Workspace Run Tasks",
        "description": "List all run tasks associated with a workspace.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of workspace run tasks",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/workspace-tasks"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createWorkspaceTask",
        "summary": "Associate a Run Task to a Workspace",
        "description": "Associate an existing run task to a workspace.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspace-tasks-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Workspace run task created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-tasks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspaces/{workspace_id}/tasks/{id}": {
      "get": {
        "operationId": "getWorkspaceTask",
        "summary": "Show a Workspace Run Task",
        "description": "Get details about a workspace run task.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace run task."
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace run task details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-tasks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "updateWorkspaceTask",
        "summary": "Update a Workspace Run Task",
        "description": "Update a workspace run task.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace run task."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspace-tasks-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Workspace run task updated",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-tasks-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "deleteWorkspaceTask",
        "summary": "Delete a Workspace Run Task",
        "description": "Delete a workspace run task, dissociating the run task from the workspace.",
        "tags": [
          "run-tasks"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace."
          },
          {
            "in": "path",
            "name": "id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the workspace run task."
          }
        ],
        "responses": {
          "204": {
            "description": "Workspace run task deleted"
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-stages/{task_stage_id}": {
      "get": {
        "operationId": "getTaskStage",
        "summary": "Show a Run Task Stage",
        "description": "Get details about a specific run task stage.",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_stage_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task stage to show."
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "run",
                  "run.workspace",
                  "task_results",
                  "policy_evaluations",
                  "cost_estimate"
                ]
              }
            },
            "required": false,
            "description": "A comma-separated list of related resources to include."
          }
        ],
        "responses": {
          "200": {
            "description": "Task stage details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-stages-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-stages/{task_stage_id}/actions/override": {
      "post": {
        "operationId": "overrideTaskStage",
        "summary": "Override a Task Stage",
        "description": "Override a task stage that is in the awaiting_override status, allowing the run to continue even when run tasks have failed.",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_stage_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task stage to override."
          }
        ],
        "responses": {
          "200": {
            "description": "Task stage successfully overridden",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-stages-envelope"
                }
              }
            }
          },
          "409": {
            "description": "The task stage is not in an overridable state or has no overridable failures.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/runs/{run_id}/task-stages": {
      "get": {
        "operationId": "listRunTaskStages",
        "summary": "List the Run Task Stages in a Run",
        "description": "List the run task stages associated with a run.",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "run_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the run to list task stages for."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of run task stages",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/task-stages"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-results/{task_result_id}": {
      "get": {
        "operationId": "getTaskResult",
        "summary": "Show a Run Task Result",
        "description": "Get details about a specific run task result.",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_result_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task result to show."
          }
        ],
        "responses": {
          "200": {
            "description": "Task result details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-results-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-results/{task_result_id}/body": {
      "get": {
        "operationId": "getTaskResultBody",
        "summary": "Download Task Result Body",
        "description": "Download the body content of a native task result. This endpoint redirects to a \npre-signed URL for downloading the task result data stored in object storage.\n",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_result_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task result."
          }
        ],
        "responses": {
          "200": {
            "description": "File containing the task result body.",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "404": {
            "description": "Task result not found or has no body content",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-results/{task_result_id}/callback": {
      "patch": {
        "operationId": "callbackTaskResult",
        "summary": "Update a Run Task Result",
        "description": "Update a run task result with status, message, and optional outcome data. This endpoint is used by run task integrations to report execution results back to HCP Terraform. Requires a url_code query parameter for authentication.",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_result_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task result to update."
          },
          {
            "in": "query",
            "name": "url_code",
            "schema": {
              "type": "string"
            },
            "required": false,
            "description": "The callback authentication token issued to the run task integration. Required for run task integrations; not required for token-authenticated requests."
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/task-results-envelope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Task result updated successfully",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-results-envelope"
                }
              }
            }
          },
          "409": {
            "description": "The task result is in a terminal state and cannot be updated.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "422": {
            "description": "Invalid attributes provided.",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-results/{task_result_id}/outcomes": {
      "get": {
        "operationId": "listTaskResultOutcomes",
        "summary": "List the Outcomes for a Run Task Result",
        "description": "List the run task result outcomes associated with a run task result.",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_result_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task result to list outcomes for."
          },
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of run task result outcomes",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/task-result-outcomes"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    },
                    "links": {
                      "$ref": "#/components/schemas/self-with-pagination"
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/task-result-outcomes/{task_result_outcome_id}": {
      "get": {
        "operationId": "getTaskResultOutcome",
        "summary": "Show a Run Task Result Outcome",
        "description": "Get details about a specific run task result outcome.",
        "tags": [
          "task-stages"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "task_result_outcome_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "The ID of the task result outcome to show."
          }
        ],
        "responses": {
          "200": {
            "description": "Task result outcome details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/task-result-outcomes-envelope"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspace-transfers": {
      "get": {
        "operationId": "listWorkspaceTransfers",
        "summary": "List Workspace Transfers",
        "description": "List all workspace transfers you have access to.",
        "tags": [
          "workspace-transfers"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/page_number"
          },
          {
            "$ref": "#/components/parameters/page_size"
          }
        ],
        "responses": {
          "200": {
            "description": "List of workspace transfers",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/workspace-transfers"
                      }
                    },
                    "meta": {
                      "type": "object",
                      "properties": {
                        "pagination": {
                          "$ref": "#/components/schemas/pagination"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createWorkspaceTransfer",
        "summary": "Create a Workspace Transfer",
        "description": "Queue a new workspace transfer across organizations.",
        "tags": [
          "workspace-transfers"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/vnd.api+json": {
              "schema": {
                "$ref": "#/components/schemas/workspace-transfers-envelope"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Workspace transfer created",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-transfers-envelope"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspace-transfers/{workspace_transfer_id}": {
      "get": {
        "operationId": "getWorkspaceTransfer",
        "summary": "Get Workspace Transfer details",
        "description": "Get details about a workspace transfer.",
        "tags": [
          "workspace-transfers"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_transfer_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Workspace Transfer ID"
          },
          {
            "in": "query",
            "name": "include",
            "style": "form",
            "explode": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "events"
                ]
              }
            },
            "required": false,
            "description": "Allows including related resource data."
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace transfer details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-transfers-envelope"
                }
              }
            }
          },
          "404": {
            "description": "Workspace transfer not found",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspace-transfers/{workspace_transfer_id}/actions/resume": {
      "post": {
        "operationId": "resumeWorkspaceTransfer",
        "summary": "Resume a Workspace Transfer",
        "description": "Resume a paused workspace transfer. A transfer pauses automatically:\n- After data migration completes, awaiting approval before source workspace deletion (`awaiting_approval`)\n- If source workspace deletion times out (`source_workspace_deletion_stuck`)\nOnce resumed, the transfer proceeds with the remaining operations.\n",
        "tags": [
          "workspace-transfers"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_transfer_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Workspace Transfer ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace transfer resumed",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-transfers-envelope"
                }
              }
            }
          },
          "409": {
            "description": "Transfer is not paused",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    },
    "/workspace-transfers/{workspace_transfer_id}/actions/cancel": {
      "post": {
        "operationId": "cancelWorkspaceTransfer",
        "summary": "Cancel a Workspace Transfer",
        "description": "Cancel a workspace transfer before the source workspace deletion begins.\nOnce the `remove_source_workspace` operation starts, the transfer cannot be canceled.\nCanceling leaves the source workspace intact but locked. You cannot resume a canceled transfer.\n",
        "tags": [
          "workspace-transfers"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "workspace_transfer_id",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Workspace Transfer ID"
          }
        ],
        "responses": {
          "200": {
            "description": "Workspace transfer canceled",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/workspace-transfers-envelope"
                }
              }
            }
          },
          "409": {
            "description": "Transfer cannot be canceled (already started source workspace deletion, completed, or already canceled)",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          },
          "default": {
            "description": "Error details",
            "content": {
              "application/vnd.api+json": {
                "schema": {
                  "$ref": "#/components/schemas/errors"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer"
      }
    },
    "schemas": {
      "errors": {
        "type": "object",
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "status": {
                  "type": "string"
                },
                "title": {
                  "type": "string"
                },
                "detail": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "admin-banners": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "The external ID of the banner (e.g. ab-xxxxxxxxxxxxxxxx)."
          },
          "type": {
            "type": "string",
            "enum": [
              "admin-banners"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "title",
              "body",
              "style",
              "audience"
            ],
            "properties": {
              "title": {
                "type": "string",
                "maxLength": 100,
                "description": "Short heading for the banner (max 100 characters)."
              },
              "body": {
                "type": "string",
                "maxLength": 255,
                "description": "Body text of the banner. Limited HTML is allowed: strong, em, b, i, and anchor tags with href. All other tags and attributes are stripped. Maximum 255 characters after sanitization.\n"
              },
              "style": {
                "type": "string",
                "enum": [
                  "info",
                  "warning",
                  "critical"
                ],
                "description": "Visual style controlling how the banner is rendered."
              },
              "audience": {
                "type": "string",
                "enum": [
                  "all_users",
                  "authenticated_only"
                ],
                "description": "Which users see the banner."
              },
              "scheduled-publish-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "ISO 8601 datetime (UTC) when the banner should become active. scheduled-publish-at, scheduled-expire-at, and timezone must all be provided together or all omitted. Providing only a subset is a validation error.\n"
              },
              "scheduled-expire-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "ISO 8601 datetime (UTC) when the banner should be automatically deactivated. Must be provided together with scheduled-publish-at and timezone.\n"
              },
              "timezone": {
                "type": "string",
                "nullable": true,
                "description": "IANA timezone identifier for the scheduled times (e.g. \"America/New_York\", \"UTC\"). Required when scheduled-publish-at and scheduled-expire-at are provided. Used by the UI to display the schedule in the administrator's local timezone; stored and returned as-is.\n"
              },
              "published-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true,
                "description": "Set automatically when the banner is created without a schedule, or when the scheduled publish time is reached.\n"
              },
              "deactivated-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true,
                "description": "Set when the banner is deactivated, either because a newer banner was created or because the scheduled expiry time was reached.\n"
              }
            }
          }
        }
      },
      "admin-banners-collection-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/admin-banners"
            }
          }
        }
      },
      "admin-banners-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/admin-banners"
          }
        }
      },
      "admin-customization-settings": {
        "type": "object",
        "required": [
          "type",
          "id",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "Always \"customization\"."
          },
          "type": {
            "type": "string",
            "enum": [
              "customization-settings"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "support-email-address": {
                "type": "string",
                "nullable": true,
                "description": "The support email address shown in help text on the site. When set, it is rendered as a mailto: link in the support link chain.\n"
              },
              "support-url-address": {
                "type": "string",
                "description": "The support URL shown in help text on the site. Used as the fallback when support-email-address is not set.\n"
              },
              "login-help": {
                "type": "string",
                "nullable": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "HTML that overrides the default help text below the login form.\n\nThis attribute is only available in Terraform Enterprise."
              },
              "footer": {
                "type": "string",
                "nullable": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "HTML rendered just above the copyright/release in the application footer.\n\n\nThis attribute is only available in Terraform Enterprise."
              },
              "error": {
                "type": "string",
                "nullable": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "HTML that overrides the default error instructions.\n\nThis attribute is only available in Terraform Enterprise."
              },
              "new-user": {
                "type": "string",
                "nullable": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "HTML shown to users when they first create an account.\n\nThis attribute is only available in Terraform Enterprise."
              },
              "internal-support-url": {
                "type": "string",
                "nullable": true,
                "maxLength": 2048,
                "x-vis": [
                  "tfe"
                ],
                "description": "Overrides the default support links in the TFE UI (Help menu, error pages, welcome page). Accepts https://, http://, or mailto: schemes. Leave blank to restore the default HashiCorp support link resolution chain.\n\n\nThis attribute is only available in Terraform Enterprise."
              },
              "internal-documentation-url": {
                "type": "string",
                "nullable": true,
                "maxLength": 2048,
                "x-vis": [
                  "tfe"
                ],
                "description": "Overrides documentation links in the TFE UI (Help menu). Accepts https:// or http:// only. Leave blank to use the default HashiCorp documentation URL.\n\n\nThis attribute is only available in Terraform Enterprise."
              },
              "internal-tutorials-url": {
                "type": "string",
                "nullable": true,
                "maxLength": 2048,
                "x-vis": [
                  "tfe"
                ],
                "description": "Overrides tutorial links in the TFE UI (Help > Tutorials). Accepts https:// or http:// only. Leave blank to use the default HashiCorp tutorials URL.\n\n\nThis attribute is only available in Terraform Enterprise."
              },
              "avatar-sources": {
                "type": "array",
                "nullable": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "Ordered catalog of configurable avatar sources with enabled/disabled flags. Initials is the implicit terminal fallback and is not included. PATCH accepts the same array format and performs a full replacement.\n\n\nThis attribute is only available in Terraform Enterprise.",
                "items": {
                  "type": "object",
                  "required": [
                    "source",
                    "enabled"
                  ],
                  "properties": {
                    "source": {
                      "type": "string",
                      "enum": [
                        "saml",
                        "gravatar"
                      ],
                      "description": "The name of the avatar source."
                    },
                    "enabled": {
                      "type": "boolean",
                      "description": "Whether the source is active."
                    }
                  }
                }
              }
            }
          }
        }
      },
      "admin-customization-settings-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/admin-customization-settings"
          }
        }
      },
      "related": {
        "type": "object",
        "properties": {
          "related": {
            "type": "string"
          }
        }
      },
      "links_related": {
        "type": "object",
        "properties": {
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "authenticated-resource-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "organizations",
              "runs",
              "users",
              "teams"
            ]
          }
        }
      },
      "authenticated-resource-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/authenticated-resource-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "self": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string"
          }
        }
      },
      "users": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "users"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "username": {
                "type": "string",
                "nullable": true
              },
              "is-service-account": {
                "description": "Indicates whether this user is a synthetic user representing a team or organization.",
                "type": "boolean"
              },
              "avatar-url": {
                "type": "string",
                "nullable": true
              },
              "auth-method": {
                "type": "string"
              },
              "v2-only": {
                "type": "boolean"
              },
              "is-admin": {
                "type": "boolean"
              },
              "is-site-admin": {
                "description": "Deprecated. Use is-admin.",
                "type": "boolean"
              },
              "is-sso-login": {
                "type": "boolean"
              },
              "is-confirmed": {
                "type": "boolean"
              },
              "is-unified": {
                "type": "boolean"
              },
              "is-sudo": {
                "type": "boolean"
              },
              "email": {
                "type": "string"
              },
              "unconfirmed-email": {
                "type": "string",
                "nullable": true
              },
              "password": {
                "type": "string",
                "nullable": true
              },
              "enterprise-support": {
                "type": "boolean"
              },
              "has-linked-hcp": {
                "type": "boolean"
              },
              "has-git-hub-app-token": {
                "type": "boolean"
              },
              "two-factor": {
                "type": "object",
                "properties": {
                  "enabled": {
                    "type": "boolean"
                  },
                  "verified": {
                    "type": "boolean"
                  }
                }
              },
              "permissions": {
                "type": "object",
                "properties": {
                  "can-create-organization": {
                    "type": "boolean"
                  },
                  "can-view-organizations": {
                    "type": "boolean"
                  },
                  "can-view-settings": {
                    "type": "boolean"
                  },
                  "can-view-smtp-settings": {
                    "type": "boolean"
                  },
                  "can-view-twilio-settings": {
                    "type": "boolean"
                  },
                  "can-view-saml-settings": {
                    "type": "boolean"
                  },
                  "can-view-admin-workspaces": {
                    "type": "boolean"
                  },
                  "can-view-admin-runs": {
                    "type": "boolean"
                  },
                  "can-view-customization-settings": {
                    "type": "boolean"
                  },
                  "can-view-cost-estimation-settings": {
                    "type": "boolean"
                  },
                  "can-view-tool-versions": {
                    "type": "boolean"
                  },
                  "can-create-tool-versions": {
                    "type": "boolean"
                  },
                  "can-view-general-settings": {
                    "type": "boolean"
                  },
                  "can-use-sql-runner": {
                    "type": "boolean"
                  },
                  "can-view-profile": {
                    "type": "boolean"
                  },
                  "can-change-email": {
                    "type": "boolean"
                  },
                  "can-change-username": {
                    "type": "boolean"
                  },
                  "can-change-password": {
                    "type": "boolean"
                  },
                  "can-manage-sessions": {
                    "type": "boolean"
                  },
                  "can-manage-user-tokens": {
                    "type": "boolean"
                  },
                  "can-update-user": {
                    "type": "boolean"
                  },
                  "can-reenable-2fa-by-unlinking": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  },
                  "can-manage-hcp-accounts": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "authentication-tokens": {
                "$ref": "#/components/schemas/links_related"
              },
              "github-app-oauth-tokens": {
                "$ref": "#/components/schemas/links_related"
              },
              "authenticated-resource": {
                "$ref": "#/components/schemas/authenticated-resource-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "users-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/users"
          }
        }
      },
      "feature-sets-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "feature-sets"
            ]
          }
        }
      },
      "feature-sets-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/feature-sets-identifier"
            }
          }
        }
      },
      "hcp-organization": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes",
          "relationships"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "attributes": {
            "type": "object",
            "required": [
              "name",
              "is-hcp-admin"
            ],
            "properties": {
              "name": {
                "type": "string"
              },
              "hcp-owner-email": {
                "type": "string",
                "nullable": true
              },
              "is-hcp-admin": {
                "type": "boolean"
              }
            }
          },
          "relationships": {
            "type": "object",
            "required": [
              "connected-plans"
            ],
            "properties": {
              "connected-plans": {
                "$ref": "#/components/schemas/feature-sets-has-many"
              }
            }
          }
        }
      },
      "hcp-organization-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/hcp-organization"
          }
        }
      },
      "feature-sets": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the feature set"
          },
          "type": {
            "type": "string",
            "enum": [
              "feature-sets"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "assessments": {
                "type": "boolean",
                "description": "Whether the feature set includes assessments"
              },
              "audit-logging": {
                "type": "boolean",
                "description": "Whether the feature set includes audit logging"
              },
              "can-self-service-downgrade": {
                "type": "boolean",
                "description": "Whether the organization can self-service downgrade from this feature set"
              },
              "change-requests": {
                "type": "boolean",
                "description": "Whether the feature set includes change requests"
              },
              "cost": {
                "type": "number",
                "description": "The cost of the feature set in cents"
              },
              "cost-estimation": {
                "type": "boolean",
                "description": "Whether the feature set includes cost estimation"
              },
              "default-agents-ceiling": {
                "type": "number",
                "description": "Default maximum number of concurrent agents"
              },
              "default-runs-ceiling": {
                "type": "number",
                "description": "Default maximum number of concurrent runs"
              },
              "description": {
                "type": "string",
                "description": "Description of the feature set"
              },
              "global-run-tasks": {
                "type": "boolean",
                "description": "Whether the feature set includes global run tasks"
              },
              "hyok": {
                "type": "boolean",
                "description": "Whether the feature set includes Hold Your Own Key encryption"
              },
              "identifier": {
                "type": "string",
                "description": "Unique identifier for the feature set"
              },
              "terraform-actions": {
                "type": "boolean",
                "description": "Whether the feature set includes Terraform Actions features"
              },
              "is-current": {
                "type": "boolean",
                "description": "Whether this is a current/active feature set"
              },
              "is-free-tier": {
                "type": "boolean",
                "description": "Whether this is a free tier feature set"
              },
              "is-managed-resource-plan": {
                "type": "boolean",
                "description": "Whether this is a managed resource plan"
              },
              "module-deprecations": {
                "type": "boolean",
                "description": "Whether this feature set includes module deprecations"
              },
              "module-revocations": {
                "type": "boolean",
                "description": "Whether this feature set includes module revocations"
              },
              "module-tests-agent-support": {
                "type": "boolean"
              },
              "module-tests-generation": {
                "type": "boolean",
                "description": "Whether the feature set includes module test generation"
              },
              "name": {
                "type": "string",
                "description": "Name of the feature set"
              },
              "no-code-modules": {
                "type": "boolean",
                "description": "Whether the feature set includes no-code modules"
              },
              "plan": {
                "type": "string",
                "nullable": true,
                "description": "Associated plan ID"
              },
              "policy-enforcement": {
                "type": "boolean",
                "description": "Whether the feature set includes policy enforcement"
              },
              "policy-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of policies (null means unlimited)"
              },
              "policy-mandatory-enforcement-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of mandatory enforcement policies (null means unlimited)"
              },
              "policy-set-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of policy sets (null means unlimited)"
              },
              "private-networking": {
                "type": "boolean",
                "description": "Whether the feature set includes private networking"
              },
              "private-policy-agents": {
                "type": "boolean",
                "description": "Whether the feature set includes private policy agents"
              },
              "private-run-tasks": {
                "type": "boolean",
                "description": "Whether the feature set includes private run tasks"
              },
              "private-vcs": {
                "type": "boolean",
                "description": "Whether the feature set includes private VCS"
              },
              "run-task-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of run tasks (null means unlimited)"
              },
              "recoverable-items": {
                "type": "boolean",
                "description": "Whether the feature set allows enabling of recoverable items\n\nThis attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
                "x-vis": [
                  "public-beta"
                ]
              },
              "run-task-mandatory-enforcement-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of mandatory enforcement run tasks (null means unlimited)"
              },
              "run-task-workspace-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of workspaces per run task (null means unlimited)"
              },
              "run-tasks": {
                "type": "boolean",
                "description": "Whether the feature set includes run tasks"
              },
              "self-serve-billing": {
                "type": "boolean",
                "description": "Whether the feature set supports self-serve billing"
              },
              "sentinel": {
                "type": "boolean",
                "description": "Whether the feature set includes Sentinel (alias for policy-enforcement)"
              },
              "sso": {
                "type": "boolean",
                "description": "Whether the feature set includes SSO"
              },
              "stacks": {
                "type": "boolean",
                "description": "Whether the feature set includes stacks"
              },
              "task-project-scoping": {
                "type": "boolean",
                "description": "Whether the feature set includes the ability to scope tasks to projects"
              },
              "teams": {
                "type": "boolean",
                "description": "Whether the feature set includes teams"
              },
              "user-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of users (null means unlimited)"
              },
              "uses-hcp-rum-billing-resource": {
                "type": "boolean",
                "description": "Whether the feature set uses HCP RUM billing resource"
              },
              "versioned-policy-set-limit": {
                "type": "number",
                "nullable": true,
                "description": "Maximum number of versioned policy sets (null means unlimited)"
              },
              "waypoint-actions": {
                "type": "boolean"
              },
              "waypoint-templates-and-addons": {
                "type": "boolean"
              }
            }
          }
        },
        "required": [
          "id",
          "type",
          "attributes"
        ]
      },
      "self-with-pagination": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string"
          },
          "first": {
            "type": "string"
          },
          "prev": {
            "type": "string",
            "nullable": true
          },
          "next": {
            "type": "string",
            "nullable": true
          },
          "last": {
            "type": "string"
          }
        }
      },
      "pagination": {
        "type": "object",
        "properties": {
          "current-page": {
            "type": "integer"
          },
          "page-size": {
            "type": "integer"
          },
          "prev-page": {
            "type": "integer",
            "nullable": true
          },
          "next-page": {
            "type": "integer",
            "nullable": true
          },
          "total-pages": {
            "type": "integer"
          },
          "total-count": {
            "type": "integer"
          }
        }
      },
      "organizations-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "organizations"
            ]
          }
        }
      },
      "organizations-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/organizations-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "feature-sets-has-one": {
        "type": "object",
        "nullable": true,
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/feature-sets-identifier"
          }
        }
      },
      "subscriptions-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "subscriptions"
            ]
          }
        }
      },
      "subscriptions-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/subscriptions-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "subscriptions": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "subscriptions"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "end-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "is-active": {
                "type": "boolean"
              },
              "start-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "runs-ceiling": {
                "type": "integer",
                "nullable": true
              },
              "agents-ceiling": {
                "type": "integer",
                "nullable": true
              },
              "contract-start-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "contract-user-limit": {
                "type": "integer",
                "nullable": true
              },
              "contract-apply-limit": {
                "type": "integer",
                "nullable": true
              },
              "contract-managed-resources-limit": {
                "type": "integer",
                "nullable": true
              },
              "hcp-organization-id": {
                "type": "string",
                "nullable": true
              },
              "hcp-project-id": {
                "type": "string",
                "nullable": true
              },
              "run-task-limit": {
                "type": "integer",
                "nullable": true
              },
              "run-task-workspace-limit": {
                "type": "integer",
                "nullable": true
              },
              "run-task-mandatory-enforcement-limit": {
                "type": "integer",
                "nullable": true
              },
              "versioned-policy-set-limit": {
                "type": "integer",
                "nullable": true
              },
              "policy-set-limit": {
                "type": "integer",
                "nullable": true
              },
              "policy-limit": {
                "type": "integer",
                "nullable": true
              },
              "policy-mandatory-enforcement-limit": {
                "type": "integer",
                "nullable": true
              },
              "is-public-free-tier": {
                "type": "boolean"
              },
              "is-self-serve-trial": {
                "type": "boolean"
              },
              "is-change-approved": {
                "type": "boolean"
              },
              "free-apply-monthly-limit-starts-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "free-apply-monthly-limit": {
                "type": "integer",
                "nullable": true
              },
              "free-apply-monthly-limit-remaining": {
                "type": "integer",
                "nullable": true
              },
              "free-resource-under-management-monthly-limit": {
                "type": "integer",
                "nullable": true
              },
              "rum-alert-threshold": {
                "type": "integer",
                "nullable": true,
                "description": "The custom RUM usage alert threshold for the organization. When the organization's billable resource count meets or exceeds this value, an alert email is sent to org owners. Set to null to disable alerting. Only available on paid RUM plans.\n"
              },
              "rum-threshold-alert-sent-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "Timestamp of the last time a RUM usage threshold alert was sent for the current rum-alert-threshold. Null when no alert has been sent for the current threshold.\n"
              }
            }
          },
          "relationships": {
            "type": "object",
            "required": [
              "organization",
              "feature-set"
            ],
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "feature-set": {
                "$ref": "#/components/schemas/feature-sets-has-one"
              },
              "next-subscription": {
                "$ref": "#/components/schemas/subscriptions-has-one"
              }
            }
          }
        }
      },
      "subscriptions-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/subscriptions"
          }
        }
      },
      "workspaces-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspaces"
            ]
          }
        }
      },
      "workspaces-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/workspaces-identifier"
            }
          }
        }
      },
      "projects-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "projects"
            ]
          }
        }
      },
      "projects-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/projects-identifier"
            }
          }
        }
      },
      "agent-pools": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "agent-pools"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "organization-scoped": {
                "type": "boolean"
              },
              "agent-count": {
                "type": "integer",
                "readOnly": true
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "agents": {
                "$ref": "#/components/schemas/links_related"
              },
              "authentication-tokens": {
                "$ref": "#/components/schemas/links_related"
              },
              "workspaces": {
                "$ref": "#/components/schemas/workspaces-has-many"
              },
              "allowed-workspaces": {
                "$ref": "#/components/schemas/workspaces-has-many"
              },
              "allowed-projects": {
                "$ref": "#/components/schemas/projects-has-many"
              },
              "excluded-workspaces": {
                "$ref": "#/components/schemas/workspaces-has-many"
              },
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              }
            }
          }
        }
      },
      "agent-pools-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/agent-pools"
          }
        }
      },
      "agents": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "agents"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "ip-address": {
                "type": "string",
                "nullable": true
              },
              "last-ping-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          }
        }
      },
      "agents-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/agents"
          }
        }
      },
      "agent-pools-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "agent-pools"
            ]
          }
        }
      },
      "agent-pools-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/agent-pools-identifier"
            }
          }
        }
      },
      "cidr-range-lists-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "cidr-range-lists"
            ]
          }
        }
      },
      "cidr-range-lists-has-one": {
        "type": "object",
        "nullable": true,
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/cidr-range-lists-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "cidr-ranges": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "cidr-ranges"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "range",
              "enabled"
            ],
            "properties": {
              "range": {
                "type": "string"
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "enabled": {
                "type": "boolean"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "cidr-range-list": {
                "$ref": "#/components/schemas/cidr-range-lists-has-one"
              }
            }
          }
        }
      },
      "cidr-ranges-envelope-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/cidr-ranges"
            }
          }
        }
      },
      "cidr-range-lists": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "cidr-range-lists"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string"
              },
              "enforcement-scope": {
                "type": "string",
                "enum": [
                  "organization",
                  "all_agent_pools",
                  "selected_agent_pools"
                ]
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "agent-pools": {
                "$ref": "#/components/schemas/agent-pools-has-many"
              },
              "cidr-ranges": {
                "$ref": "#/components/schemas/cidr-ranges-envelope-many"
              }
            }
          }
        }
      },
      "cidr-range-list-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/cidr-range-lists"
          }
        }
      },
      "cidr-ranges-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/cidr-ranges"
          }
        }
      },
      "agent-pool-ids": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "id",
                "type"
              ],
              "properties": {
                "id": {
                  "type": "string"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "agent-pools"
                  ]
                }
              }
            }
          }
        }
      },
      "metrics-token": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "metrics-tokens"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "The name of the token."
              },
              "token-id": {
                "type": "string",
                "readOnly": true,
                "description": "The ID of the token."
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "description": "The time when the token was created."
              },
              "expires-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "nullable": true,
                "description": "The time when the token expires."
              },
              "token": {
                "type": "string",
                "readOnly": true,
                "nullable": true,
                "description": "The secret text of the new authentication token. Only returned when the token is created."
              }
            }
          }
        }
      },
      "projects-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/projects-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "agent-pools-has-one": {
        "type": "object",
        "nullable": true,
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/agent-pools-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stack-configurations-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-configurations"
            ]
          }
        }
      },
      "stack-configurations-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stack-configurations-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stacks": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stacks"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "working-directory": {
                "type": "string",
                "maxLength": 100,
                "nullable": true
              },
              "deleteable": {
                "type": "boolean",
                "readOnly": true
              },
              "speculative-enabled": {
                "type": "boolean",
                "default": false
              },
              "upstream-count": {
                "type": "integer",
                "readOnly": true
              },
              "downstream-count": {
                "type": "integer",
                "readOnly": true
              },
              "inputs-count": {
                "type": "integer",
                "readOnly": true
              },
              "outputs-count": {
                "type": "integer",
                "readOnly": true
              },
              "execution-mode": {
                "type": "string",
                "enum": [
                  "remote",
                  "agent"
                ]
              },
              "setting-overwrites": {
                "type": "object",
                "properties": {
                  "execution-mode": {
                    "type": "boolean"
                  },
                  "agent-pool": {
                    "type": "boolean"
                  }
                }
              },
              "vcs-repo": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "branch": {
                    "type": "string",
                    "nullable": true
                  },
                  "tags-regex": {
                    "type": "string",
                    "nullable": true
                  },
                  "identifier": {
                    "type": "string"
                  },
                  "display-identifier": {
                    "type": "string"
                  },
                  "oauth-token-id": {
                    "type": "string",
                    "nullable": true
                  },
                  "repository-http-url": {
                    "type": "string",
                    "nullable": true
                  },
                  "service-provider": {
                    "type": "string",
                    "nullable": true
                  },
                  "trigger-disabled": {
                    "type": "boolean"
                  }
                }
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "latest-output-summary": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-configurations": {
                "$ref": "#/components/schemas/links_related"
              },
              "project": {
                "$ref": "#/components/schemas/projects-has-one"
              },
              "agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "latest-stack-configuration": {
                "$ref": "#/components/schemas/stack-configurations-has-one"
              }
            }
          }
        }
      },
      "stacks-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stacks"
          }
        }
      },
      "stack-configuration-summaries": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-configuration-summaries"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "preparing",
                  "completed",
                  "failed"
                ],
                "readOnly": true
              },
              "sequence-number": {
                "type": "integer",
                "readOnly": true
              },
              "stack-deployment-group-status-summary": {
                "type": "object",
                "description": "Contains a count of the number of deployment groups in each state.",
                "properties": {
                  "pending": {
                    "type": "integer"
                  },
                  "pre-deploying": {
                    "type": "integer"
                  },
                  "deploying": {
                    "type": "integer"
                  },
                  "succeeded": {
                    "type": "integer"
                  },
                  "failed": {
                    "type": "integer"
                  },
                  "abandoned": {
                    "type": "integer"
                  }
                }
              },
              "stack-deployment-run-status-summary": {
                "type": "object",
                "description": "Contains a count of the number of deployment runs in each state.",
                "properties": {
                  "pending": {
                    "type": "integer"
                  },
                  "pending-capacity": {
                    "type": "integer"
                  },
                  "pre-deploying": {
                    "type": "integer"
                  },
                  "pre-deploying-pending-operator": {
                    "type": "integer"
                  },
                  "acquiring-lock": {
                    "type": "integer"
                  },
                  "deploying": {
                    "type": "integer"
                  },
                  "deploying-pending-operator": {
                    "type": "integer"
                  },
                  "succeeded": {
                    "type": "integer"
                  },
                  "failed": {
                    "type": "integer"
                  },
                  "abandoned": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-configuration": {
                "$ref": "#/components/schemas/stack-configurations-has-one"
              }
            }
          }
        }
      },
      "stacks-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stacks"
            ]
          }
        }
      },
      "stacks-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stacks-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "ingress-attributes-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "ingress-attributes"
            ]
          }
        }
      },
      "ingress-attributes-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/ingress-attributes-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "stack-configuration-summaries-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-configuration-summaries"
            ]
          }
        }
      },
      "stack-configuration-summaries-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stack-configuration-summaries-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stack-aggregate-outputs-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-aggregate-outputs"
            ]
          }
        }
      },
      "stack-aggregate-outputs-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stack-aggregate-outputs-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stack-configurations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-configurations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "preparing",
                  "completed",
                  "failed"
                ],
                "readOnly": true
              },
              "sequence-number": {
                "type": "integer",
                "nullable": true,
                "readOnly": true
              },
              "speculative": {
                "type": "boolean",
                "nullable": false,
                "default": false,
                "description": "Specifies if this is a speculative configuration that HCP Terraform cannot converge past the plan step."
              },
              "destroy-all": {
                "type": "boolean",
                "nullable": false,
                "default": false,
                "description": "If true, the created configuration will behave as though every deployment in the configuration was declared with `destroy = true`."
              },
              "preparing-event-stream-url": {
                "type": "string",
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-deployment-groups": {
                "$ref": "#/components/schemas/links_related"
              },
              "stack-diagnostics": {
                "$ref": "#/components/schemas/links_related"
              },
              "stack-published-outputs": {
                "$ref": "#/components/schemas/links_related"
              },
              "stack": {
                "$ref": "#/components/schemas/stacks-has-one"
              },
              "ingress-attributes": {
                "$ref": "#/components/schemas/ingress-attributes-has-one"
              },
              "stack-configuration-summary": {
                "description": "Contains summed status counts for the deployment groups and deployment runs in this configuration.",
                "$ref": "#/components/schemas/stack-configuration-summaries-has-one"
              },
              "group-status-summaries": {
                "description": "Deprecated alias for stack-configuration-summary.",
                "$ref": "#/components/schemas/stack-configuration-summaries-has-one"
              },
              "stack-aggregate-outputs": {
                "$ref": "#/components/schemas/stack-aggregate-outputs-has-one"
              }
            }
          }
        }
      },
      "stack-configurations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-configurations"
          }
        }
      },
      "stack-deployments": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-deployments"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "stack-deployment-runs": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack": {
                "$ref": "#/components/schemas/stacks-has-one"
              }
            }
          }
        }
      },
      "stack-deployment-groups-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-deployment-groups"
            ]
          }
        }
      },
      "stack-deployment-groups-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stack-deployment-groups-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stack-approvals-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-approvals"
            ]
          }
        }
      },
      "stack-approvals-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stack-approvals-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stack-deployment-steps-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-deployment-steps"
            ]
          }
        }
      },
      "stack-deployment-steps-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stack-deployment-steps-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stack-deployment-runs-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-deployment-runs"
            ]
          }
        }
      },
      "stack-deployment-runs-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/stack-deployment-runs-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "stack-deployment-runs": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-deployment-runs"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "plan-mode": {
                "type": "string",
                "enum": [
                  "normal",
                  "destroy",
                  "import"
                ],
                "readOnly": true
              },
              "deployment": {
                "type": "string",
                "readOnly": true
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "pending-capacity",
                  "pre-deploying",
                  "pre-deploying-pending-operator",
                  "acquiring-lock",
                  "deploying",
                  "deploying-pending-operator",
                  "succeeded",
                  "failed",
                  "abandoned"
                ],
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "pre-deploying-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "pre-deploying-pending-operator-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "pending-capacity-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "acquiring-lock-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "deploying-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "deploying-pending-operator-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "succeeded-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "failed-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "abandoned-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-deployment-steps": {
                "$ref": "#/components/schemas/links_related"
              },
              "stack-deployment-group": {
                "$ref": "#/components/schemas/stack-deployment-groups-has-one"
              },
              "stack-configuration": {
                "$ref": "#/components/schemas/stack-configurations-has-one"
              },
              "destroy-stack-configuration": {
                "$ref": "#/components/schemas/stack-configurations-has-one"
              },
              "stack-approval": {
                "$ref": "#/components/schemas/stack-approvals-has-one"
              },
              "current-step": {
                "$ref": "#/components/schemas/stack-deployment-steps-has-one"
              },
              "blocked-by-deployment-group": {
                "$ref": "#/components/schemas/stack-deployment-groups-has-one"
              },
              "latest-deployment-run-for-deployment": {
                "$ref": "#/components/schemas/stack-deployment-runs-has-one"
              }
            }
          }
        }
      },
      "stack-states": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-states"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "deployment"
            ],
            "properties": {
              "generation": {
                "type": "integer",
                "nullable": true,
                "readOnly": true
              },
              "deployment": {
                "type": "string"
              },
              "status": {
                "type": "string",
                "readOnly": true,
                "enum": [
                  "created",
                  "stored",
                  "completed",
                  "discarded"
                ]
              },
              "components": {
                "type": "array",
                "nullable": true,
                "readOnly": true,
                "items": {
                  "type": "object",
                  "properties": {
                    "address": {
                      "type": "string"
                    },
                    "component-address": {
                      "type": "string"
                    },
                    "instance-correlator": {
                      "type": "string"
                    },
                    "component-correlator": {
                      "type": "string"
                    },
                    "resource-instance-count": {
                      "type": "integer"
                    }
                  }
                }
              },
              "is-current": {
                "type": "boolean",
                "readOnly": true
              },
              "resource-instance-count": {
                "type": "integer",
                "nullable": true,
                "readOnly": true
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "description": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack": {
                "$ref": "#/components/schemas/stacks-has-one"
              },
              "stack-deployment-run": {
                "$ref": "#/components/schemas/stack-deployment-runs-has-one"
              }
            }
          }
        }
      },
      "stack-output-consumers": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-output-consumers"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "deployment": {
                "type": "string",
                "readOnly": true
              },
              "upstream-publish-output-address": {
                "type": "string",
                "readOnly": true
              },
              "stack-name": {
                "type": "string",
                "readOnly": true
              },
              "upstream-name": {
                "type": "string",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack": {
                "$ref": "#/components/schemas/stacks-has-one"
              },
              "upstream-stack": {
                "$ref": "#/components/schemas/stacks-has-one"
              }
            }
          }
        }
      },
      "stack-states-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-states"
          }
        }
      },
      "stack-deployment-group-summaries": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-deployment-group-summaries"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "pre-deploying",
                  "deploying",
                  "abandoned",
                  "succeeded",
                  "failed"
                ],
                "readOnly": true
              },
              "stack-deployment-run-status-summary": {
                "type": "object",
                "description": "Contains a count of the number of deployment runs in each state.",
                "properties": {
                  "pending": {
                    "type": "integer"
                  },
                  "pending-capacity": {
                    "type": "integer"
                  },
                  "pre-deploying": {
                    "type": "integer"
                  },
                  "pre-deploying-pending-operator": {
                    "type": "integer"
                  },
                  "acquiring-lock": {
                    "type": "integer"
                  },
                  "deploying": {
                    "type": "integer"
                  },
                  "deploying-pending-operator": {
                    "type": "integer"
                  },
                  "succeeded": {
                    "type": "integer"
                  },
                  "failed": {
                    "type": "integer"
                  },
                  "abandoned": {
                    "type": "integer"
                  }
                }
              },
              "status-counts": {
                "type": "object",
                "description": "Deprecated alias for stack-deployment-run-status-summary.",
                "properties": {
                  "pending": {
                    "type": "integer"
                  },
                  "pending-capacity": {
                    "type": "integer"
                  },
                  "pre-deploying": {
                    "type": "integer"
                  },
                  "pre-deploying-pending-operator": {
                    "type": "integer"
                  },
                  "acquiring-lock": {
                    "type": "integer"
                  },
                  "deploying": {
                    "type": "integer"
                  },
                  "deploying-pending-operator": {
                    "type": "integer"
                  },
                  "succeeded": {
                    "type": "integer"
                  },
                  "failed": {
                    "type": "integer"
                  },
                  "abandoned": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-deployment-group": {
                "$ref": "#/components/schemas/stack-deployment-groups-has-one"
              }
            }
          }
        }
      },
      "stack-diagnostics": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-diagnostics"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "severity": {
                "type": "string",
                "enum": [
                  "warning",
                  "error"
                ],
                "readOnly": true
              },
              "summary": {
                "type": "string",
                "readOnly": true
              },
              "detail": {
                "type": "string",
                "readOnly": true
              },
              "diags": {
                "type": "array",
                "readOnly": true,
                "nullable": true
              },
              "acknowledged": {
                "type": "boolean",
                "readOnly": true
              },
              "acknowledged-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "nullable": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-configuration": {
                "$ref": "#/components/schemas/stack-configurations-has-one"
              },
              "stack-deployment-step": {
                "$ref": "#/components/schemas/stack-deployment-steps-has-one"
              }
            }
          }
        }
      },
      "stack-published-outputs": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-published-outputs"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "readOnly": true
              },
              "action": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "current-value": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "previous-value": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "source-range": {
                "type": "string",
                "readOnly": true
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-aggregate-output": {
                "$ref": "#/components/schemas/stack-aggregate-outputs-has-one"
              },
              "stack-configuration": {
                "$ref": "#/components/schemas/stack-configurations-has-one"
              }
            }
          }
        }
      },
      "stack-approvals-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/stack-approvals-identifier"
            }
          }
        }
      },
      "stack-deployment-group-summaries-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-deployment-group-summaries"
            ]
          }
        }
      },
      "stack-deployment-group-summaries-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-deployment-group-summaries-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "stack-deployment-groups": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-deployment-groups"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "pre-deploying",
                  "deploying",
                  "succeeded",
                  "failed",
                  "abandoned"
                ],
                "readOnly": true
              },
              "deployment-group-config": {
                "type": "object",
                "readOnly": true,
                "properties": {
                  "auto-approve-checks": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "eager-plan": {
                    "type": "string",
                    "readOnly": true
                  },
                  "failure-tolerance": {
                    "type": "integer",
                    "nullable": true,
                    "readOnly": true
                  },
                  "custom": {
                    "type": "boolean",
                    "nullable": true,
                    "readOnly": true
                  }
                }
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "pre-deploying-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "deploying-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "succeeded-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "failed-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "abandoned-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "stack-deployment-group-summaries": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-configuration": {
                "$ref": "#/components/schemas/stack-configurations-has-one"
              },
              "stack-approvals": {
                "$ref": "#/components/schemas/stack-approvals-has-many"
              },
              "stack-deployment-runs": {
                "$ref": "#/components/schemas/links_related"
              },
              "stack-deployment-group-summary": {
                "description": "Contains summed status counts for the the deployment runs in this group.",
                "$ref": "#/components/schemas/stack-deployment-group-summaries-has-one"
              },
              "run-status-summaries": {
                "description": "Deprecated alias for stack-deployment-group-summary.",
                "$ref": "#/components/schemas/stack-deployment-group-summaries-has-one"
              }
            }
          }
        }
      },
      "stack-deployment-groups-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-deployment-groups"
          }
        }
      },
      "action-reason": {
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "nullable": true,
            "description": "An optional reason for locking the workspace."
          }
        }
      },
      "stack-deployment-runs-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-deployment-runs"
          }
        }
      },
      "stack-states-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-states"
            ]
          }
        }
      },
      "stack-states-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-states-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "stack-deployment-steps": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-deployment-steps"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "operation-type": {
                "type": "string",
                "enum": [
                  "plan",
                  "apply",
                  "allow-import",
                  "import-state"
                ],
                "readOnly": true
              },
              "requires-state-lock": {
                "type": "boolean",
                "readOnly": true
              },
              "status": {
                "type": "string",
                "enum": [
                  "blocked",
                  "abandoned",
                  "queued",
                  "running",
                  "pending-operator",
                  "completed",
                  "failed"
                ],
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "abandoned-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "queued-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "running-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "pending-operator-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "completed-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "failed-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "plan-description": {
                "type": "string"
              },
              "apply-description": {
                "type": "string"
              },
              "structured-log": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "stack-diagnostics": {
                "type": "object",
                "properties": {
                  "links": {
                    "type": "object",
                    "properties": {
                      "related": {
                        "type": "string"
                      }
                    }
                  },
                  "meta": {
                    "type": "object",
                    "properties": {
                      "count": {
                        "type": "integer"
                      }
                    }
                  }
                }
              },
              "stack-state": {
                "$ref": "#/components/schemas/stack-states-has-one"
              },
              "stack-deployment-run": {
                "$ref": "#/components/schemas/stack-deployment-runs-has-one"
              },
              "stack-approval": {
                "$ref": "#/components/schemas/stack-approvals-has-one"
              }
            }
          }
        }
      },
      "stack-deployment-steps-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-deployment-steps"
          }
        }
      },
      "approved-by-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "users",
              "teams",
              "organizations"
            ]
          }
        }
      },
      "approved-by-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/approved-by-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "approval-on-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "stack-deployment-steps",
              "stack-deployment-runs",
              "stack-deployment-groups"
            ]
          }
        }
      },
      "approval-on-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/approval-on-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "stack-approvals": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true,
            "enum": [
              "stack-approvals"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "reason": {
                "type": "string"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "approved-by": {
                "$ref": "#/components/schemas/approved-by-has-one"
              },
              "approval-on": {
                "$ref": "#/components/schemas/approval-on-has-one"
              }
            }
          }
        }
      },
      "stack-approvals-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/stack-approvals"
          }
        }
      },
      "data-retention-policy-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "data-retention-policy-delete-olders",
              "data-retention-policy-dont-deletes"
            ]
          }
        }
      },
      "data-retention-policy-has-one": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/data-retention-policy-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "entitlement-sets-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "entitlement-sets"
            ]
          }
        }
      },
      "entitlement-sets-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/entitlement-sets-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "hyok-configurations-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "hyok-configurations"
            ]
          }
        }
      },
      "hyok-configurations-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/hyok-configurations-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "organizations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "organizations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "external-id": {
                "type": "string",
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "email": {
                "type": "string"
              },
              "session-timeout": {
                "type": "integer",
                "nullable": true
              },
              "session-remember": {
                "type": "integer",
                "nullable": true
              },
              "collaborator-auth-policy": {
                "type": "string",
                "enum": [
                  "password",
                  "two_factor_mandatory"
                ]
              },
              "plan-expired": {
                "type": "boolean",
                "readOnly": true
              },
              "plan-expires-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "plan-is-trial": {
                "type": "boolean",
                "readOnly": true
              },
              "plan-is-enterprise": {
                "type": "boolean",
                "readOnly": true
              },
              "plan-identifier": {
                "type": "string",
                "readOnly": true
              },
              "cost-estimation-enabled": {
                "type": "boolean"
              },
              "send-passing-statuses-for-untriggered-speculative-plans": {
                "type": "boolean"
              },
              "aggregated-commit-status-enabled": {
                "type": "boolean"
              },
              "speculative-plan-management-enabled": {
                "type": "boolean"
              },
              "allow-force-delete-workspaces": {
                "type": "boolean"
              },
              "name": {
                "type": "string"
              },
              "hcp-id": {
                "type": "string",
                "readOnly": true,
                "x-vis": [
                  "hcpt"
                ],
                "description": "This attribute is only available in HCP Terraform."
              },
              "is-unified": {
                "type": "boolean",
                "readOnly": true,
                "x-vis": [
                  "hcpt"
                ],
                "description": "This attribute is only available in HCP Terraform."
              },
              "permissions": {
                "type": "object",
                "properties": {
                  "can-update": {
                    "type": "boolean"
                  },
                  "can-update-authentication-token": {
                    "type": "boolean"
                  },
                  "can-view-authentication": {
                    "type": "boolean"
                  },
                  "can-destroy": {
                    "type": "boolean"
                  },
                  "can-access-via-teams": {
                    "type": "boolean"
                  },
                  "can-create-module": {
                    "type": "boolean"
                  },
                  "can-create-team": {
                    "type": "boolean"
                  },
                  "can-create-workspace": {
                    "type": "boolean"
                  },
                  "can-manage-users": {
                    "type": "boolean"
                  },
                  "can-view-users": {
                    "type": "boolean"
                  },
                  "can-manage-subscription": {
                    "type": "boolean"
                  },
                  "can-manage-sso": {
                    "type": "boolean"
                  },
                  "can-update-oauth": {
                    "type": "boolean"
                  },
                  "can-update-sentinel": {
                    "type": "boolean"
                  },
                  "can-update-ssh-keys": {
                    "type": "boolean"
                  },
                  "can-update-api-token": {
                    "type": "boolean"
                  },
                  "can-traverse": {
                    "type": "boolean"
                  },
                  "can-view-usage": {
                    "type": "boolean"
                  },
                  "can-update-agent-pools": {
                    "type": "boolean"
                  },
                  "can-manage-tags": {
                    "type": "boolean"
                  },
                  "can-manage-varsets": {
                    "type": "boolean"
                  },
                  "can-read-varsets": {
                    "type": "boolean"
                  },
                  "can-manage-public-providers": {
                    "type": "boolean"
                  },
                  "can-create-provider": {
                    "type": "boolean"
                  },
                  "can-manage-public-modules": {
                    "type": "boolean"
                  },
                  "can-manage-custom-providers": {
                    "type": "boolean"
                  },
                  "can-manage-run-tasks": {
                    "type": "boolean"
                  },
                  "can-read-run-tasks": {
                    "type": "boolean"
                  },
                  "can-create-project": {
                    "type": "boolean"
                  },
                  "can-enable-stacks": {
                    "type": "boolean"
                  },
                  "can-manage-org-public-providers": {
                    "type": "boolean"
                  },
                  "can-manage-org-public-modules": {
                    "type": "boolean"
                  },
                  "can-manage-assessments": {
                    "type": "boolean"
                  },
                  "can-read-assessments": {
                    "type": "boolean"
                  },
                  "can-view-explorer": {
                    "type": "boolean"
                  },
                  "can-deploy-no-code-modules": {
                    "type": "boolean"
                  },
                  "can-manage-no-code-modules": {
                    "type": "boolean"
                  },
                  "can-manage-groups-in-hcp": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  },
                  "can-create-project-in-hcp": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  },
                  "can-update-hyok-configuration": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  },
                  "can-manage-recoverable-items": {
                    "type": "boolean",
                    "x-vis": [
                      "public-beta"
                    ],
                    "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
                  },
                  "can-read-policies": {
                    "type": "boolean",
                    "x-vis": [
                      "tfe"
                    ],
                    "description": "This attribute is only available in Terraform Enterprise."
                  }
                }
              },
              "fair-run-queuing-enabled": {
                "type": "boolean",
                "readOnly": true
              },
              "saml-enabled": {
                "type": "boolean"
              },
              "owners-team-saml-role-id": {
                "type": "string",
                "nullable": true
              },
              "two-factor-conformant": {
                "type": "boolean"
              },
              "assessments-enforced": {
                "type": "boolean"
              },
              "is-in-degraded-mode": {
                "type": "boolean",
                "readOnly": true
              },
              "global-module-sharing": {
                "type": "boolean",
                "x-vis": [
                  "tfe"
                ],
                "description": "This attribute is only available in Terraform Enterprise."
              },
              "global-provider-sharing": {
                "type": "boolean",
                "x-vis": [
                  "tfe"
                ],
                "description": "This attribute is only available in Terraform Enterprise."
              },
              "parent-data-retention-policy-info": {
                "type": "string",
                "readOnly": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "This attribute is only available in Terraform Enterprise."
              },
              "module-consuming-organizations-count": {
                "type": "integer",
                "readOnly": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "This attribute is only available in Terraform Enterprise."
              },
              "provider-consuming-organizations-count": {
                "type": "integer",
                "readOnly": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "This attribute is only available in Terraform Enterprise."
              },
              "remaining-testable-count": {
                "type": "integer",
                "readOnly": true
              },
              "stacks-enabled": {
                "type": "boolean",
                "x-vis": [
                  "public-beta"
                ],
                "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
              },
              "recoverable-items-enabled": {
                "type": "boolean",
                "x-vis": [
                  "public-beta"
                ],
                "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
              },
              "over-stacks-resource-limit": {
                "type": "boolean",
                "readOnly": true,
                "x-vis": [
                  "public-beta"
                ],
                "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
              },
              "default-execution-mode": {
                "type": "string",
                "enum": [
                  "remote",
                  "local",
                  "agent"
                ]
              },
              "stacks-default-execution-mode": {
                "type": "string",
                "enum": [
                  "remote",
                  "agent"
                ]
              },
              "test-generation-enabled": {
                "type": "boolean",
                "readOnly": true,
                "x-vis": [
                  "public-beta"
                ],
                "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "default-agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "stacks-default-agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "data-retention-policy": {
                "$ref": "#/components/schemas/data-retention-policy-has-one",
                "x-vis": [
                  "tfe"
                ],
                "description": "This relationship is only available in Terraform Enterprise."
              },
              "module-producers": {
                "x-vis": [
                  "tfe"
                ],
                "$ref": "#/components/schemas/links_related",
                "description": "This relationship is only available in Terraform Enterprise."
              },
              "provider-producers": {
                "x-vis": [
                  "tfe"
                ],
                "$ref": "#/components/schemas/links_related",
                "description": "This relationship is only available in Terraform Enterprise."
              },
              "oauth-tokens": {
                "$ref": "#/components/schemas/links_related"
              },
              "authentication-token": {
                "$ref": "#/components/schemas/links_related"
              },
              "audit-trails-authentication-token": {
                "$ref": "#/components/schemas/links_related",
                "x-vis": [
                  "hcpt"
                ],
                "description": "This relationship is only available in HCP Terraform."
              },
              "entitlement-set": {
                "$ref": "#/components/schemas/entitlement-sets-has-one"
              },
              "subscription": {
                "$ref": "#/components/schemas/subscriptions-has-one"
              },
              "default-project": {
                "$ref": "#/components/schemas/projects-has-one"
              },
              "primary-hyok-configuration": {
                "x-vis": [
                  "hcpt"
                ],
                "$ref": "#/components/schemas/hyok-configurations-has-one",
                "description": "This relationship is only available in HCP Terraform."
              }
            }
          }
        }
      },
      "organizations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/organizations"
          }
        }
      },
      "projects": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "projects"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "auto-destroy-activity-duration": {
                "type": "string",
                "nullable": true
              },
              "default-execution-mode": {
                "type": "string",
                "enum": [
                  "remote",
                  "local",
                  "agent"
                ]
              },
              "stacks-default-execution-mode": {
                "type": "string",
                "enum": [
                  "remote",
                  "agent"
                ]
              },
              "setting-overwrites": {
                "type": "object",
                "properties": {
                  "default-execution-mode": {
                    "type": "boolean"
                  },
                  "default-agent-pool": {
                    "type": "boolean"
                  },
                  "stacks-default-execution-mode": {
                    "type": "boolean"
                  },
                  "stacks-default-agent-pool": {
                    "type": "boolean"
                  }
                }
              },
              "permissions": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "can-read": {
                    "type": "boolean"
                  },
                  "can-update": {
                    "type": "boolean"
                  },
                  "can-destroy": {
                    "type": "boolean"
                  },
                  "can-create-workspace": {
                    "type": "boolean"
                  },
                  "can-move-workspace": {
                    "type": "boolean"
                  },
                  "can-move-stack": {
                    "type": "boolean"
                  },
                  "can-manage-stacks": {
                    "type": "boolean"
                  },
                  "can-view-stacks": {
                    "type": "boolean"
                  },
                  "can-update-stacks": {
                    "type": "boolean"
                  },
                  "can-deploy-no-code-modules": {
                    "type": "boolean"
                  },
                  "can-read-teams": {
                    "type": "boolean"
                  },
                  "can-manage-tags": {
                    "type": "boolean"
                  },
                  "can-manage-teams": {
                    "type": "boolean"
                  },
                  "can-manage-in-hcp": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  },
                  "can-manage-varsets": {
                    "type": "boolean"
                  },
                  "can-manage-ephemeral-workspace-for-projects": {
                    "type": "boolean"
                  }
                }
              },
              "workspace-count": {
                "type": "integer",
                "nullable": true
              },
              "team-count": {
                "type": "integer",
                "nullable": true
              },
              "hcp-id": {
                "type": "string",
                "nullable": true,
                "x-vis": [
                  "hcpt"
                ],
                "description": "This attribute is only available in HCP Terraform."
              },
              "is-unified": {
                "type": "boolean",
                "nullable": true,
                "x-vis": [
                  "hcpt"
                ],
                "description": "This attribute is only available in HCP Terraform."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "tag-bindings": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "links": {
                    "type": "object",
                    "properties": {
                      "related": {
                        "type": "string"
                      }
                    }
                  }
                }
              },
              "default-agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "stacks-default-agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          }
        }
      },
      "entitlement-sets": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "entitlement-sets"
            ]
          },
          "attributes": {
            "type": "object"
          },
          "links": {
            "type": "object"
          }
        }
      },
      "cidr-range-list-with-ranges-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/cidr-range-lists"
          }
        }
      },
      "teams-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "teams"
            ]
          }
        }
      },
      "teams-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/teams-identifier"
            }
          }
        }
      },
      "users-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "nullable": true,
            "properties": {
              "id": {
                "type": "string"
              },
              "type": {
                "type": "string",
                "enum": [
                  "users"
                ]
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "scim-identities-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "scim-identities"
            ]
          }
        }
      },
      "scim-identities-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/scim-identities-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "status-counts": {
        "type": "object",
        "properties": {
          "total": {
            "type": "integer"
          },
          "active": {
            "type": "integer"
          },
          "invited": {
            "type": "integer"
          }
        }
      },
      "organization-memberships": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "The organization membership ID"
          },
          "type": {
            "type": "string",
            "enum": [
              "organization-memberships"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "active",
                  "invited",
                  "inactive"
                ],
                "readOnly": true,
                "description": "The status of the organization membership. Can be \"active\", \"invited\", or \"inactive\"."
              },
              "email": {
                "type": "string",
                "format": "email",
                "description": "The email address of the user."
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "description": "The timestamp when the organization membership was created."
              },
              "is-org-two-factor-required": {
                "type": "boolean",
                "nullable": true,
                "readOnly": true,
                "description": "Whether two-factor authentication is required for the organization. Only present for invited users."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "teams": {
                "description": "The teams this user is a member of. Only shows teams the requesting user has access to, and teams that are not \"secret\" (unless the requester is a member).",
                "$ref": "#/components/schemas/teams-has-many"
              },
              "user": {
                "description": "The user associated with this organization membership.",
                "$ref": "#/components/schemas/users-has-one"
              },
              "organization": {
                "description": "The organization this membership belongs to.",
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "scim-identity": {
                "description": "The SCIM identity associated with this organization membership.\nOnly available on HCP Terraform when SCIM is enabled.\nReturns null if the user has no SCIM identity for this organization.\n",
                "$ref": "#/components/schemas/scim-identities-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self-with-pagination"
          },
          "meta": {
            "type": "object",
            "properties": {
              "status-counts": {
                "$ref": "#/components/schemas/status-counts"
              },
              "pagination": {
                "$ref": "#/components/schemas/pagination"
              }
            }
          }
        }
      },
      "users-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "users"
            ]
          }
        }
      },
      "users-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/users-identifier"
            }
          }
        }
      },
      "organization-memberships-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "organization-memberships"
            ]
          }
        }
      },
      "organization-memberships-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/organization-memberships-identifier"
            }
          }
        }
      },
      "teams": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "teams"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "description": "The name of the team, which can only include letters, numbers, `-`, and `_`."
              },
              "users-count": {
                "type": "integer",
                "readOnly": true,
                "description": "The number of active users in the team."
              },
              "description": {
                "type": "string",
                "nullable": true,
                "description": "Team description. Only available when effective permissions are enabled for unified organizations."
              },
              "sso-team-id": {
                "type": "string",
                "nullable": true,
                "description": "The unique identifier of the team from the SAML MemberOf attribute."
              },
              "visibility": {
                "type": "string",
                "enum": [
                  "secret",
                  "organization"
                ],
                "description": "The team's visibility. Can be \"secret\" or \"organization\" (visible)."
              },
              "allow-member-token-management": {
                "type": "boolean",
                "description": "Whether team members are allowed to manage their own authentication tokens."
              },
              "scim-linked": {
                "type": "boolean",
                "readOnly": true,
                "description": "Whether this team is linked to a SCIM group. Only available when SCIM is enabled.\n\nThis attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
                "x-vis": [
                  "public-beta"
                ]
              },
              "scim-group-name": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "The display name of the linked SCIM group. Only available when SCIM is enabled.\n\nThis attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
                "x-vis": [
                  "public-beta"
                ]
              },
              "scim-updated-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true,
                "description": "The timestamp of the most recent SCIM sync update for this team. Only available when SCIM is enabled.\n\nThis attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
                "x-vis": [
                  "public-beta"
                ]
              },
              "scim-sync-paused": {
                "type": "boolean",
                "readOnly": true,
                "description": "Whether SCIM sync is paused for this team. Only available when SCIM is enabled.\n\nThis attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
                "x-vis": [
                  "public-beta"
                ]
              },
              "hcp-resource-name": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "The HCP resource name for unified teams.\n\nThis attribute is only available in HCP Terraform.",
                "x-vis": [
                  "hcpt"
                ]
              },
              "is-unified": {
                "type": "boolean",
                "readOnly": true,
                "description": "Whether this team is unified with HCP.\n\nThis attribute is only available in HCP Terraform.",
                "x-vis": [
                  "hcpt"
                ]
              },
              "non-service-users-count": {
                "type": "integer",
                "nullable": true,
                "readOnly": true,
                "description": "The number of non-service account users in the team."
              },
              "permissions": {
                "type": "object",
                "readOnly": true,
                "description": "Permissions for the current user on this team.",
                "properties": {
                  "can-update-membership": {
                    "type": "boolean"
                  },
                  "can-destroy": {
                    "type": "boolean"
                  },
                  "can-update-organization-access": {
                    "type": "boolean"
                  },
                  "can-update-api-token": {
                    "type": "boolean"
                  },
                  "can-update-visibility": {
                    "type": "boolean"
                  },
                  "can-update-name": {
                    "type": "boolean"
                  },
                  "can-update-sso-team-id": {
                    "type": "boolean"
                  },
                  "can-update-member-token-management": {
                    "type": "boolean"
                  },
                  "can-view-api-token": {
                    "type": "boolean"
                  }
                }
              },
              "organization-access": {
                "type": "object",
                "nullable": true,
                "description": "Settings for the team's organization-level permissions.",
                "properties": {
                  "manage-policies": {
                    "type": "boolean"
                  },
                  "manage-workspaces": {
                    "type": "boolean"
                  },
                  "manage-vcs-settings": {
                    "type": "boolean"
                  },
                  "manage-policy-overrides": {
                    "type": "boolean"
                  },
                  "delegate-policy-overrides": {
                    "type": "boolean"
                  },
                  "manage-modules": {
                    "type": "boolean"
                  },
                  "manage-providers": {
                    "type": "boolean"
                  },
                  "manage-run-tasks": {
                    "type": "boolean"
                  },
                  "manage-projects": {
                    "type": "boolean"
                  },
                  "manage-membership": {
                    "type": "boolean"
                  },
                  "manage-teams": {
                    "type": "boolean"
                  },
                  "manage-organization-access": {
                    "type": "boolean"
                  },
                  "access-secret-teams": {
                    "type": "boolean"
                  },
                  "read-projects": {
                    "type": "boolean"
                  },
                  "read-workspaces": {
                    "type": "boolean"
                  },
                  "manage-agent-pools": {
                    "type": "boolean"
                  },
                  "manage-public-providers": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  },
                  "manage-public-modules": {
                    "type": "boolean",
                    "x-vis": [
                      "hcpt"
                    ],
                    "description": "This attribute is only available in HCP Terraform."
                  },
                  "manage-registry-components": {
                    "type": "boolean",
                    "nullable": true
                  },
                  "manage-registry-artifact-tags": {
                    "type": "boolean",
                    "nullable": true
                  },
                  "manage-registry-artifact-version-tags": {
                    "type": "boolean",
                    "nullable": true
                  }
                }
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "users": {
                "description": "Team members (active users only).",
                "$ref": "#/components/schemas/users-has-many"
              },
              "organization-memberships": {
                "description": "Organization memberships for team members.",
                "$ref": "#/components/schemas/organization-memberships-has-many"
              },
              "authentication-token": {
                "$ref": "#/components/schemas/links_related"
              },
              "authentication-tokens": {
                "$ref": "#/components/schemas/links_related"
              }
            }
          }
        }
      },
      "scim-identities": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "The external ID of the SCIM identity"
          },
          "type": {
            "type": "string",
            "enum": [
              "scim-identities"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "provisioned",
                  "claimed"
                ],
                "readOnly": true,
                "description": "The provisioning status of the user.\n- \"provisioned\": User was created via SCIM provisioning\n- \"claimed\": User claimed their account or existed before SCIM\n"
              },
              "username": {
                "type": "string",
                "readOnly": true,
                "description": "The username/identity string from the SCIM provider."
              }
            }
          }
        }
      },
      "organization-memberships-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/organization-memberships"
          }
        }
      },
      "recoverable-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspaces",
              "stacks"
            ]
          }
        }
      },
      "recoverable-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/recoverable-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "recoverable-items": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes",
          "relationships"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "The ID of the recoverable item"
          },
          "type": {
            "type": "string",
            "enum": [
              "recoverable-items"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "recoverable-name",
              "deleted-at",
              "expires-at",
              "unmanaged-resources"
            ],
            "properties": {
              "recoverable-name": {
                "type": "string",
                "description": "The name of the recoverable resource"
              },
              "deleted-at": {
                "type": "string",
                "format": "date-time",
                "description": "The timestamp when the resource was deleted (soft-deleted)"
              },
              "expires-at": {
                "type": "string",
                "format": "date-time",
                "description": "The timestamp when the recoverable item will be permanently deleted"
              },
              "unmanaged-resources": {
                "type": "integer",
                "description": "The number of unmanaged resources (RUM) associated with the recoverable item"
              },
              "permanently-deleted-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "The timestamp when the resource was permanently deleted, if applicable"
              }
            }
          },
          "relationships": {
            "type": "object",
            "required": [
              "project",
              "recoverable"
            ],
            "properties": {
              "project": {
                "description": "The project this recoverable item belongs to",
                "$ref": "#/components/schemas/projects-has-one"
              },
              "recoverable": {
                "description": "The recoverable resource (can be a workspace or stack.)",
                "$ref": "#/components/schemas/recoverable-has-one"
              }
            }
          }
        }
      },
      "data-retention-target-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "organizations",
              "workspaces"
            ]
          }
        }
      },
      "data-retention-target-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/data-retention-target-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "data-retention-policy": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "data-retention-policy-delete-olders",
              "data-retention-policy-dont-deletes"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "deleteOlderThanNDays": {
                "type": "integer"
              },
              "deleteStateVersions": {
                "type": "boolean"
              },
              "deleteConfigurationVersions": {
                "type": "boolean"
              },
              "deleteRunDataAndLogs": {
                "type": "boolean"
              },
              "stateVersionsDeleteAfterNDays": {
                "type": "integer",
                "nullable": true
              },
              "configurationVersionsDeleteAfterNDays": {
                "type": "integer",
                "nullable": true
              },
              "runDataAndLogsDeleteAfterNDays": {
                "type": "integer",
                "nullable": true
              },
              "stateVersionsKeepLatestCount": {
                "type": "integer",
                "nullable": true
              },
              "configurationVersionsKeepLatestCount": {
                "type": "integer",
                "nullable": true
              },
              "runDataKeepLatestCount": {
                "type": "integer",
                "nullable": true
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "target": {
                "$ref": "#/components/schemas/data-retention-target-has-one"
              }
            }
          }
        }
      },
      "data-retention-policy-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/data-retention-policy"
          }
        }
      },
      "projects-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/projects"
          }
        }
      },
      "token-ttl-policy": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "The token TTL policy ID"
          },
          "type": {
            "type": "string",
            "enum": [
              "organization-token-ttl-policies"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "token-type": {
                "type": "string",
                "description": "The type of the token TTL policy",
                "enum": [
                  "organization",
                  "team",
                  "user",
                  "audit_trails",
                  "metrics"
                ],
                "example": "organization"
              },
              "max-ttl-ms": {
                "type": "integer",
                "format": "int64",
                "description": "The maximum time-to-live for the token in milliseconds",
                "example": 3600000
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "description": "When the policy was created"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "description": "When the policy was last updated"
              }
            },
            "required": [
              "token-type",
              "max-ttl-ms"
            ]
          }
        }
      },
      "token-ttl-policy-entry": {
        "type": "object",
        "required": [
          "token-type",
          "max-ttl-ms"
        ],
        "properties": {
          "token-type": {
            "type": "string",
            "description": "The type of the token TTL policy",
            "enum": [
              "organization",
              "team",
              "user",
              "audit_trails",
              "metrics"
            ],
            "example": "organization"
          },
          "max-ttl-ms": {
            "type": "integer",
            "format": "int64",
            "description": "The maximum time-to-live for the token in milliseconds",
            "example": 3600000
          }
        }
      },
      "token-ttl-policies": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "organization-token-ttl-policies"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "token-ttl-policies": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/token-ttl-policy-entry"
                }
              }
            }
          }
        }
      },
      "token-ttl-policies-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/token-ttl-policies"
          }
        }
      },
      "workspaces-identifier-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type",
                "id"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "workspaces"
                  ]
                },
                "id": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "tag-bindings": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "example": "tb-7AHdkTVXrmxiB8vQ"
          },
          "type": {
            "type": "string",
            "enum": [
              "tag-bindings"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "key"
            ],
            "properties": {
              "created-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "key": {
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            }
          }
        }
      },
      "tag-bindings-collection": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/tag-bindings"
            }
          }
        }
      },
      "inherited-from-has-one": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "object",
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/projects-identifier"
              }
            ],
            "discriminator": {
              "propertyName": "type",
              "mapping": {
                "projects": "#/components/schemas/projects-identifier"
              }
            }
          }
        }
      },
      "effective-tag-bindings": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "example": "3JAnx3G4puQcjHu3"
          },
          "type": {
            "type": "string",
            "enum": [
              "effective-tag-bindings"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "key"
            ],
            "properties": {
              "key": {
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "description": "Optional relationship indicating the project this binding was inherited from, if applicable.",
            "properties": {
              "inherited-from": {
                "$ref": "#/components/schemas/inherited-from-has-one"
              }
            }
          }
        }
      },
      "effective-tag-bindings-envelope-many": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/effective-tag-bindings"
            }
          }
        }
      },
      "ssh-keys-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "ssh-keys"
            ]
          }
        }
      },
      "ssh-keys-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/ssh-keys-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "locked-by-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "users",
              "teams",
              "runs"
            ]
          }
        }
      },
      "locked-by-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/locked-by-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "runs-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "runs"
            ]
          }
        }
      },
      "runs-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/runs-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "workspace-outputs-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-outputs"
            ]
          }
        }
      },
      "workspace-outputs-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/workspace-outputs-identifier"
            }
          }
        }
      },
      "state-versions-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "state-versions"
            ]
          }
        }
      },
      "state-versions-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/state-versions-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "configuration-versions-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "configuration-versions"
            ]
          }
        }
      },
      "configuration-versions-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/configuration-versions-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "workspace-readme-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-readme"
            ]
          }
        }
      },
      "workspace-readme-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/workspace-readme-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "assessment-results-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "assessment-results"
            ]
          }
        }
      },
      "assessment-results-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/assessment-results-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "no-code-module-versions-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "no-code-module-versions"
            ]
          }
        }
      },
      "no-code-module-versions-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/no-code-module-versions-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "vars-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "vars"
            ]
          }
        }
      },
      "vars-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/vars-identifier"
            }
          }
        }
      },
      "tags-has-many": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "tags"
                  ]
                },
                "id": {
                  "type": "string"
                },
                "attributes": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "workspace-links": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string"
          },
          "self-html": {
            "type": "string"
          }
        }
      },
      "workspaces": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "workspaces"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "allow-destroy-plan": {
                "type": "boolean"
              },
              "auto-apply": {
                "type": "boolean"
              },
              "auto-apply-run-trigger": {
                "type": "boolean"
              },
              "auto-destroy-activity-duration": {
                "type": "string",
                "nullable": true
              },
              "auto-destroy-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "auto-destroy-status": {
                "type": "string",
                "nullable": true
              },
              "inherits-project-auto-destroy": {
                "type": "boolean"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "environment": {
                "type": "string"
              },
              "locked": {
                "type": "boolean"
              },
              "name": {
                "type": "string"
              },
              "queue-all-runs": {
                "type": "boolean"
              },
              "speculative-enabled": {
                "type": "boolean"
              },
              "structured-run-output-enabled": {
                "type": "boolean"
              },
              "terraform-version": {
                "type": "string"
              },
              "working-directory": {
                "type": "string",
                "nullable": true
              },
              "global-remote-state": {
                "type": "boolean"
              },
              "project-remote-state": {
                "type": "boolean"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "resource-count": {
                "type": "integer"
              },
              "apply-duration-average": {
                "type": "integer",
                "nullable": true
              },
              "plan-duration-average": {
                "type": "integer",
                "nullable": true
              },
              "policy-check-failures": {
                "type": "integer",
                "nullable": true
              },
              "run-failures": {
                "type": "integer",
                "nullable": true
              },
              "workspace-kpis-runs-count": {
                "type": "integer",
                "nullable": true
              },
              "latest-change-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "operations": {
                "type": "boolean",
                "description": "Deprecated. Use execution-mode instead."
              },
              "execution-mode": {
                "type": "string",
                "enum": [
                  "remote",
                  "local",
                  "agent"
                ]
              },
              "setting-overwrites": {
                "type": "object",
                "properties": {
                  "execution-mode": {
                    "type": "boolean"
                  },
                  "agent-pool": {
                    "type": "boolean"
                  }
                }
              },
              "vcs-repo": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "identifier": {
                    "type": "string"
                  },
                  "display-identifier": {
                    "type": "string",
                    "nullable": true
                  },
                  "branch": {
                    "type": "string",
                    "nullable": true
                  },
                  "ingress-submodules": {
                    "type": "boolean"
                  },
                  "oauth-token-id": {
                    "type": "string",
                    "nullable": true
                  },
                  "github-app-installation-id": {
                    "type": "string",
                    "nullable": true
                  },
                  "tags-regex": {
                    "type": "string",
                    "nullable": true
                  }
                }
              },
              "vcs-repo-identifier": {
                "type": "string",
                "nullable": true
              },
              "permissions": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "can-update": {
                    "type": "boolean"
                  },
                  "can-destroy": {
                    "type": "boolean"
                  },
                  "can-queue-run": {
                    "type": "boolean"
                  },
                  "can-read-run": {
                    "type": "boolean"
                  },
                  "can-read-variable": {
                    "type": "boolean"
                  },
                  "can-update-variable": {
                    "type": "boolean"
                  },
                  "can-read-state-versions": {
                    "type": "boolean"
                  },
                  "can-read-state-outputs": {
                    "type": "boolean"
                  },
                  "can-create-state-versions": {
                    "type": "boolean"
                  },
                  "can-queue-apply": {
                    "type": "boolean"
                  },
                  "can-lock": {
                    "type": "boolean"
                  },
                  "can-unlock": {
                    "type": "boolean"
                  },
                  "can-force-unlock": {
                    "type": "boolean"
                  },
                  "can-read-settings": {
                    "type": "boolean"
                  },
                  "can-manage-tags": {
                    "type": "boolean"
                  },
                  "can-manage-run-tasks": {
                    "type": "boolean"
                  },
                  "can-force-delete": {
                    "type": "boolean"
                  },
                  "can-manage-assessments": {
                    "type": "boolean"
                  },
                  "can-manage-ephemeral-workspaces": {
                    "type": "boolean"
                  },
                  "can-read-assessment-results": {
                    "type": "boolean"
                  },
                  "can-queue-destroy": {
                    "type": "boolean"
                  }
                }
              },
              "actions": {
                "type": "object",
                "properties": {
                  "is-destroyable": {
                    "type": "boolean"
                  }
                }
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "file-triggers-enabled": {
                "type": "boolean"
              },
              "trigger-prefixes": {
                "type": "array",
                "nullable": true,
                "items": {
                  "type": "string"
                }
              },
              "trigger-patterns": {
                "type": "array",
                "nullable": true,
                "items": {
                  "type": "string"
                }
              },
              "assessments-enabled": {
                "type": "boolean"
              },
              "last-assessment-result-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true
              },
              "locked-reason": {
                "type": "string",
                "nullable": true
              },
              "source": {
                "type": "string",
                "nullable": true
              },
              "source-name": {
                "type": "string",
                "nullable": true
              },
              "source-url": {
                "type": "string",
                "nullable": true
              },
              "source-module-id": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "Identifier of the no-code module and version this workspace was created from\n(for example, private/<org>/<name>/<provider>/<version>). Present only for\nno-code workspaces; omitted otherwise. Prefer the no-code-module-version\nrelationship for a typed link to the current no-code module version.\n"
              },
              "no-code-upgrade-available": {
                "type": "boolean",
                "nullable": true,
                "readOnly": true,
                "description": "Whether a newer no-code module version is available for this workspace.\nPresent only for no-code workspaces; omitted otherwise.\n"
              },
              "tag-names": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "effective-state-version-retention-desc": {
                "type": "string",
                "nullable": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "A human-readable description of the effective state-version\nretention window for this workspace. Returns null when no state-version retention policy is in effect for the\nworkspace, or when the policy does not delete state versions.\n\n\nThis attribute is only available in Terraform Enterprise."
              },
              "effective-run-data-retention-desc": {
                "type": "string",
                "nullable": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "A human-readable description of the effective run data and logs\nretention window for this workspace. Returns null when no run data retention policy is in effect for the\nworkspace, or when the policy does not delete run data and logs.\n\n\nThis attribute is only available in Terraform Enterprise."
              },
              "hyok-enabled": {
                "type": "boolean",
                "x-vis": [
                  "hcpt"
                ],
                "description": "HCP Terraform Premium Tier only. Enabled Hold Your Own Key for the workspace. Once this has been set to true,\nit can no longer be disabled.\n\n\nThis attribute is only available in HCP Terraform."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "ssh-key": {
                "$ref": "#/components/schemas/ssh-keys-has-one"
              },
              "locked-by": {
                "$ref": "#/components/schemas/locked-by-has-one"
              },
              "current-run": {
                "$ref": "#/components/schemas/runs-has-one"
              },
              "latest-run": {
                "$ref": "#/components/schemas/runs-has-one"
              },
              "outputs": {
                "$ref": "#/components/schemas/workspace-outputs-has-many"
              },
              "remote-state-consumers": {
                "type": "object",
                "properties": {
                  "links": {
                    "$ref": "#/components/schemas/related"
                  }
                }
              },
              "current-state-version": {
                "$ref": "#/components/schemas/state-versions-has-one"
              },
              "current-configuration-version": {
                "$ref": "#/components/schemas/configuration-versions-has-one"
              },
              "agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "readme": {
                "$ref": "#/components/schemas/workspace-readme-has-one"
              },
              "project": {
                "$ref": "#/components/schemas/projects-has-one"
              },
              "current-assessment-result": {
                "$ref": "#/components/schemas/assessment-results-has-one"
              },
              "no-code-module-version": {
                "description": "The no-code module version this workspace was created from. Present\nonly for no-code workspaces; data is null or omitted otherwise.\n",
                "$ref": "#/components/schemas/no-code-module-versions-has-one"
              },
              "vars": {
                "$ref": "#/components/schemas/vars-has-many"
              },
              "tags": {
                "$ref": "#/components/schemas/tags-has-many"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/workspace-links"
          }
        }
      },
      "no-code-modules-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "no-code-modules"
            ]
          }
        }
      },
      "no-code-modules-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/no-code-modules-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "variable-options-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "variable-options"
            ]
          }
        }
      },
      "variable-options-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/variable-options-identifier"
            }
          }
        }
      },
      "no-code-module-versions": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "no-code-module-versions"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "module-version": {
                "type": "string",
                "readOnly": true,
                "description": "Registry module version string this no-code module version pins\n(for example, 1.0.0).\n"
              },
              "version-number": {
                "type": "integer",
                "readOnly": true,
                "description": "Monotonic version number for this no-code module version record.\n"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "no-code-module": {
                "$ref": "#/components/schemas/no-code-modules-has-one"
              },
              "variable-options": {
                "$ref": "#/components/schemas/variable-options-has-many"
              }
            }
          }
        }
      },
      "registry-modules-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "registry-modules"
            ]
          }
        }
      },
      "registry-modules-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/registry-modules-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "no-code-modules": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "no-code-modules"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "enabled": {
                "type": "boolean",
                "description": "Whether this no-code module is enabled for deployment."
              },
              "version-pin": {
                "type": "string",
                "nullable": true,
                "description": "Optional pinned module version for no-code deployments."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "registry-module": {
                "$ref": "#/components/schemas/registry-modules-has-one"
              },
              "variable-options": {
                "$ref": "#/components/schemas/variable-options-has-many"
              },
              "latest-version": {
                "$ref": "#/components/schemas/no-code-module-versions-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "workspace-readme": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-readme"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "raw-markdown": {
                "type": "string",
                "readOnly": true,
                "description": "Raw markdown contents of the workspace README."
              }
            }
          }
        }
      },
      "workspace-outputs": {
        "type": "object",
        "description": "Workspace outputs are Terraform output values associated with a workspace.\nThey include the name of the output and a sensitive boolean. There is an\nadditional attribute, \"value\", that can be any JSON type, including null when\nthe output is sensitive; it is intentionally omitted from this schema (same\npattern as state-version-outputs) because OpenAPI cannot express a nullable\nany-type under the project's nullable-type-sibling lint rule.\n",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-outputs"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "sensitive": {
                "type": "boolean"
              },
              "output-type": {
                "type": "string",
                "description": "The Terraform type of the output value (e.g. string, number, bool,\nlist, map, set, object, tuple).\n"
              },
              "detailed-type": {
                "description": "A detailed representation of the output type. May be a string for\nsimple types or an array for complex types such as tuples and objects.\n"
              },
              "workspace-attributes": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  }
                }
              },
              "organization-attributes": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  }
                }
              }
            }
          }
        }
      },
      "workspaces-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/workspaces"
          }
        }
      },
      "subscribable-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspaces",
              "projects",
              "teams",
              "stacks"
            ]
          }
        }
      },
      "subscribable-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/subscribable-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "notification-configurations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "notification-configurations"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "name",
              "destination-type",
              "enabled"
            ],
            "properties": {
              "name": {
                "type": "string",
                "description": "The name of the notification configuration."
              },
              "destination-type": {
                "type": "string",
                "description": "The type of notification destination (e.g., email, slack, generic, microsoft-teams).",
                "enum": [
                  "email",
                  "slack",
                  "generic",
                  "microsoft-teams"
                ]
              },
              "enabled": {
                "type": "boolean",
                "description": "Whether the notification configuration is enabled."
              },
              "triggers": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "List of trigger events for this notification."
              },
              "url": {
                "type": "string",
                "nullable": true,
                "description": "The webhook URL for non-email destinations."
              },
              "token": {
                "type": "string",
                "nullable": true,
                "writeOnly": true,
                "description": "The authentication token for the webhook."
              },
              "email-addresses": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true,
                "description": "Email addresses for email-type notifications."
              },
              "user-email-addresses": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true,
                "readOnly": true,
                "description": "Email addresses of users associated with this notification."
              },
              "external-email-addresses": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true,
                "readOnly": true,
                "description": "External email addresses (not associated with users) for this notification."
              },
              "delivery-responses": {
                "type": "array",
                "items": {
                  "type": "object"
                },
                "readOnly": true,
                "description": "Responses from notification delivery attempts."
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "subscribable": {
                "description": "The resource (workspace, project, or team) this notification is configured for.",
                "$ref": "#/components/schemas/subscribable-has-one"
              },
              "users": {
                "description": "Users associated with this notification (for email type).",
                "$ref": "#/components/schemas/users-has-many"
              }
            }
          }
        }
      },
      "notification-configurations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/notification-configurations"
          }
        }
      },
      "email-recipient-statuses": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "email-recipient-statuses"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "email": {
                "type": "string",
                "description": "The email address of the recipient"
              },
              "verified-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "The timestamp when the email was verified"
              },
              "unsubscribed-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "The timestamp when the email was unsubscribed"
              },
              "delivery-failures-count": {
                "type": "integer",
                "readOnly": true,
                "description": "The number of delivery failures for this email"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          }
        }
      },
      "email-recipient-statuses-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/email-recipient-statuses"
          }
        }
      },
      "workspaces-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/workspaces-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "no-code-queries-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "no-code-queries"
            ]
          }
        }
      },
      "no-code-queries-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/no-code-queries-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "queries": {
        "type": "object",
        "required": [
          "type",
          "attributes",
          "relationships"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "queries"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "actions": {
                "type": "object",
                "required": [
                  "is-cancelable",
                  "is-force-cancelable"
                ],
                "properties": {
                  "is-cancelable": {
                    "type": "boolean"
                  },
                  "is-force-cancelable": {
                    "type": "boolean"
                  }
                }
              },
              "canceled-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "source": {
                "type": "string",
                "enum": [
                  "tfe-api",
                  "tfe-ui",
                  "tfe-module",
                  "tfe-no-code-query",
                  "terraform",
                  "terraform-mcp"
                ]
              },
              "generate-config-out": {
                "type": "boolean"
              },
              "resources-discovered": {
                "type": "integer",
                "readOnly": true,
                "description": "The number of resources discovered by the query run."
              },
              "status-timestamps": {
                "type": "object",
                "properties": {
                  "pending-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "queued-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "running-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "finished-at": {
                    "type": "string",
                    "format": "date-time"
                  }
                }
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "running",
                  "finished",
                  "canceled",
                  "errored"
                ]
              },
              "log-read-url": {
                "type": "string",
                "readOnly": true
              },
              "permissions": {
                "type": "object",
                "properties": {
                  "can-cancel": {
                    "type": "boolean"
                  },
                  "can-force-cancel": {
                    "type": "boolean"
                  }
                }
              },
              "force-cancel-available-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "policy-paths": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "required": [
              "workspace",
              "configuration-version"
            ],
            "properties": {
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "canceled-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "configuration-version": {
                "$ref": "#/components/schemas/configuration-versions-has-one"
              },
              "created-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "no-code-query": {
                "$ref": "#/components/schemas/no-code-queries-has-one",
                "description": "The no-code query that triggered this query run, if any."
              }
            }
          }
        }
      },
      "queries-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/queries"
          }
        }
      },
      "queries-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "queries"
            ]
          }
        }
      },
      "queries-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/queries-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "no-code-query": {
        "type": "object",
        "required": [
          "type",
          "attributes",
          "relationships"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "no-code-queries"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "source": {
                "type": "string",
                "enum": [
                  "terraform-mcp"
                ],
                "writeOnly": true,
                "description": "The source assigned to the query run triggered on create. Only Terraform MCP may explicitly set this value. When omitted, the query run uses the default No-Code Query source."
              },
              "generate-config-out": {
                "type": "boolean",
                "writeOnly": true,
                "description": "Whether to generate config output for the query run triggered on create. This is a create-only input and is not returned by the GET endpoint. Defaults to false."
              },
              "no-code-query-providers": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "namespace",
                    "name",
                    "version",
                    "no-code-query-resources"
                  ],
                  "properties": {
                    "id": {
                      "type": "string",
                      "readOnly": true
                    },
                    "namespace": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "version": {
                      "type": "string"
                    },
                    "no-code-query-resources": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "readOnly": true
                          },
                          "body": {
                            "type": "object",
                            "additionalProperties": true
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "required": [
              "workspace"
            ],
            "properties": {
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "latest-query-run": {
                "$ref": "#/components/schemas/queries-has-one"
              }
            }
          }
        }
      },
      "configurable-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspaces",
              "policy-sets",
              "varsets"
            ]
          }
        }
      },
      "configurable-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/configurable-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "varsets-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "varsets"
            ]
          }
        }
      },
      "varsets-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/varsets-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "vars-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/vars-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "vars": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "vars"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "key": {
                "type": "string"
              },
              "value": {
                "type": "string",
                "nullable": true
              },
              "sensitive": {
                "type": "boolean"
              },
              "category": {
                "type": "string",
                "enum": [
                  "terraform",
                  "env",
                  "terraform-cloud",
                  "policy-set"
                ]
              },
              "hcl": {
                "type": "boolean"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "version-id": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "configurable": {
                "$ref": "#/components/schemas/configurable-has-one"
              },
              "varset": {
                "$ref": "#/components/schemas/varsets-has-one"
              },
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "overwritten": {
                "$ref": "#/components/schemas/vars-has-many"
              },
              "overwriter": {
                "$ref": "#/components/schemas/vars-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          }
        }
      },
      "vars-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/vars"
          }
        }
      },
      "provider-sets": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "provider-sets"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "global": {
                "type": "boolean"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "priority": {
                "type": "boolean"
              },
              "provider-source": {
                "type": "string",
                "description": "Accepts either `{namespace}/{provider]` or `{hostname}/{namespace}/{provider}` Values are normalized to the fully qualified form.",
                "pattern": "^(?:[A-Za-z0-9.-]+/)?[A-Za-z0-9-]+/[A-Za-z0-9-]+$",
                "example": "registry.terraform.io/hashicorp/hcp"
              },
              "configuration-hcl": {
                "type": "string",
                "example": "provider \"hcp\" {\n  client_id = var.hcp_client_id\n}\n"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "workspaces": {
                "$ref": "#/components/schemas/workspaces-has-many"
              },
              "projects": {
                "$ref": "#/components/schemas/projects-has-many"
              }
            }
          }
        }
      },
      "provider-sets-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/provider-sets"
          }
        }
      },
      "projects-identifier-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type",
                "id"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "projects"
                  ]
                },
                "id": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "stacks-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/stacks-identifier"
            }
          }
        }
      },
      "varset-parent-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "organizations",
              "projects"
            ]
          }
        }
      },
      "varset-parent-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/varset-parent-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "varsets": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "varsets"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "global": {
                "type": "boolean"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "var-count": {
                "type": "integer",
                "readOnly": true
              },
              "workspace-count": {
                "type": "integer",
                "readOnly": true
              },
              "project-count": {
                "type": "integer",
                "readOnly": true
              },
              "stack-count": {
                "type": "integer",
                "readOnly": true
              },
              "priority": {
                "type": "boolean"
              },
              "permissions": {
                "type": "object",
                "readOnly": true,
                "properties": {
                  "can-update": {
                    "type": "boolean"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "vars": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "vars"
                          ]
                        },
                        "attributes": {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string",
                              "nullable": true
                            },
                            "category": {
                              "type": "string",
                              "enum": [
                                "terraform",
                                "env"
                              ]
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              "workspaces": {
                "$ref": "#/components/schemas/workspaces-has-many"
              },
              "projects": {
                "$ref": "#/components/schemas/projects-has-many"
              },
              "stacks": {
                "$ref": "#/components/schemas/stacks-has-many"
              },
              "parent": {
                "$ref": "#/components/schemas/varset-parent-has-one"
              }
            }
          }
        }
      },
      "varsets-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/varsets"
          }
        }
      },
      "jsonapi-resource-identifier": {
        "type": "object",
        "required": [
          "type",
          "id"
        ],
        "properties": {
          "type": {
            "type": "string"
          },
          "id": {
            "type": "string"
          }
        }
      },
      "jsonapi-identifier-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/jsonapi-resource-identifier"
            }
          }
        }
      },
      "workspace-resource": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "The ID of the workspace resource"
          },
          "type": {
            "type": "string",
            "enum": [
              "resources"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "address": {
                "type": "string",
                "description": "The full address of the resource in Terraform configuration"
              },
              "name": {
                "type": "string",
                "description": "The name of the resource"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true,
                "description": "The timestamp when the resource was first created"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true,
                "description": "The timestamp when the resource was last updated"
              },
              "module": {
                "type": "string",
                "nullable": true,
                "description": "The module name where the resource is defined (e.g., \"root\" for root module)"
              },
              "provider": {
                "type": "string",
                "nullable": true,
                "description": "The provider name (e.g., \"hashicorp/random\")"
              },
              "provider-type": {
                "type": "string",
                "nullable": true,
                "description": "The resource type from the provider (e.g., \"random_pet\")"
              },
              "modified-by-state-version-id": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "The ID of the state version that last modified this resource"
              },
              "name-index": {
                "type": "string",
                "nullable": true,
                "description": "The index of the resource when there are multiple instances with the same name"
              }
            }
          }
        }
      },
      "ssh-keys-nullable-identifier-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "object",
            "nullable": true,
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "ssh-keys"
                ]
              },
              "id": {
                "type": "string",
                "nullable": true
              }
            }
          }
        }
      },
      "workspace-vars-update-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type",
                "id"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "vars"
                  ]
                },
                "id": {
                  "type": "string"
                },
                "attributes": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string"
                    },
                    "value": {
                      "type": "string",
                      "nullable": true
                    },
                    "sensitive": {
                      "type": "boolean"
                    },
                    "category": {
                      "type": "string",
                      "enum": [
                        "terraform",
                        "env"
                      ]
                    },
                    "hcl": {
                      "type": "boolean"
                    },
                    "description": {
                      "type": "string",
                      "nullable": true
                    }
                  }
                }
              }
            }
          }
        }
      },
      "tags-create-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "tags"
                  ]
                },
                "id": {
                  "type": "string"
                },
                "attributes": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "tags-remove-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type",
                "id"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "tags"
                  ]
                },
                "id": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "hyok-encrypted-data-keys-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "hyok-encrypted-data-keys"
            ]
          }
        }
      },
      "hyok-encrypted-data-keys-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/hyok-encrypted-data-keys-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "state-version-outputs-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "state-version-outputs"
            ]
          }
        }
      },
      "state-version-outputs-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/state-version-outputs-identifier"
            }
          }
        }
      },
      "state-versions": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "state-versions"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "size": {
                "type": "integer",
                "nullable": true,
                "readOnly": true
              },
              "hosted-state-download-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "hosted-json-state-download-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "hosted-state-upload-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "hosted-json-state-upload-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "encrypted-state-download-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "sanitized-state-download-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "sanitized-state-upload-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "modules": {
                "type": "object",
                "nullable": true,
                "readOnly": true,
                "additionalProperties": true
              },
              "providers": {
                "type": "object",
                "nullable": true,
                "readOnly": true,
                "additionalProperties": true
              },
              "resources": {
                "type": "array",
                "nullable": true,
                "readOnly": true,
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "type": {
                      "type": "string"
                    },
                    "count": {
                      "type": "integer"
                    },
                    "module": {
                      "type": "string"
                    },
                    "provider": {
                      "type": "string"
                    }
                  }
                }
              },
              "resources-processed": {
                "type": "boolean",
                "readOnly": true
              },
              "serial": {
                "type": "integer"
              },
              "md5": {
                "type": "string",
                "writeOnly": true
              },
              "lineage": {
                "type": "string",
                "writeOnly": true
              },
              "state": {
                "type": "string",
                "writeOnly": true
              },
              "json-state": {
                "type": "string",
                "writeOnly": true
              },
              "json-state-outputs": {
                "type": "string",
                "writeOnly": true
              },
              "force": {
                "type": "boolean",
                "writeOnly": true
              },
              "state-version": {
                "type": "integer",
                "nullable": true,
                "readOnly": true
              },
              "status": {
                "type": "string",
                "readOnly": true,
                "enum": [
                  "pending",
                  "finalized",
                  "discarded",
                  "backing_data_soft_deleted",
                  "backing_data_permanently_deleted"
                ]
              },
              "terraform-version": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "vcs-commit-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "vcs-commit-sha": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "intermediate": {
                "type": "boolean",
                "readOnly": true
              },
              "billable-rum-count": {
                "type": "integer",
                "nullable": true,
                "readOnly": true
              },
              "permissions": {
                "type": "object",
                "readOnly": true,
                "properties": {
                  "can-restore-backing-data": {
                    "type": "boolean",
                    "readOnly": true
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "run": {
                "$ref": "#/components/schemas/runs-has-one"
              },
              "rollback-state-version": {
                "$ref": "#/components/schemas/state-versions-has-one"
              },
              "next-state-version": {
                "$ref": "#/components/schemas/state-versions-has-one"
              },
              "previous-state-version": {
                "$ref": "#/components/schemas/state-versions-has-one"
              },
              "created-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "hyok-encrypted-data-key": {
                "$ref": "#/components/schemas/hyok-encrypted-data-keys-has-one"
              },
              "outputs": {
                "$ref": "#/components/schemas/state-version-outputs-has-many"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "current-state-version-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/state-versions"
          },
          "included": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        }
      },
      "assessment-source-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "assessments",
              "plans"
            ]
          }
        }
      },
      "assessment-source-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/assessment-source-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "assessment-results": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "example": "asmtres-8F5JFydVYAmtTjET"
          },
          "type": {
            "type": "string",
            "enum": [
              "assessment-results"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "succeeded": {
                "type": "boolean",
                "description": "Whether the assessment completed successfully"
              },
              "all-checks-succeeded": {
                "type": "boolean",
                "description": "Whether all health checks passed"
              },
              "checks-errored": {
                "type": "integer",
                "description": "Number of health checks that errored",
                "nullable": true
              },
              "checks-failed": {
                "type": "integer",
                "description": "Number of health checks that failed",
                "nullable": true
              },
              "checks-passed": {
                "type": "integer",
                "description": "Number of health checks that passed",
                "nullable": true
              },
              "checks-unknown": {
                "type": "integer",
                "description": "Number of health checks with unknown status",
                "nullable": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "description": "Timestamp when the assessment result was created"
              },
              "drifted": {
                "type": "boolean",
                "description": "Whether drift was detected"
              },
              "error-message": {
                "type": "string",
                "nullable": true,
                "description": "Error message if the assessment failed"
              },
              "resources-drifted": {
                "type": "integer",
                "nullable": true,
                "description": "Number of resources that have drifted"
              },
              "resources-undrifted": {
                "type": "integer",
                "nullable": true,
                "description": "Number of resources that have not drifted"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "workspace": {
                "description": "The workspace this assessment result belongs to",
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "source": {
                "description": "The source assessment or plan that produced this result.",
                "$ref": "#/components/schemas/assessment-source-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string",
                "description": "API URL for this assessment result"
              },
              "json-output": {
                "type": "string",
                "nullable": true,
                "description": "API URL for the JSON formatted assessment output (available when assessment succeeded)"
              },
              "json-schema": {
                "type": "string",
                "nullable": true,
                "description": "API URL for the JSON schema of this assessment (available when assessment succeeded)"
              },
              "sanitized-plan": {
                "type": "string",
                "nullable": true,
                "description": "API URL for the sanitized plan (available when HYOK is enabled and assessment succeeded)",
                "x-vis": [
                  "public-beta"
                ]
              },
              "log-output": {
                "type": "string",
                "description": "API URL to read the logs for this assessment"
              }
            }
          }
        }
      },
      "assessment-results-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/assessment-results"
          }
        }
      },
      "applies-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "applies"
            ]
          }
        }
      },
      "applies-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/applies-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "cost-estimates-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "cost-estimates"
            ]
          }
        }
      },
      "cost-estimates-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/cost-estimates-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "plans-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "plans"
            ]
          }
        }
      },
      "plans-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/plans-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "run-events-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "run-events"
            ]
          }
        }
      },
      "run-events-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/run-events-identifier"
            }
          }
        }
      },
      "task-stages-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "task-stages"
            ]
          }
        }
      },
      "task-stages-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/task-stages-identifier"
            }
          }
        }
      },
      "policy-checks-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-checks"
            ]
          }
        }
      },
      "policy-checks-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/policy-checks-identifier"
            }
          }
        }
      },
      "workspace-comments-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-comments"
            ]
          }
        }
      },
      "workspace-comments-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/workspace-comments-identifier"
            }
          }
        }
      },
      "tf-policy-evaluations-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "tf-policy-evaluations"
            ]
          }
        }
      },
      "tf-policy-evaluations-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/tf-policy-evaluations-identifier"
            }
          }
        }
      },
      "runs": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "runs"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "actions": {
                "type": "object",
                "properties": {
                  "is-cancelable": {
                    "type": "boolean"
                  },
                  "is-confirmable": {
                    "type": "boolean"
                  },
                  "is-discardable": {
                    "type": "boolean"
                  },
                  "is-force-cancelable": {
                    "type": "boolean"
                  }
                }
              },
              "allow-config-generation": {
                "type": "boolean"
              },
              "allow-empty-apply": {
                "type": "boolean"
              },
              "auto-apply": {
                "type": "boolean"
              },
              "comment": {
                "type": "string",
                "writeOnly": true
              },
              "canceled-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "debugging-mode": {
                "type": "boolean"
              },
              "has-changes": {
                "type": "boolean"
              },
              "is-destroy": {
                "type": "boolean"
              },
              "message": {
                "type": "string"
              },
              "plan-only": {
                "type": "boolean"
              },
              "refresh": {
                "type": "boolean"
              },
              "refresh-only": {
                "type": "boolean"
              },
              "replace-addrs": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true
              },
              "save-plan": {
                "type": "boolean"
              },
              "source": {
                "type": "string"
              },
              "status-timestamps": {
                "type": "object",
                "properties": {
                  "fetching-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "fetched-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "pre-plan-running-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "pre-plan-completed-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "plan-queued-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "planning-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "planned-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "tf-policy-checked-at": {
                    "type": "string",
                    "format": "date-time",
                    "x-vis": [
                      "public-beta"
                    ],
                    "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
                  },
                  "tf-policy-override-at": {
                    "type": "string",
                    "format": "date-time",
                    "x-vis": [
                      "public-beta"
                    ],
                    "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
                  },
                  "post-plan-running-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "post-plan-completed-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "cost-estimating-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "cost-estimated-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "policy-soft-failed-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "policy-checked-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "confirmed-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "planned-and-finished-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "planned-and-saved-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "pre-apply-running-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "pre-apply-completed-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "apply-queued-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "applying-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "post-apply-completed-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "applied-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "post-apply-running-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "discarded-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "force-canceled-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "assessed-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "queuing-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "queuing-apply-at": {
                    "type": "string",
                    "format": "date-time"
                  }
                }
              },
              "status": {
                "type": "string",
                "description": "The current status of the run.\n\n**Note:** The following status values are in public-beta:\n- `tf_policy_checked` - Terraform Policy evaluation completed at plan stage\n- `tf_policy_override` - Terraform Policy evaluation was overridden at plan stage\n",
                "enum": [
                  "pending",
                  "fetching",
                  "fetching_completed",
                  "pre_plan_running",
                  "pre_plan_completed",
                  "pre_plan_awaiting_decision",
                  "queuing",
                  "plan_queued",
                  "planning",
                  "planned",
                  "tf_policy_checked",
                  "tf_policy_override",
                  "post_plan_running",
                  "post_plan_completed",
                  "cost_estimating",
                  "cost_estimated",
                  "policy_checking",
                  "policy_override",
                  "policy_soft_failed",
                  "policy_checked",
                  "confirmed",
                  "pre_apply_running",
                  "pre_apply_completed",
                  "queuing_apply",
                  "apply_queued",
                  "applying",
                  "post_apply_running",
                  "post_apply_completed",
                  "applied",
                  "discarded",
                  "errored",
                  "canceled",
                  "planned_and_finished",
                  "planned_and_saved",
                  "assessing",
                  "assessed"
                ]
              },
              "target-addrs": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true
              },
              "trigger-reason": {
                "type": "string"
              },
              "terraform-version": {
                "type": "string"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "triggering-source-name": {
                "type": "string",
                "nullable": true
              },
              "policy-paths": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true
              },
              "invoke-action-addrs": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true
              },
              "permissions": {
                "type": "object",
                "properties": {
                  "can-apply": {
                    "type": "boolean"
                  },
                  "can-cancel": {
                    "type": "boolean"
                  },
                  "can-comment": {
                    "type": "boolean"
                  },
                  "can-discard": {
                    "type": "boolean"
                  },
                  "can-force-execute": {
                    "type": "boolean"
                  },
                  "can-force-cancel": {
                    "type": "boolean"
                  },
                  "can-override-policy-check": {
                    "type": "boolean"
                  }
                }
              },
              "variables": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string"
                    },
                    "value": {
                      "type": "string"
                    }
                  }
                }
              },
              "force-cancel-available-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "triggering-source": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "triggering-run": {
                "$ref": "#/components/schemas/runs-has-one"
              },
              "apply": {
                "$ref": "#/components/schemas/applies-has-one"
              },
              "canceled-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "configuration-version": {
                "$ref": "#/components/schemas/configuration-versions-has-one"
              },
              "confirmed-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "cost-estimate": {
                "$ref": "#/components/schemas/cost-estimates-has-one"
              },
              "created-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "plan": {
                "$ref": "#/components/schemas/plans-has-one"
              },
              "run-events": {
                "$ref": "#/components/schemas/run-events-has-many"
              },
              "task-stages": {
                "$ref": "#/components/schemas/task-stages-has-many"
              },
              "policy-checks": {
                "$ref": "#/components/schemas/policy-checks-has-many"
              },
              "run-trigger-snapshots": {
                "$ref": "#/components/schemas/links_related"
              },
              "comments": {
                "$ref": "#/components/schemas/workspace-comments-has-many"
              },
              "tf-policy-evaluations": {
                "x-vis": [
                  "public-beta"
                ],
                "$ref": "#/components/schemas/tf-policy-evaluations-has-many",
                "description": "This relationship is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
              }
            }
          }
        }
      },
      "runs-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/runs"
          }
        }
      },
      "configuration-versions": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "configuration-versions"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "auto-queue-runs": {
                "type": "boolean"
              },
              "error": {
                "type": "string",
                "nullable": true
              },
              "error-message": {
                "type": "string",
                "nullable": true
              },
              "source": {
                "type": "string",
                "nullable": true
              },
              "speculative": {
                "type": "boolean"
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "fetching",
                  "uploaded",
                  "archived",
                  "errored",
                  "backing_data_soft_deleted",
                  "backing_data_permanently_deleted"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "properties": {
                  "fetching-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "uploaded-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "archived-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "soft-delete-backing-data-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "restore-backing-data-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "permanently-delete-backing-data-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  }
                }
              },
              "provisional": {
                "type": "boolean"
              },
              "upload-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "ingress-attributes": {
                "$ref": "#/components/schemas/ingress-attributes-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "download": {
                "type": "string"
              }
            }
          }
        }
      },
      "configuration-versions-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/configuration-versions"
          }
        }
      },
      "run-events-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/run-events-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "comments": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "comments"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "body": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "run-event": {
                "$ref": "#/components/schemas/run-events-has-one"
              }
            }
          }
        }
      },
      "comments-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/comments"
          }
        }
      },
      "action-comment": {
        "type": "object",
        "properties": {
          "comment": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "run-triggers": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "run-triggers"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "workspace-name": {
                "type": "string"
              },
              "sourceable-name": {
                "type": "string"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "sourceable": {
                "$ref": "#/components/schemas/workspaces-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "run-triggers-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/run-triggers"
          }
        }
      },
      "pagination-without-totals": {
        "type": "object",
        "properties": {
          "current-page": {
            "type": "integer"
          },
          "page-size": {
            "type": "integer"
          },
          "prev-page": {
            "type": "integer",
            "nullable": true
          },
          "next-page": {
            "type": "integer",
            "nullable": true
          }
        }
      },
      "state-versions-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/state-versions-identifier"
            }
          }
        }
      },
      "plan-exports-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "plan-exports"
            ]
          }
        }
      },
      "plan-exports-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/plan-exports-identifier"
            }
          }
        }
      },
      "plans": {
        "type": "object",
        "required": [
          "id",
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "example": "plan-8F5JFydVYAmtTjET"
          },
          "type": {
            "type": "string",
            "enum": [
              "plans"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "execution-details": {
                "type": "object",
                "nullable": true,
                "description": "Details about the execution of this plan. Null if plan has not started.",
                "properties": {
                  "mode": {
                    "type": "string",
                    "description": "Execution mode of the run",
                    "enum": [
                      "remote",
                      "agent",
                      "local"
                    ]
                  },
                  "agent-id": {
                    "type": "string",
                    "example": "agent-S1Y7tcKxXPJDQAvq",
                    "description": "ID of the agent used for this run (when mode is agent)\n\nThis attribute is only available in HCP Terraform.",
                    "x-vis": [
                      "hcpt"
                    ]
                  },
                  "agent-name": {
                    "type": "string",
                    "example": "agent_01",
                    "description": "Name of the agent used for this run (when mode is agent)\n\nThis attribute is only available in HCP Terraform.",
                    "x-vis": [
                      "hcpt"
                    ]
                  },
                  "agent-pool-id": {
                    "type": "string",
                    "example": "apool-Zigq2VGreKq7nwph",
                    "description": "ID of the agent pool used for this run (when mode is agent)\n\nThis attribute is only available in HCP Terraform.",
                    "x-vis": [
                      "hcpt"
                    ]
                  },
                  "agent-pool-name": {
                    "type": "string",
                    "example": "first-pool",
                    "description": "Name of the agent pool used for this run (when mode is agent)\n\nThis attribute is only available in HCP Terraform.",
                    "x-vis": [
                      "hcpt"
                    ]
                  }
                }
              },
              "generated-configuration": {
                "type": "boolean",
                "default": false,
                "nullable": true,
                "description": "Whether the plan generated new configuration as part of this run"
              },
              "has-changes": {
                "type": "boolean",
                "description": "Whether the plan has any changes"
              },
              "resource-additions": {
                "type": "integer",
                "description": "Number of resources that will be added",
                "nullable": true
              },
              "resource-changes": {
                "type": "integer",
                "description": "Number of resources that will be changed",
                "nullable": true
              },
              "resource-destructions": {
                "type": "integer",
                "description": "Number of resources that will be destroyed",
                "nullable": true
              },
              "resource-imports": {
                "type": "integer",
                "description": "Number of resources that will be imported",
                "nullable": true
              },
              "structured-run-output-enabled": {
                "type": "boolean",
                "nullable": true,
                "description": "Whether structured run output is enabled"
              },
              "status": {
                "type": "string",
                "description": "Current status of the plan",
                "enum": [
                  "pending",
                  "managed_queued",
                  "queued",
                  "running",
                  "errored",
                  "canceled",
                  "finished",
                  "unreachable"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "description": "Timestamps for state transitions of the plan",
                "properties": {
                  "queued-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "pending-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "started-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "finished-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  }
                }
              },
              "log-read-url": {
                "type": "string",
                "nullable": true,
                "description": "URL to read the logs for this plan"
              },
              "actions": {
                "type": "object",
                "description": "Actions available for this plan",
                "properties": {
                  "is-exportable": {
                    "type": "boolean",
                    "description": "Whether the plan can be exported"
                  }
                }
              },
              "backing-data-state": {
                "type": "string",
                "readOnly": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "Data retention lifecycle state of the plan's backing data.\n\nThis attribute is only available in Terraform Enterprise.",
                "enum": [
                  "backing_data_initialized",
                  "backing_data_available",
                  "backing_data_soft_deleted",
                  "backing_data_permanently_deleted"
                ]
              },
              "permissions": {
                "type": "object",
                "description": "Permissions for the current user related to this plan",
                "nullable": true,
                "properties": {
                  "can-export": {
                    "type": "boolean",
                    "description": "Whether the current user can export the plan"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "state-versions": {
                "description": "State versions associated with this plan (for TF <= 0.8)",
                "$ref": "#/components/schemas/state-versions-has-many"
              },
              "exports": {
                "description": "Exports associated with this plan",
                "$ref": "#/components/schemas/plan-exports-has-many"
              },
              "hyok-encrypted-data-key": {
                "description": "HYOK encrypted data key associated with this plan\n\nThis relationship is only available in HCP Terraform.",
                "x-vis": [
                  "hcpt"
                ],
                "$ref": "#/components/schemas/hyok-encrypted-data-keys-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string",
                "description": "API URL for this plan"
              },
              "json-output": {
                "type": "string",
                "nullable": true,
                "description": "API URL for the JSON formatted execution plan (available for Terraform 0.12+)"
              },
              "json-output-redacted": {
                "type": "string",
                "nullable": true,
                "description": "API URL for the redacted JSON formatted execution plan (available for Terraform 0.15.2+)"
              },
              "json-schema": {
                "type": "string",
                "nullable": true,
                "description": "API URL for the JSON schema of this plan (available for Terraform 0.12+)"
              },
              "sanitized-plan": {
                "type": "string",
                "nullable": true,
                "description": "API URL for the sanitized plan (available when HYOK is enabled and with compatible Terraform version)",
                "x-vis": [
                  "public-beta"
                ]
              }
            }
          }
        }
      },
      "plans-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/plans"
          }
        }
      },
      "policy-sets-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-sets"
            ]
          }
        }
      },
      "policy-sets-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/policy-sets-identifier"
            }
          }
        }
      },
      "policies": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "policies"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "The name of the policy."
              },
              "description": {
                "type": "string",
                "nullable": true,
                "description": "Text describing the policy's purpose. Supports Markdown."
              },
              "kind": {
                "type": "string",
                "enum": [
                  "sentinel",
                  "opa",
                  "tfpolicy"
                ],
                "description": "The policy-as-code framework for the policy."
              },
              "query": {
                "type": "string",
                "nullable": true,
                "description": "The OPA query to run. Only present for OPA policies."
              },
              "enforcement-level": {
                "type": "string",
                "enum": [
                  "hard-mandatory",
                  "soft-mandatory",
                  "advisory",
                  "mandatory",
                  "mandatory_overridable"
                ],
                "description": "The enforcement level of the policy. Sentinel: hard-mandatory, soft-mandatory, advisory. OPA: mandatory, advisory. TFPolicy: mandatory, advisory, mandatory_overridable."
              },
              "enforce": {
                "type": "array",
                "description": "DEPRECATED: Use enforcement-level instead. An array of enforcement configurations mapping policy file paths to their enforcement modes.",
                "items": {
                  "type": "object",
                  "properties": {
                    "path": {
                      "type": "string"
                    },
                    "mode": {
                      "type": "string"
                    }
                  }
                }
              },
              "policy-set-count": {
                "type": "integer",
                "readOnly": true,
                "description": "The number of policy sets that include this policy."
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true,
                "description": "The time of the most recent policy code upload."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "policy-sets": {
                "$ref": "#/components/schemas/policy-sets-has-many"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string",
                "readOnly": true,
                "description": "The canonical URL of this policy."
              },
              "upload": {
                "type": "string",
                "readOnly": true,
                "description": "URL to upload new policy source content."
              },
              "download": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "URL to download the current policy source content. Absent when no version has been uploaded yet."
              }
            }
          }
        }
      },
      "policies-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policies"
          }
        }
      },
      "policy-checks": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-checks"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "result": {
                "type": "object",
                "nullable": true,
                "description": "The result of the policy evaluation. Null until the policy check completes. The `sentinel` key contains low-level Sentinel details and its structure may change over time.",
                "properties": {
                  "result": {
                    "type": "boolean"
                  },
                  "passed": {
                    "type": "integer"
                  },
                  "total-failed": {
                    "type": "integer"
                  },
                  "hard-failed": {
                    "type": "integer"
                  },
                  "soft-failed": {
                    "type": "integer"
                  },
                  "advisory-failed": {
                    "type": "integer"
                  },
                  "duration-ms": {
                    "type": "integer"
                  },
                  "sentinel": {
                    "type": "object",
                    "additionalProperties": true,
                    "nullable": true
                  }
                }
              },
              "scope": {
                "type": "string",
                "description": "The scope of policies evaluated in this check (e.g. \"organization\")."
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "passed",
                  "soft_failed",
                  "hard_failed",
                  "overridden",
                  "errored",
                  "canceled",
                  "unreachable"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "properties": {
                  "queued-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "passed-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "soft-failed-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "hard-failed-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "overridden-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  }
                }
              },
              "actions": {
                "type": "object",
                "properties": {
                  "is-overridable": {
                    "type": "boolean"
                  }
                }
              },
              "permissions": {
                "type": "object",
                "properties": {
                  "can-override": {
                    "type": "boolean"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "run": {
                "$ref": "#/components/schemas/runs-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "output": {
                "type": "string",
                "nullable": true,
                "description": "URL to download the policy check output log."
              },
              "override": {
                "type": "string",
                "nullable": true,
                "description": "URL to override a soft-failed policy check. Only present when the check is overridable."
              }
            }
          }
        }
      },
      "policy-checks-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policy-checks"
          }
        }
      },
      "tf-policy-set-outcomes-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "tf-policy-set-outcomes"
            ]
          }
        }
      },
      "tf-policy-set-outcomes-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/tf-policy-set-outcomes-identifier"
            }
          }
        }
      },
      "tf-policy-evaluation": {
        "type": "object",
        "description": "Represents a Terraform Policy evaluation for a run. Coordinates the evaluation of multiple policy sets and aggregates their results. Each evaluation is associated with a specific stage (Setup or Plan or Apply) in the run lifecycle.",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "tf-policy-evaluations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "description": "Current status of the Terraform policy evaluation. Status values:\n- `pending`: Initial state, not yet queued for evaluation\n- `queued`: Queued and waiting to be evaluated\n- `running`: Actively being evaluated\n- `awaiting_override`: Failed with overridable policies, awaiting manual override\n- `passed`: All policies passed (final state)\n- `failed`: Failed with mandatory policies (final state)\n- `overridden`: Failed evaluation manually overridden (final state)\n- `errored`: System error during processing (final state)\n- `canceled`: Canceled before completion (final state)\n- `unreachable`: Pseudo-state derived from run state\n",
                "enum": [
                  "pending",
                  "queued",
                  "running",
                  "awaiting_override",
                  "passed",
                  "failed",
                  "overridden",
                  "errored",
                  "canceled",
                  "unreachable"
                ]
              },
              "stage-type": {
                "type": "string",
                "description": "The type of stage this evaluation is associated with (e.g., 'Plan', 'Apply', 'Init')"
              },
              "status-timestamps": {
                "type": "object",
                "description": "Timestamps for each status transition during the evaluation lifecycle",
                "properties": {
                  "pending-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation entered pending status"
                  },
                  "queued-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation was queued for processing"
                  },
                  "running-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation started running"
                  },
                  "awaiting-override-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation entered awaiting override status (for failed mandatory policies)"
                  },
                  "passed-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation passed successfully"
                  },
                  "failed-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation failed"
                  },
                  "overridden-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When a failed evaluation was overridden"
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation encountered an error"
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true,
                    "description": "When the evaluation was canceled"
                  }
                }
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "description": "When the evaluation was created"
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "description": "When the evaluation was last updated"
              },
              "result-count": {
                "type": "object",
                "description": "Aggregated counts of policy results across all policy sets in this evaluation",
                "properties": {
                  "advisory-failed": {
                    "type": "integer",
                    "description": "Total number of policies with advisory enforcement level that failed across all policy sets"
                  },
                  "mandatory-failed": {
                    "type": "integer",
                    "description": "Total number of policies with mandatory or mandatory-overridable enforcement level that failed across all policy sets"
                  },
                  "passed": {
                    "type": "integer",
                    "description": "Total number of policies that passed across all policy sets"
                  },
                  "errored": {
                    "type": "integer",
                    "description": "Total number of policies that encountered errors during evaluation across all policy sets"
                  },
                  "unknown": {
                    "type": "integer",
                    "description": "Total number of policies with unknown evaluation results across all policy sets"
                  }
                }
              },
              "error": {
                "type": "object",
                "nullable": true,
                "description": "Error information if the entire evaluation failed (not policy-specific errors)",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "setup_error",
                      "incompatible_agent_version"
                    ],
                    "description": "Error type identifier indicating the category of failure"
                  },
                  "summary": {
                    "type": "string",
                    "description": "Brief error summary for display"
                  },
                  "detail": {
                    "type": "string",
                    "description": "Detailed error message with additional context"
                  }
                }
              },
              "organized-log": {
                "type": "boolean",
                "deprecated": true,
                "description": "Deprecated. Always `true`."
              },
              "permissions": {
                "type": "object",
                "description": "User permissions for this evaluation",
                "properties": {
                  "can-override": {
                    "type": "boolean",
                    "description": "Whether the current user has permission to override failed policies"
                  }
                }
              },
              "actions": {
                "type": "object",
                "description": "Available actions for this evaluation",
                "properties": {
                  "is-overridable": {
                    "type": "boolean",
                    "description": "Whether this evaluation can be overridden (based on policy enforcement levels and current status)"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "run": {
                "description": "The run that this policy evaluation belongs to",
                "$ref": "#/components/schemas/runs-has-one"
              },
              "tf-policy-set-outcomes": {
                "description": "The Terraform policy set outcomes that are part of this evaluation",
                "$ref": "#/components/schemas/tf-policy-set-outcomes-has-many"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          }
        }
      },
      "tf-policy-evaluations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/tf-policy-evaluation"
          }
        }
      },
      "tf-policy-evaluations-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/tf-policy-evaluations-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "tf-policy-set-outcome": {
        "type": "object",
        "description": "Represents the outcome of evaluating a Terraform Policy set against resources in a run. Contains detailed diagnostics organized by policy and enforce block, including information about resources that passed or failed policy evaluation.",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "tf-policy-set-outcomes"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "outcomes": {
                "type": "array",
                "nullable": true,
                "description": "List of policy outcomes, each representing the evaluation result of a single policy within the policy set",
                "items": {
                  "type": "object",
                  "properties": {
                    "policy_name": {
                      "type": "string",
                      "description": "The name of the policy"
                    },
                    "description": {
                      "type": "string",
                      "description": "The description of the policy"
                    },
                    "file_name": {
                      "type": "string",
                      "description": "The filename of the policy"
                    },
                    "enforcement_level": {
                      "type": "string",
                      "enum": [
                        "advisory",
                        "mandatory",
                        "mandatory_overridable"
                      ],
                      "description": "The enforcement level of the policy"
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "passed",
                        "failed",
                        "errored",
                        "unknown"
                      ],
                      "description": "The evaluation status of the policy"
                    },
                    "diagnostics": {
                      "type": "array",
                      "nullable": true,
                      "description": "List of diagnostic entries grouped by enforce block",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "type": "string",
                            "description": "Code snippet from the policy file showing the enforce block that was evaluated"
                          },
                          "context": {
                            "type": "string",
                            "nullable": true,
                            "description": "The policy declaration context (e.g., 'resource_policy \"aws_s3_bucket\" \"test\"')"
                          },
                          "start_line": {
                            "type": "integer",
                            "nullable": true,
                            "description": "Line number where the enforce block starts in the policy file"
                          },
                          "summary": {
                            "type": "string",
                            "description": "Human-readable summary of the diagnostic, typically the policy declaration"
                          },
                          "error_message": {
                            "type": "string",
                            "nullable": true,
                            "description": "Error message for the enforce block when not specific to a resource"
                          },
                          "resources": {
                            "type": "array",
                            "nullable": true,
                            "description": "List of Terraform resources that failed this enforce block's condition",
                            "items": {
                              "type": "object",
                              "properties": {
                                "resource_name": {
                                  "type": "string",
                                  "description": "The Terraform resource address (e.g., 'aws_s3_bucket.example')"
                                },
                                "error_message": {
                                  "type": "string",
                                  "nullable": true,
                                  "description": "Specific error message explaining why this resource failed the policy check"
                                },
                                "info_message": {
                                  "type": "string",
                                  "nullable": true,
                                  "description": "Policy-provided informational log message for debugging about this resource's evaluation"
                                },
                                "file_name": {
                                  "type": "string",
                                  "nullable": true,
                                  "description": "Terraform configuration file containing this resource (e.g., 'main.tf')"
                                },
                                "code": {
                                  "type": "string",
                                  "nullable": true,
                                  "description": "Code snippet from the Terraform configuration showing the resource declaration"
                                },
                                "start_line": {
                                  "type": "integer",
                                  "nullable": true,
                                  "description": "Line number where the resource is defined in the Terraform configuration file"
                                },
                                "values": {
                                  "type": "array",
                                  "nullable": true,
                                  "description": "List of attribute evaluations showing the actual values that caused the policy failure",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "traversal": {
                                        "type": "string",
                                        "description": "The attribute path that was evaluated"
                                      },
                                      "statement": {
                                        "type": "string",
                                        "description": "The actual value of the attribute that was evaluated"
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    },
                    "passed_resources": {
                      "type": "array",
                      "nullable": true,
                      "description": "List of Terraform resources that passed all enforce blocks in this policy",
                      "items": {
                        "type": "object",
                        "properties": {
                          "resource_name": {
                            "type": "string",
                            "description": "The Terraform resource address (e.g., 'aws_s3_bucket.compliant')"
                          },
                          "info_messages": {
                            "type": "array",
                            "nullable": true,
                            "description": "List of informational messages from enforce blocks that this resource passed",
                            "items": {
                              "type": "string"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              "overridable": {
                "type": "boolean",
                "description": "Indicates if the policy set outcome can be overridden when policies fail"
              },
              "policy-set-name": {
                "type": "string",
                "description": "Name of the policy set that was evaluated"
              },
              "policy-set-description": {
                "type": "string",
                "nullable": true,
                "description": "Optional description of the policy set"
              },
              "result-count": {
                "type": "object",
                "properties": {
                  "advisory-failed": {
                    "type": "integer",
                    "description": "Number of policies with advisory enforcement level that failed"
                  },
                  "mandatory-failed": {
                    "type": "integer",
                    "description": "Number of policies with mandatory or mandatory-overridable enforcement level that failed"
                  },
                  "passed": {
                    "type": "integer",
                    "description": "Number of policies that passed"
                  },
                  "errored": {
                    "type": "integer",
                    "description": "Number of policies that encountered errors during evaluation"
                  },
                  "unknown": {
                    "type": "integer",
                    "description": "Number of policies with unknown evaluation results (e.g., due to unknown Terraform values)"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "tf-policy-evaluation": {
                "$ref": "#/components/schemas/tf-policy-evaluations-has-one"
              }
            }
          }
        }
      },
      "tf-policy-set-outcomes-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/tf-policy-set-outcome"
          }
        }
      },
      "policy-set-versions-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-set-versions"
            ]
          }
        }
      },
      "policy-set-versions-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/policy-set-versions-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "policies-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "policies"
            ]
          }
        }
      },
      "policies-has-many": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "description": "Existing local policy reference (response shape and update requests).",
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/policies-identifier"
                    },
                    {
                      "not": {
                        "type": "object",
                        "properties": {
                          "attributes": {
                            "type": "object"
                          }
                        },
                        "required": [
                          "attributes"
                        ]
                      }
                    }
                  ]
                }
              ]
            }
          }
        }
      },
      "policy-sets": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-sets"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "global": {
                "type": "boolean"
              },
              "workspace-count": {
                "type": "integer",
                "readOnly": true
              },
              "project-count": {
                "type": "integer",
                "readOnly": true
              },
              "versioned": {
                "type": "boolean",
                "readOnly": true
              },
              "kind": {
                "type": "string",
                "description": "The kind of policies contained in this policy set.\n\n**Note:** The following kind values are in public-beta:\n- `tfpolicy` - Terraform Policy enforcement\n",
                "enum": [
                  "sentinel",
                  "opa",
                  "tfpolicy"
                ]
              },
              "agent-enabled": {
                "type": "boolean"
              },
              "policy-tool-version": {
                "type": "string",
                "nullable": true
              },
              "overridable": {
                "type": "boolean",
                "nullable": true
              },
              "policy-count": {
                "type": "integer",
                "readOnly": true
              },
              "policies-path": {
                "type": "string",
                "nullable": true
              },
              "vcs-repo": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "branch": {
                    "type": "string",
                    "nullable": true
                  },
                  "identifier": {
                    "type": "string"
                  },
                  "display-identifier": {
                    "type": "string",
                    "nullable": true
                  },
                  "oauth-token-id": {
                    "type": "string",
                    "nullable": true
                  },
                  "github-app-installation-id": {
                    "type": "string",
                    "nullable": true
                  },
                  "ingress-submodules": {
                    "type": "boolean"
                  },
                  "webhook-url": {
                    "type": "string",
                    "nullable": true
                  },
                  "repository-http-url": {
                    "type": "string",
                    "nullable": true
                  },
                  "service-provider": {
                    "type": "string",
                    "nullable": true
                  }
                }
              },
              "policy-update-patterns": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "tag-selectors": {
                "type": "array",
                "x-vis": [
                  "public-beta"
                ],
                "items": {
                  "type": "object",
                  "required": [
                    "tag-key",
                    "tag-value",
                    "is-exclude"
                  ],
                  "properties": {
                    "tag-key": {
                      "type": "string"
                    },
                    "tag-value": {
                      "type": "string",
                      "nullable": true
                    },
                    "is-exclude": {
                      "type": "boolean"
                    }
                  }
                },
                "description": "This attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users."
              },
              "tag-selector-matching-logic": {
                "type": "string",
                "x-vis": [
                  "public-beta"
                ],
                "nullable": true,
                "description": "Matching logic for tag selectors. `any` means any selector may match (OR). `all` means every selector must match (AND). `null` means the policy set is explicitly scoped, so tag matching does not apply. Under `all`, exclusion selectors must also fully match.\n\n\nThis attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
                "enum": [
                  "any",
                  "all"
                ]
              },
              "scoping-type": {
                "type": "string",
                "x-vis": [
                  "public-beta"
                ],
                "description": "Scoping mode for the policy set. \"tag\" is dynamic tag-based scoping. \"explicit\" uses explicit workspace/project associations.\n\nThis attribute is considered BETA, is SUBJECT TO CHANGE, and may be unavailable to some users.",
                "enum": [
                  "tag",
                  "explicit"
                ]
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "current-version": {
                "$ref": "#/components/schemas/policy-set-versions-has-one"
              },
              "newest-version": {
                "$ref": "#/components/schemas/policy-set-versions-has-one"
              },
              "policies": {
                "$ref": "#/components/schemas/policies-has-many"
              },
              "workspaces": {
                "$ref": "#/components/schemas/workspaces-has-many"
              },
              "projects": {
                "$ref": "#/components/schemas/projects-has-many"
              },
              "workspace-exclusions": {
                "$ref": "#/components/schemas/workspaces-has-many"
              },
              "project-exclusions": {
                "$ref": "#/components/schemas/projects-has-many"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          }
        }
      },
      "policy-sets-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policy-sets"
          },
          "included": {
            "type": "array",
            "description": "Sideloaded resources. `?include=policies` sideloads the full policy resources.",
            "items": {
              "type": "object",
              "description": "A sideloaded resource. May be a `policies` resource (type \"policies\"), a `workspaces` resource (type \"workspaces\"), or another allowlisted type."
            }
          }
        }
      },
      "policies-identifier-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "description": "Existing local policy reference, by id. Valid for both adding and removing policies from a policy set.",
                  "type": "object",
                  "required": [
                    "type",
                    "id"
                  ],
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "policies"
                      ]
                    },
                    "id": {
                      "type": "string"
                    }
                  }
                }
              ]
            }
          }
        }
      },
      "policy-sets-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policy-sets-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "policy-set-versions": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-set-versions"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "source": {
                "type": "string",
                "nullable": true
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "ingressing",
                  "ready",
                  "errored",
                  "canceled"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "pending-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "ingressing-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "ready-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time"
                  }
                }
              },
              "error": {
                "type": "string",
                "nullable": true
              },
              "error-message": {
                "type": "string",
                "nullable": true
              },
              "ingress-attributes": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "commit-sha": {
                    "type": "string",
                    "nullable": true
                  },
                  "commit-url": {
                    "type": "string",
                    "nullable": true
                  },
                  "identifier": {
                    "type": "string",
                    "nullable": true
                  }
                }
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "policy-set": {
                "$ref": "#/components/schemas/policy-sets-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "upload": {
                "type": "string",
                "nullable": true
              }
            }
          }
        }
      },
      "policy-set-versions-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policy-set-versions"
          }
        }
      },
      "task-stages-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/task-stages-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "policy-set-outcomes-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-set-outcomes"
            ]
          }
        }
      },
      "policy-set-outcomes-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/policy-set-outcomes-identifier"
            }
          }
        }
      },
      "policy-evaluations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-evaluations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "running",
                  "passed",
                  "failed",
                  "overridden",
                  "errored",
                  "canceled",
                  "unreachable"
                ]
              },
              "policy-kind": {
                "type": "string",
                "enum": [
                  "sentinel",
                  "opa"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "properties": {
                  "pending-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "queued-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "running-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "passed-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "failed-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "overridden-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  }
                }
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "result-count": {
                "type": "object",
                "properties": {
                  "advisory-failed": {
                    "type": "integer"
                  },
                  "mandatory-failed": {
                    "type": "integer"
                  },
                  "passed": {
                    "type": "integer"
                  },
                  "errored": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "policy-attachable": {
                "$ref": "#/components/schemas/task-stages-has-one"
              },
              "policy-set-outcomes": {
                "$ref": "#/components/schemas/policy-set-outcomes-has-many"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          }
        }
      },
      "policy-evaluations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policy-evaluations"
          }
        }
      },
      "policy-evaluations-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-evaluations"
            ]
          }
        }
      },
      "policy-evaluations-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policy-evaluations-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "policy-set-outcomes": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "policy-set-outcomes"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "outcomes": {
                "type": "array",
                "nullable": true,
                "items": {
                  "type": "object",
                  "properties": {
                    "enforcement_level": {
                      "type": "string",
                      "nullable": true
                    },
                    "query": {
                      "type": "string",
                      "nullable": true
                    },
                    "status": {
                      "type": "string"
                    },
                    "policy_name": {
                      "type": "string",
                      "nullable": true
                    },
                    "description": {
                      "type": "string"
                    },
                    "output": {
                      "type": "array",
                      "nullable": true,
                      "items": {}
                    }
                  }
                }
              },
              "error": {
                "type": "string",
                "nullable": true
              },
              "warnings": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "overridable": {
                "type": "boolean"
              },
              "policy-set-name": {
                "type": "string"
              },
              "policy-set-description": {
                "type": "string",
                "nullable": true
              },
              "result-count": {
                "type": "object",
                "properties": {
                  "advisory-failed": {
                    "type": "integer"
                  },
                  "mandatory-failed": {
                    "type": "integer"
                  },
                  "passed": {
                    "type": "integer"
                  },
                  "errored": {
                    "type": "integer"
                  }
                }
              },
              "policy-tool-version": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "policy-evaluation": {
                "$ref": "#/components/schemas/policy-evaluations-has-one"
              }
            }
          }
        }
      },
      "policy-set-outcomes-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/policy-set-outcomes"
          }
        }
      },
      "plan-exports": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "plan-exports"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "data-type": {
                "type": "string",
                "enum": [
                  "sentinel-mock-bundle-v0"
                ]
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "finished",
                  "expired",
                  "canceled",
                  "errored"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "properties": {
                  "pending-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "queued-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "finished-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "expired-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  }
                }
              },
              "error-message": {
                "type": "string",
                "nullable": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "plan": {
                "$ref": "#/components/schemas/plans-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "download": {
                "type": "string",
                "nullable": true
              }
            }
          }
        }
      },
      "plan-exports-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/plan-exports"
          }
        }
      },
      "applies": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "applies"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "execution-details": {
                "type": "object",
                "readOnly": true,
                "nullable": true,
                "properties": {
                  "mode": {
                    "type": "string",
                    "enum": [
                      "agent",
                      "remote",
                      "local"
                    ]
                  },
                  "agent-id": {
                    "type": "string"
                  },
                  "agent-name": {
                    "type": "string"
                  },
                  "agent-pool-id": {
                    "type": "string"
                  },
                  "agent-pool-name": {
                    "type": "string"
                  }
                }
              },
              "status": {
                "readOnly": true,
                "type": "string",
                "enum": [
                  "created",
                  "pending",
                  "queued",
                  "agent_queued",
                  "running",
                  "errored",
                  "canceled",
                  "finished",
                  "unreachable"
                ]
              },
              "status-timestamps": {
                "readOnly": true,
                "type": "object",
                "properties": {
                  "agent-queued-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "started-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "force-canceled-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  },
                  "finished-at": {
                    "type": "string",
                    "format": "date-time",
                    "nullable": true
                  }
                }
              },
              "log-read-url": {
                "readOnly": true,
                "type": "string"
              },
              "resource-additions": {
                "readOnly": true,
                "type": "integer",
                "nullable": true
              },
              "resource-changes": {
                "readOnly": true,
                "type": "integer",
                "nullable": true
              },
              "resource-destructions": {
                "readOnly": true,
                "type": "integer",
                "nullable": true
              },
              "resource-imports": {
                "readOnly": true,
                "type": "integer",
                "nullable": true
              },
              "action-invocations": {
                "readOnly": true,
                "type": "integer",
                "nullable": true
              },
              "action-failures": {
                "readOnly": true,
                "type": "integer",
                "nullable": true
              },
              "backing-data-state": {
                "type": "string",
                "readOnly": true,
                "x-vis": [
                  "tfe"
                ],
                "description": "Data retention lifecycle state of the apply's backing data.\n\nThis attribute is only available in Terraform Enterprise.",
                "enum": [
                  "backing_data_initialized",
                  "backing_data_available",
                  "backing_data_soft_deleted",
                  "backing_data_permanently_deleted"
                ]
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "state-versions": {
                "$ref": "#/components/schemas/state-versions-has-many"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "applies-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/applies"
          }
        }
      },
      "cost-estimates": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "cost-estimates"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "error-message": {
                "type": "string",
                "nullable": true
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "finished",
                  "canceled",
                  "errored",
                  "unreachable",
                  "skipped_due_to_targeting"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "properties": {
                  "pending-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "queued-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "finished-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "canceled-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "errored-at": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "skipped-due-to-targeting-at": {
                    "type": "string",
                    "format": "date-time"
                  }
                }
              },
              "resources": {
                "type": "object",
                "nullable": true,
                "description": "Low-level cost estimation details, only present when status is \"finished\". The keys or structure of this hash may change over time.",
                "properties": {
                  "matched": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "unmatched": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                }
              },
              "resources-count": {
                "type": "integer",
                "nullable": true,
                "description": "Total number of resources. Only present when status is \"finished\"."
              },
              "matched-resources-count": {
                "type": "integer",
                "nullable": true,
                "description": "Number of matched resources. Only present when status is \"finished\"."
              },
              "unmatched-resources-count": {
                "type": "integer",
                "nullable": true,
                "description": "Number of unmatched resources. Only present when status is \"finished\"."
              },
              "prior-monthly-cost": {
                "type": "string",
                "nullable": true,
                "description": "Prior monthly cost as a decimal string. Only present when status is \"finished\"."
              },
              "proposed-monthly-cost": {
                "type": "string",
                "nullable": true,
                "description": "Proposed monthly cost as a decimal string. Only present when status is \"finished\"."
              },
              "delta-monthly-cost": {
                "type": "string",
                "nullable": true,
                "description": "Delta monthly cost as a decimal string. Only present when status is \"finished\"."
              }
            }
          }
        }
      },
      "cost-estimates-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/cost-estimates"
          }
        }
      },
      "state-versions-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/state-versions"
          }
        }
      },
      "state-version-outputs": {
        "type": "object",
        "description": "State version outputs are the output values from a Terraform state file for a workspace. They include the name and value of the output, as well as a sensitive boolean if the value should be hidden by default in UIs. There is an additional attribute, \"value\" that can be any type, including null if the value is sensitive and part of a list response.",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "state-version-outputs"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "sensitive": {
                "type": "boolean"
              },
              "type": {
                "type": "string",
                "description": "The Terraform type of the output value (e.g. \"string\", \"number\", \"bool\", \"list\", \"map\", \"set\", \"object\", \"tuple\")."
              },
              "detailed-type": {
                "description": "A detailed representation of the output type. May be a string for simple types or an array for complex types such as tuples and objects."
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "state-version-outputs-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/state-version-outputs"
          }
        }
      },
      "hyok-customer-key-versions-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "hyok-customer-key-versions"
            ]
          }
        }
      },
      "hyok-customer-key-versions-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/hyok-customer-key-versions-identifier"
            }
          }
        }
      },
      "oidc-configurations-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "aws-oidc-configurations",
              "azure-oidc-configurations",
              "gcp-oidc-configurations",
              "vault-oidc-configurations"
            ]
          }
        }
      },
      "oidc-configurations-has-one": {
        "type": "object",
        "nullable": true,
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/oidc-configurations-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "hyok-configurations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "hyok-configurations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "kek-id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "primary": {
                "type": "boolean"
              },
              "status": {
                "type": "string",
                "readOnly": true,
                "enum": [
                  "untested",
                  "testing",
                  "test_failed",
                  "available",
                  "errored",
                  "revoking",
                  "revoked"
                ]
              },
              "error": {
                "type": "string",
                "readOnly": true,
                "nullable": true
              },
              "kms-options": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "key-region": {
                    "type": "string",
                    "description": "Only required with AWS KMS"
                  },
                  "key-location": {
                    "type": "string",
                    "description": "Only required with GCP KMS"
                  },
                  "key-ring-id": {
                    "type": "string",
                    "description": "Only required with GCP KMS"
                  },
                  "multi-region": {
                    "type": "boolean",
                    "description": "Optional for AWS KMS"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "hyok-customer-key-versions": {
                "$ref": "#/components/schemas/hyok-customer-key-versions-has-many"
              },
              "oidc-configuration": {
                "$ref": "#/components/schemas/oidc-configurations-has-one"
              }
            }
          }
        }
      },
      "hyok-configurations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/hyok-configurations"
          }
        }
      },
      "aws-oidc-configurations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "aws-oidc-configurations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "role-arn": {
                "type": "string"
              },
              "region": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              }
            }
          }
        }
      },
      "gcp-oidc-configurations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "gcp-oidc-configurations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "service-account-email": {
                "type": "string"
              },
              "region": {
                "type": "string"
              },
              "workload-provider-name": {
                "type": "string",
                "description": "Either the workload-provider-name or workload-pool-id and workload-provider-id must be provided"
              },
              "project-number": {
                "type": "string"
              },
              "workload-pool-id": {
                "type": "string",
                "description": "Either the workload-provider-name or workload-pool-id and workload-provider-id must be provided"
              },
              "workload-provider-id": {
                "type": "string",
                "description": "Either the workload-provider-name or workload-pool-id and workload-provider-id must be provided"
              },
              "type": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              }
            }
          }
        }
      },
      "azure-oidc-configurations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "azure-oidc-configurations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "client-id": {
                "type": "string"
              },
              "subscription-id": {
                "type": "string"
              },
              "tenant-id": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              }
            }
          }
        }
      },
      "vault-oidc-configurations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "vault-oidc-configurations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "address": {
                "type": "string"
              },
              "role": {
                "type": "string"
              },
              "namespace": {
                "type": "string"
              },
              "auth-path": {
                "type": "string"
              },
              "encoded-ca-cert": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              }
            }
          }
        }
      },
      "oidc-configuration-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/aws-oidc-configurations"
              },
              {
                "$ref": "#/components/schemas/gcp-oidc-configurations"
              },
              {
                "$ref": "#/components/schemas/azure-oidc-configurations"
              },
              {
                "$ref": "#/components/schemas/vault-oidc-configurations"
              }
            ],
            "discriminator": {
              "propertyName": "type",
              "mapping": {
                "aws-oidc-configurations": "#/components/schemas/aws-oidc-configurations",
                "gcp-oidc-configurations": "#/components/schemas/gcp-oidc-configurations",
                "azure-oidc-configurations": "#/components/schemas/azure-oidc-configurations",
                "vault-oidc-configurations": "#/components/schemas/vault-oidc-configurations"
              }
            }
          }
        }
      },
      "hyok-customer-key-versions": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "hyok-customer-key-versions"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "key-version": {
                "type": "string",
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "workspaces-secured": {
                "type": "integer",
                "readOnly": true
              },
              "status": {
                "type": "string",
                "readOnly": true,
                "enum": [
                  "available",
                  "revoking",
                  "revoked",
                  "revocation_failed"
                ]
              },
              "error": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "hyok-configuration": {
                "$ref": "#/components/schemas/hyok-configurations-has-one"
              }
            }
          }
        }
      },
      "hyok-customer-key-versions-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/hyok-customer-key-versions"
          }
        }
      },
      "hyok-customer-key-versions-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/hyok-customer-key-versions-identifier"
          }
        }
      },
      "hyok-encrypted-data-keys": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "hyok-encrypted-data-keys"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "encrypted-dek": {
                "type": "string",
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "customer-key-name": {
                "type": "string",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "hyok-customer-key-version": {
                "$ref": "#/components/schemas/hyok-customer-key-versions-has-one"
              }
            }
          }
        }
      },
      "hyok-encrypted-data-keys-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/hyok-encrypted-data-keys"
          }
        }
      },
      "teams-nullable-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/teams-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "auth-token-created-by-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "users",
              "organizations",
              "teams"
            ]
          }
        }
      },
      "auth-token-created-by-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/auth-token-created-by-identifier"
              }
            ],
            "nullable": true
          }
        }
      },
      "authentication-tokens": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "authentication-tokens"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "description": {
                "type": "string",
                "nullable": true
              },
              "expired-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "The UTC date and time that the token will expire, in ISO 8601 format. If omitted or set to null the token will never expire."
              },
              "last-used-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "nullable": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "token": {
                "type": "string",
                "readOnly": true,
                "nullable": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "team": {
                "$ref": "#/components/schemas/teams-nullable-has-one"
              },
              "created-by": {
                "$ref": "#/components/schemas/auth-token-created-by-has-one"
              }
            }
          }
        }
      },
      "authentication-tokens-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/authentication-tokens"
          }
        }
      },
      "github-app-oauth-tokens": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "github-app-oauth-tokens"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "github-username": {
                "type": "string",
                "nullable": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "user": {
                "$ref": "#/components/schemas/users-has-one"
              }
            }
          }
        }
      },
      "teams-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/teams"
          }
        }
      },
      "users-identifier-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type",
                "id"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "users"
                  ]
                },
                "id": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "organization-memberships-identifier-array-document": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "type",
                "id"
              ],
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "organization-memberships"
                  ]
                },
                "id": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "teams-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/teams-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "team-projects": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "team-projects"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "access"
            ],
            "properties": {
              "access": {
                "type": "string",
                "enum": [
                  "read",
                  "write",
                  "maintain",
                  "admin",
                  "custom"
                ],
                "description": "The access level granted to the team on the project."
              },
              "project-access": {
                "type": "object",
                "description": "Fine-grained project access permissions. Only meaningful when access is \"custom\".",
                "properties": {
                  "settings": {
                    "type": "string",
                    "enum": [
                      "read",
                      "update",
                      "delete"
                    ],
                    "description": "Permission level for project settings."
                  },
                  "teams": {
                    "type": "string",
                    "enum": [
                      "none",
                      "read",
                      "manage"
                    ],
                    "description": "Permission level for managing project teams."
                  },
                  "variable-sets": {
                    "type": "string",
                    "nullable": true,
                    "description": "Permission level for project variable sets."
                  }
                }
              },
              "workspace-access": {
                "type": "object",
                "description": "Fine-grained workspace access permissions. Only meaningful when access is \"custom\".",
                "properties": {
                  "create": {
                    "type": "boolean",
                    "description": "Whether the team can create workspaces in the project."
                  },
                  "move": {
                    "type": "boolean",
                    "description": "Whether the team can move workspaces into and out of the project."
                  },
                  "locking": {
                    "type": "boolean",
                    "description": "Whether the team can manually lock or unlock the project's workspaces."
                  },
                  "delete": {
                    "type": "boolean",
                    "description": "Whether the team can delete the project's workspaces."
                  },
                  "runs": {
                    "type": "string",
                    "enum": [
                      "read",
                      "plan",
                      "apply"
                    ],
                    "description": "Permission level for workspace runs."
                  },
                  "variables": {
                    "type": "string",
                    "enum": [
                      "none",
                      "read",
                      "write"
                    ],
                    "description": "Permission level for workspace variables."
                  },
                  "state-versions": {
                    "type": "string",
                    "enum": [
                      "none",
                      "read-outputs",
                      "read",
                      "write"
                    ],
                    "description": "Permission level for workspace state versions."
                  },
                  "sentinel-mocks": {
                    "type": "string",
                    "enum": [
                      "none",
                      "read"
                    ],
                    "description": "Permission level for workspace Sentinel mocks."
                  },
                  "run-tasks": {
                    "type": "boolean",
                    "description": "Whether the team can manage run tasks within the project's workspaces."
                  },
                  "policy-overrides": {
                    "type": "boolean",
                    "description": "Whether the team can override policy checks within the project's workspaces."
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "team": {
                "$ref": "#/components/schemas/teams-has-one"
              },
              "project": {
                "$ref": "#/components/schemas/projects-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              }
            }
          }
        }
      },
      "team-projects-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/team-projects"
          }
        }
      },
      "team-workspaces": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "team-workspaces"
            ]
          },
          "attributes": {
            "type": "object",
            "required": [
              "access"
            ],
            "properties": {
              "access": {
                "type": "string",
                "enum": [
                  "read",
                  "plan",
                  "write",
                  "admin",
                  "custom"
                ],
                "description": "The type of access the team has on the workspace. Valid values are read, plan, write, admin, or custom."
              },
              "runs": {
                "type": "string",
                "enum": [
                  "read",
                  "plan",
                  "apply"
                ],
                "description": "The permission for the workspace's runs. Can only be used when access is custom."
              },
              "variables": {
                "type": "string",
                "enum": [
                  "none",
                  "read",
                  "write"
                ],
                "description": "The permission for the workspace's variables. Can only be used when access is custom."
              },
              "state-versions": {
                "type": "string",
                "enum": [
                  "none",
                  "read-outputs",
                  "read",
                  "write"
                ],
                "description": "The permission for the workspace's state versions. Can only be used when access is custom."
              },
              "sentinel-mocks": {
                "type": "string",
                "enum": [
                  "none",
                  "read"
                ],
                "description": "The permission for the workspace's Sentinel mocks. Can only be used when access is custom."
              },
              "workspace-locking": {
                "type": "boolean",
                "description": "Whether the team can manually lock or unlock the workspace. Can only be used when access is custom."
              },
              "run-tasks": {
                "type": "boolean",
                "description": "Whether the team can manage run tasks within the workspace. Can only be used when access is custom."
              },
              "policy-overrides": {
                "type": "boolean",
                "description": "Whether the team can override policy checks for the workspace."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "team": {
                "$ref": "#/components/schemas/teams-has-one"
              },
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "team-workspaces-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/team-workspaces"
          }
        }
      },
      "integrations": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The external ID of the integration.",
            "example": "int-xxxxxxxxxxxxxxxx"
          },
          "type": {
            "type": "string",
            "enum": [
              "integrations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "The name of the integration.",
                "example": "Cloudability"
              },
              "provider": {
                "type": "string",
                "description": "The provider identifier for the integration.",
                "example": "cloudability"
              },
              "description": {
                "type": "string",
                "description": "A description of what the integration does.",
                "example": "Cloud cost management"
              },
              "homepage": {
                "type": "string",
                "description": "The homepage URL for the integration.",
                "example": "https://www.apptio.com/products/cloudability/"
              },
              "stages": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "The run stages where this integration can be used.",
                "example": [
                  "post_plan"
                ]
              },
              "params": {
                "type": "array",
                "description": "Ordered list of configuration parameters required by the integration.",
                "items": {
                  "type": "object",
                  "properties": {
                    "paramId": {
                      "type": "string",
                      "description": "Unique identifier for the parameter.",
                      "example": "api-url"
                    },
                    "name": {
                      "type": "string",
                      "description": "Display name for the parameter.",
                      "example": "API URL"
                    },
                    "kind": {
                      "type": "string",
                      "description": "The type of the parameter.",
                      "example": "url"
                    },
                    "sensitive": {
                      "type": "boolean",
                      "description": "Whether the parameter contains sensitive data.",
                      "example": false
                    },
                    "required": {
                      "type": "boolean",
                      "description": "Whether the parameter is required.",
                      "example": true
                    },
                    "description": {
                      "type": "string",
                      "description": "Description of the parameter.",
                      "example": "Provide the API URL from Cloudability"
                    },
                    "placeholder": {
                      "type": "string",
                      "description": "Optional placeholder shown in the input field.",
                      "example": "url.example.com"
                    },
                    "helpLinkText": {
                      "type": "string",
                      "description": "Optional helper link text shown alongside the parameter.",
                      "example": "Find out more"
                    },
                    "helpLinkUrl": {
                      "type": "string",
                      "description": "Optional helper link target.",
                      "example": "https://ibm.com/docs/en/cloudability-commercial/"
                    }
                  },
                  "required": [
                    "paramId",
                    "name",
                    "kind",
                    "required",
                    "sensitive",
                    "description"
                  ]
                }
              }
            },
            "required": [
              "name",
              "provider",
              "description",
              "homepage",
              "stages",
              "params"
            ]
          }
        },
        "required": [
          "id",
          "type",
          "attributes"
        ]
      },
      "ingress-attributes": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "ingress-attributes"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "branch": {
                "type": "string"
              },
              "clone-url": {
                "type": "string"
              },
              "commit-message": {
                "type": "string"
              },
              "commit-sha": {
                "type": "string"
              },
              "commit-url": {
                "type": "string"
              },
              "compare-url": {
                "type": "string"
              },
              "identifier": {
                "type": "string"
              },
              "is-pull-request": {
                "type": "boolean"
              },
              "on-default-branch": {
                "type": "boolean"
              },
              "pull-request-number": {
                "type": "integer"
              },
              "pull-request-url": {
                "type": "string"
              },
              "pull-request-title": {
                "type": "string"
              },
              "pull-request-body": {
                "type": "string"
              },
              "tag": {
                "type": "string",
                "nullable": true
              },
              "sender-username": {
                "type": "string"
              },
              "sender-avatar-url": {
                "type": "string"
              },
              "sender-html-url": {
                "type": "string"
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "created-by": {
                "$ref": "#/components/schemas/users-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "oauth-clients-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "oauth-clients"
            ]
          }
        }
      },
      "oauth-clients-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/oauth-clients-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "oauth-tokens-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "oauth-tokens"
            ]
          }
        }
      },
      "oauth-tokens-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/oauth-tokens-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "vcs-events": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "vcs-events"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "level": {
                "type": "string"
              },
              "message": {
                "type": "string",
                "nullable": true
              },
              "organization-id": {
                "type": "integer"
              },
              "suggested-action": {
                "type": "string",
                "nullable": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "oauth-client": {
                "$ref": "#/components/schemas/oauth-clients-has-one"
              },
              "oauth-token": {
                "$ref": "#/components/schemas/oauth-tokens-has-one"
              }
            }
          }
        }
      },
      "vcs-repo-check": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "An identifier for the repository check (typically the repository identifier)"
          },
          "type": {
            "type": "string",
            "enum": [
              "vcs-repo-check"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "exists": {
                "type": "boolean",
                "description": "Whether the repository exists and is accessible"
              },
              "identifier": {
                "type": "string",
                "description": "The repository identifier that was checked"
              }
            }
          }
        }
      },
      "vcs-repo-check-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/vcs-repo-check"
          }
        }
      },
      "registry-module-address-validations": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A unique identifier for this validation result"
          },
          "type": {
            "type": "string",
            "enum": [
              "registry-module-address-validations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "module-name": {
                "type": "string",
                "description": "The module name that was validated"
              },
              "provider-name": {
                "type": "string",
                "description": "The provider name that was validated"
              },
              "valid": {
                "type": "boolean",
                "description": "Whether the module name and provider combination is available"
              }
            }
          }
        }
      },
      "registry-module-address-validations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/registry-module-address-validations"
          }
        }
      },
      "registry-modules": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "registry-modules"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "readOnly": true
              },
              "namespace": {
                "type": "string",
                "readOnly": true
              },
              "provider": {
                "type": "string",
                "readOnly": true
              },
              "registry-name": {
                "type": "string",
                "readOnly": true
              },
              "status": {
                "type": "string",
                "readOnly": true
              },
              "publishing-mechanism": {
                "type": "string",
                "readOnly": true,
                "enum": [
                  "branch",
                  "git_tag",
                  "non_vcs"
                ]
              },
              "no-code": {
                "type": "boolean",
                "description": "Whether the module is a no-code module."
              },
              "version-statuses": {
                "type": "array",
                "readOnly": true,
                "items": {
                  "type": "object"
                }
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "vcs-repo": {
                "type": "object",
                "description": "The VCS connection and publishing settings for the module. Supplying a\nchanged `identifier`, `oauth-token-id`, or `github-app-installation-id`\nre-points the module to a different VCS source; supplying only\n`branch`, `tags`, or `tag-prefix` changes the publishing mechanism in\nplace.\n",
                "properties": {
                  "identifier": {
                    "type": "string",
                    "description": "The repository from which to ingress the configuration, e.g. \"org/repo\"."
                  },
                  "display-identifier": {
                    "type": "string",
                    "description": "The display identifier for the repository. For most VCS providers\noutside of Bitbucket Cloud, this matches `identifier`.\n"
                  },
                  "oauth-token-id": {
                    "type": "string",
                    "description": "The VCS Connection (OAuth Connection + Token) to use, obtained from\nthe oauth-tokens endpoint. Mutually exclusive with\n`github-app-installation-id`.\n"
                  },
                  "github-app-installation-id": {
                    "type": "string",
                    "description": "The VCS Connection GitHub App Installation to use. Mutually\nexclusive with `oauth-token-id`.\n"
                  },
                  "branch": {
                    "type": "string",
                    "description": "The repository branch to publish the module from (branch-based publishing)."
                  },
                  "tags": {
                    "type": "boolean",
                    "description": "Whether the module uses the tag-based publishing workflow."
                  },
                  "tag-prefix": {
                    "type": "string",
                    "nullable": true,
                    "description": "An optional prefix used to filter tags for tag-based publishing."
                  },
                  "ingress-submodules": {
                    "type": "boolean",
                    "description": "Whether submodules should be fetched when cloning the repository."
                  },
                  "source-directory": {
                    "type": "string",
                    "nullable": true,
                    "description": "The directory within the repository where the module is located."
                  }
                }
              },
              "test-config": {
                "type": "object",
                "nullable": true,
                "description": "Optional test configuration for the module. Present for branch-based\nmodules and non-VCS private modules, and `null` when the module has no\ntest configuration. Supplying `tests-enabled`, `agent-execution-mode`,\nor `agent-pool-id` configures testing for the module; when omitted,\ntesting defaults to disabled with remote execution.\n",
                "properties": {
                  "id": {
                    "type": "string",
                    "readOnly": true
                  },
                  "tests-enabled": {
                    "type": "boolean",
                    "default": false,
                    "description": "Whether testing is enabled for the module."
                  },
                  "agent-execution-mode": {
                    "type": "string",
                    "default": "remote",
                    "description": "The execution mode used to run tests.",
                    "enum": [
                      "remote",
                      "agent"
                    ]
                  },
                  "agent-pool-id": {
                    "type": "string",
                    "description": "The ID of the agent pool used when `agent-execution-mode` is `agent`.",
                    "nullable": true
                  },
                  "agent-pool-name": {
                    "type": "string",
                    "readOnly": true,
                    "description": "The name of the agent pool used when `agent-execution-mode` is `agent`.",
                    "nullable": true
                  }
                }
              },
              "permissions": {
                "type": "object",
                "readOnly": true,
                "properties": {
                  "can-delete": {
                    "type": "boolean"
                  },
                  "can-resync": {
                    "type": "boolean"
                  },
                  "can-retry": {
                    "type": "boolean"
                  }
                }
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/links_related"
              },
              "no-code-modules": {
                "$ref": "#/components/schemas/links_related"
              }
            }
          }
        }
      },
      "registry-modules-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/registry-modules"
          }
        }
      },
      "test-runs-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "test-runs"
            ]
          }
        }
      },
      "test-runs-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/test-runs-identifier"
          }
        }
      },
      "test-run-cleanups-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "test-run-cleanups"
            ]
          }
        }
      },
      "test-run-cleanups-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/test-run-cleanups-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "test-run-cleanups": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "test-run-cleanups"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "queued",
                  "running",
                  "finished",
                  "canceled",
                  "errored"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "additionalProperties": {
                  "type": "string",
                  "format": "date-time"
                }
              },
              "repair-mode": {
                "type": "boolean"
              },
              "filters": {
                "type": "array",
                "nullable": true,
                "items": {
                  "type": "string"
                }
              },
              "result-summary": {
                "type": "object",
                "additionalProperties": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "test-run": {
                "$ref": "#/components/schemas/test-runs-has-one"
              },
              "created-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "previous-test-run-cleanup": {
                "$ref": "#/components/schemas/test-run-cleanups-has-one"
              }
            }
          }
        }
      },
      "test-run-cleanups-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/test-run-cleanups"
          }
        }
      },
      "ssh-keys": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "The ID of the SSH key.",
            "example": "sshkey-xxxxxxxxxxxxxxxx"
          },
          "type": {
            "type": "string",
            "enum": [
              "ssh-keys"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "The name of the SSH key.",
                "example": "My SSH Key"
              },
              "value": {
                "type": "string",
                "writeOnly": true,
                "description": "The private key value. This is write-only and will not be returned in the response.",
                "example": "-----BEGIN RSA PRIVATE KEY-----\n..."
              }
            },
            "required": [
              "name"
            ]
          },
          "links": {
            "type": "object",
            "readOnly": true,
            "properties": {
              "self": {
                "type": "string",
                "description": "The path to the SSH key.",
                "example": "/api/v2/ssh-keys/sshkey-xxxxxxxxxxxxxxxx"
              }
            },
            "required": [
              "self"
            ]
          }
        }
      },
      "ssh-keys-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ssh-keys"
          }
        }
      },
      "workspace-change-requests": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-change-requests"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "subject": {
                "type": "string"
              },
              "message": {
                "type": "string",
                "nullable": true
              },
              "archived-at": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "readOnly": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              },
              "created-by": {
                "$ref": "#/components/schemas/users-has-one"
              },
              "archived-by-user": {
                "$ref": "#/components/schemas/users-has-one"
              }
            }
          }
        }
      },
      "workspace-change-requests-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/workspace-change-requests"
          }
        }
      },
      "oauth-tokens-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/oauth-tokens-identifier"
            }
          }
        }
      },
      "oauth-clients": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "oauth-clients"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "nullable": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "callback-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "connect-path": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "service-provider": {
                "type": "string"
              },
              "service-provider-display-name": {
                "type": "string",
                "readOnly": true
              },
              "http-url": {
                "type": "string",
                "nullable": true
              },
              "api-url": {
                "type": "string",
                "nullable": true
              },
              "key": {
                "type": "string",
                "nullable": true
              },
              "ado-entra-tenant-id": {
                "type": "string",
                "nullable": true
              },
              "secret": {
                "type": "string",
                "nullable": true
              },
              "rsa-public-key": {
                "type": "string",
                "nullable": true
              },
              "uuid": {
                "type": "string",
                "readOnly": true
              },
              "organization-scoped": {
                "type": "boolean"
              },
              "affected-workspaces": {
                "type": "array",
                "nullable": true,
                "items": {
                  "type": "string"
                }
              },
              "affected-workspaces-count": {
                "type": "integer",
                "nullable": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "projects": {
                "$ref": "#/components/schemas/projects-has-many"
              },
              "oauth-tokens": {
                "$ref": "#/components/schemas/oauth-tokens-has-many"
              }
            }
          }
        }
      },
      "oauth-clients-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/oauth-clients"
          }
        }
      },
      "oauth-tokens": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "oauth-tokens"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "service-provider-user": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "has-ssh-key": {
                "type": "boolean",
                "readOnly": true
              },
              "ssh-key": {
                "type": "string",
                "nullable": true,
                "writeOnly": true,
                "description": "The SSH private key. Write-only; use has-ssh-key to check if a key has been set."
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          },
          "relationships": {
            "type": "object",
            "properties": {
              "oauth-client": {
                "$ref": "#/components/schemas/oauth-clients-has-one"
              },
              "vcs-organizations": {
                "$ref": "#/components/schemas/links_related"
              }
            }
          }
        }
      },
      "oauth-tokens-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/oauth-tokens"
          }
        }
      },
      "authorized-repos": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "authorized-repos"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "readOnly": true
              },
              "display-identifier": {
                "type": "string",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "oauth-token": {
                "$ref": "#/components/schemas/oauth-tokens-has-one"
              }
            }
          }
        }
      },
      "vcs-organization": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "vcs-organization"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "readOnly": true
              }
            }
          }
        }
      },
      "github-app-installations": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "github-app-installations"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "nullable": true
              },
              "installation-id": {
                "type": "integer",
                "nullable": true
              },
              "icon-url": {
                "type": "string",
                "nullable": true
              },
              "installation-type": {
                "type": "string",
                "nullable": true
              },
              "installation-url": {
                "type": "string",
                "nullable": true
              },
              "disconnected": {
                "type": "boolean",
                "description": "True when GitHub no longer reports this installation."
              },
              "suspended": {
                "type": "boolean",
                "description": "True when the installation is suspended on GitHub."
              }
            }
          }
        }
      },
      "github-app-repos": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "github-app-repos"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "nullable": true
              },
              "identifier": {
                "type": "string",
                "nullable": true
              },
              "installation-id": {
                "type": "string",
                "nullable": true
              },
              "private": {
                "type": "boolean",
                "nullable": true
              }
            }
          }
        }
      },
      "github-app-installations-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/github-app-installations"
          }
        }
      },
      "workspace-tasks-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-tasks"
            ]
          }
        }
      },
      "workspace-tasks-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/workspace-tasks-identifier"
            }
          }
        }
      },
      "integrations-identifier": {
        "type": "object",
        "required": [
          "id",
          "type"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "integrations"
            ]
          }
        }
      },
      "integrations-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/integrations-identifier"
              }
            ],
            "nullable": true
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "tasks": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "tasks"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "category": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string",
                "nullable": true
              },
              "url": {
                "type": "string"
              },
              "hmac-key": {
                "type": "string",
                "nullable": true
              },
              "enabled": {
                "type": "boolean"
              },
              "params": {
                "type": "object",
                "additionalProperties": true,
                "nullable": true
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "global-configuration": {
                "type": "object",
                "properties": {
                  "enabled": {
                    "type": "boolean"
                  },
                  "stages": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "enforcement-level": {
                    "type": "string",
                    "nullable": true
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "workspace-tasks": {
                "$ref": "#/components/schemas/workspace-tasks-has-many"
              },
              "agent-pool": {
                "$ref": "#/components/schemas/agent-pools-has-one"
              },
              "integration": {
                "$ref": "#/components/schemas/integrations-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "tasks-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/tasks"
          }
        }
      },
      "tasks-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "tasks"
            ]
          }
        }
      },
      "tasks-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/tasks-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "workspace-tasks": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-tasks"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "enforcement-level": {
                "type": "string",
                "enum": [
                  "advisory",
                  "mandatory"
                ]
              },
              "stage": {
                "type": "string",
                "description": "Deprecated. Use `stages` instead. The stage in the run lifecycle when the run task should begin.\n"
              },
              "stages": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "task": {
                "$ref": "#/components/schemas/tasks-has-one"
              },
              "workspace": {
                "$ref": "#/components/schemas/workspaces-has-one"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "task-config-owner-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/organizations-identifier"
              }
            ]
          }
        }
      },
      "task-configs": {
        "type": "object",
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "task-configs"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "allowed-stages": {
                "type": "array",
                "description": "The run stages during which the task is evaluated.",
                "items": {
                  "type": "string",
                  "enum": [
                    "pre_plan",
                    "post_plan",
                    "pre_apply",
                    "post_apply"
                  ]
                }
              },
              "enforcement-level": {
                "type": "string",
                "description": "The enforcement level applied to the task's stages.",
                "enum": [
                  "advisory",
                  "mandatory"
                ]
              },
              "global": {
                "type": "boolean",
                "description": "Whether the task configuration applies to all child resources owned for the owner. When `false`, the configuration only applies to the associated projects.\n"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "task": {
                "$ref": "#/components/schemas/tasks-has-one"
              },
              "owner": {
                "$ref": "#/components/schemas/task-config-owner-has-one"
              },
              "organization": {
                "$ref": "#/components/schemas/organizations-has-one"
              },
              "projects": {
                "$ref": "#/components/schemas/projects-has-many"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "task-configs-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/task-configs"
          }
        }
      },
      "workspace-tasks-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/workspace-tasks"
          }
        }
      },
      "task-results-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "task-results"
            ]
          }
        }
      },
      "task-results-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/task-results-identifier"
            }
          }
        }
      },
      "policy-evaluations-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/policy-evaluations-identifier"
            }
          }
        }
      },
      "task-stages": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "task-stages"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "readOnly": true,
                "enum": [
                  "pending",
                  "running",
                  "passed",
                  "failed",
                  "awaiting_override",
                  "errored",
                  "canceled",
                  "unreachable"
                ]
              },
              "stage": {
                "type": "string",
                "readOnly": true,
                "description": "The run stage during which this task stage executes (e.g., post_plan, pre_plan, pre_apply, post_apply)."
              },
              "status-timestamps": {
                "type": "object",
                "nullable": true,
                "readOnly": true,
                "additionalProperties": true,
                "description": "A map of status names to timestamps indicating when the task stage entered each status. Keys are formatted as \"{status}-at\"."
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "permissions": {
                "type": "object",
                "readOnly": true,
                "properties": {
                  "can-override-policy": {
                    "type": "boolean"
                  },
                  "can-override-tasks": {
                    "type": "boolean"
                  },
                  "can-override": {
                    "type": "boolean"
                  }
                }
              },
              "actions": {
                "type": "object",
                "readOnly": true,
                "properties": {
                  "is-overridable": {
                    "type": "boolean"
                  }
                }
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "run": {
                "$ref": "#/components/schemas/runs-has-one"
              },
              "cost-estimate": {
                "$ref": "#/components/schemas/cost-estimates-has-one"
              },
              "task-results": {
                "$ref": "#/components/schemas/task-results-has-many"
              },
              "policy-evaluations": {
                "$ref": "#/components/schemas/policy-evaluations-has-many"
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "task-stages-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/task-stages"
          }
        }
      },
      "task-results": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "task-results",
              "task_results"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "message": {
                "type": "string",
                "nullable": true,
                "description": "A message describing the result of the run task execution."
              },
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "running",
                  "passed",
                  "failed",
                  "errored",
                  "canceled",
                  "unreachable"
                ]
              },
              "status-timestamps": {
                "type": "object",
                "nullable": true,
                "readOnly": true,
                "additionalProperties": true,
                "description": "A map of status names to timestamps indicating when the task result entered each status. Keys are formatted as \"{status}-at\"."
              },
              "url": {
                "type": "string",
                "nullable": true,
                "description": "A URL the run task integration provided with details about the task execution."
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "task-id": {
                "type": "string",
                "readOnly": true,
                "description": "The external ID of the run task."
              },
              "task-name": {
                "type": "string",
                "readOnly": true,
                "description": "The name of the run task."
              },
              "task-url": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "The URL of the run task definition."
              },
              "task-result-outcomes-count": {
                "type": "integer",
                "readOnly": true,
                "description": "The number of task result outcomes associated with this task result."
              },
              "stage": {
                "type": "string",
                "readOnly": true,
                "description": "The run stage during which this task result was created."
              },
              "is-speculative": {
                "type": "boolean",
                "readOnly": true,
                "description": "Whether the associated run is speculative (plan-only)."
              },
              "workspace-task-id": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "The external ID of the workspace task configuration."
              },
              "workspace-task-enforcement-level": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "The enforcement level of the workspace task (e.g., advisory, mandatory)."
              },
              "agent-pool-id": {
                "type": "string",
                "nullable": true,
                "readOnly": true,
                "description": "The external ID of the agent pool, when private run tasks are enabled."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "task-stage": {
                "$ref": "#/components/schemas/task-stages-has-one"
              },
              "task-result-outcomes": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "array",
                    "nullable": true,
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "task-result-outcomes"
                          ]
                        },
                        "attributes": {
                          "type": "object",
                          "properties": {
                            "outcome-id": {
                              "type": "string"
                            },
                            "description": {
                              "type": "string"
                            },
                            "url": {
                              "type": "string",
                              "nullable": true
                            },
                            "body": {
                              "type": "string",
                              "nullable": true
                            },
                            "tags": {
                              "type": "object",
                              "nullable": true,
                              "additionalProperties": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "label": {
                                      "type": "string"
                                    },
                                    "level": {
                                      "type": "string"
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  },
                  "links": {
                    "$ref": "#/components/schemas/related"
                  }
                }
              }
            }
          },
          "links": {
            "$ref": "#/components/schemas/self"
          }
        }
      },
      "task-results-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/task-results"
          }
        }
      },
      "task-results-has-one": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/task-results-identifier"
          },
          "links": {
            "$ref": "#/components/schemas/related"
          }
        }
      },
      "task-result-outcomes": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "task-result-outcomes"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "outcome-id": {
                "type": "string",
                "description": "A unique identifier for this outcome within the run task result."
              },
              "description": {
                "type": "string",
                "description": "A human-readable description of this outcome."
              },
              "tags": {
                "type": "array",
                "nullable": true,
                "items": {
                  "type": "object",
                  "properties": {
                    "label": {
                      "type": "string",
                      "description": "The tag category name."
                    },
                    "value": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "label": {
                            "type": "string"
                          },
                          "level": {
                            "type": "string"
                          }
                        }
                      }
                    }
                  }
                },
                "description": "An array of tag category objects. Each object has a label (category name) and a value array of tag entries with label and level fields."
              },
              "url": {
                "type": "string",
                "nullable": true,
                "description": "A URL with additional details about this outcome."
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "task-result": {
                "$ref": "#/components/schemas/task-results-has-one"
              }
            }
          },
          "links": {
            "type": "object",
            "properties": {
              "self": {
                "type": "string"
              },
              "body": {
                "type": "string",
                "nullable": true,
                "description": "URL to download the outcome body. Only present when the run task integration uploaded a body for this outcome."
              }
            }
          }
        }
      },
      "task-result-outcomes-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/task-result-outcomes"
          }
        }
      },
      "workspace-transfer-events-identifier": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-transfer-events"
            ]
          }
        }
      },
      "workspace-transfer-events-has-many": {
        "type": "object",
        "nullable": true,
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/workspace-transfer-events-identifier"
            }
          }
        }
      },
      "workspace-transfers": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "enum": [
              "workspace-transfers"
            ]
          },
          "attributes": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "enum": [
                  "pending",
                  "in_progress",
                  "paused",
                  "completed",
                  "failed",
                  "canceled"
                ],
                "readOnly": true
              },
              "pause-reason": {
                "type": "string",
                "enum": [
                  "awaiting_approval",
                  "source_workspace_deletion_stuck"
                ],
                "readOnly": true,
                "nullable": true
              },
              "approval-mode": {
                "type": "string",
                "enum": [
                  "required",
                  "auto"
                ],
                "default": "required"
              },
              "cleanup-on-failure": {
                "type": "boolean",
                "default": false,
                "description": "Auto-delete partial destination workspace on failure"
              },
              "history-cutoff": {
                "type": "string",
                "format": "date-time",
                "nullable": true,
                "description": "Copy runs and state versions after this date. Null copies all history."
              },
              "policy-set-mode": {
                "type": "string",
                "enum": [
                  "attach",
                  "skip"
                ],
                "default": "attach"
              },
              "variable-mode": {
                "type": "string",
                "enum": [
                  "copy",
                  "skip"
                ],
                "default": "copy"
              },
              "workspace-prefix": {
                "type": "string",
                "nullable": true,
                "description": "Prepended to workspace name in destination"
              },
              "workspace-suffix": {
                "type": "string",
                "nullable": true,
                "description": "Appended to workspace name in destination"
              },
              "source-workspace-id": {
                "type": "string",
                "readOnly": true
              },
              "destination-workspace-id": {
                "type": "string",
                "nullable": true,
                "readOnly": true
              },
              "source-organization-id": {
                "type": "string",
                "readOnly": true
              },
              "destination-organization-id": {
                "type": "string"
              },
              "destination-project-id": {
                "type": "string"
              },
              "created-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              },
              "updated-at": {
                "type": "string",
                "format": "date-time",
                "readOnly": true
              }
            }
          },
          "relationships": {
            "type": "object",
            "properties": {
              "events": {
                "$ref": "#/components/schemas/workspace-transfer-events-has-many"
              }
            }
          }
        }
      },
      "workspace-transfers-envelope": {
        "type": "object",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "$ref": "#/components/schemas/workspace-transfers"
          }
        }
      }
    },
    "parameters": {
      "page_number": {
        "name": "page[number]",
        "in": "query",
        "description": "The page number to retrieve.",
        "schema": {
          "type": "integer",
          "example": 1
        }
      },
      "page_size": {
        "name": "page[size]",
        "in": "query",
        "description": "The number of items to retrieve per page. Defaults to 20.",
        "schema": {
          "type": "integer",
          "example": 20
        }
      }
    }
  }
}