{
  "openapi": "3.1.0",
  "paths": {
    "/unified/iam/users": {
      "get": {
        "operationId": "iam_list_users",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,first_name,last_name,name,primary_email_address,username,roles,groups,status,avatar,is_bot_user,last_active_at,last_login_at,created_at,updated_at,multi_factor_enabled,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "filter",
            "required": false,
            "in": "query",
            "description": "Filter parameters that allow greater customisation of the list response. Filter support varies per connector — unsupported keys are ignored.",
            "explode": true,
            "style": "deepObject",
            "schema": {
              "properties": {
                "updated_after": {
                  "description": "Use a string with a date to only select results updated after that given date",
                  "example": "2020-01-01T00:00:00.000Z",
                  "type": "string",
                  "format": "date-time",
                  "nullable": true
                },
                "email": {
                  "description": "Filter users by primary email address.",
                  "example": "user@example.com",
                  "type": "string",
                  "nullable": true
                },
                "group_id": {
                  "description": "Filter users by group membership.",
                  "example": "group_123",
                  "type": "string",
                  "nullable": true
                },
                "role_id": {
                  "description": "Filter users by role assignment.",
                  "example": "role_admin",
                  "type": "string",
                  "nullable": true
                },
                "organization_id": {
                  "description": "Filter users by owning organization / tenant.",
                  "example": "org_456",
                  "type": "string",
                  "nullable": true
                }
              },
              "additionalProperties": false,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "The page number of the results to fetch",
            "deprecated": true,
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "page_size",
            "required": false,
            "in": "query",
            "description": "The number of results per page (default value is 25)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "next",
            "required": false,
            "in": "query",
            "description": "The unified cursor",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "updated_after",
            "required": false,
            "in": "query",
            "description": "Use a string with a date to only select results updated after that given date",
            "deprecated": true,
            "schema": {
              "format": "date-time",
              "nullable": true,
              "example": "2020-01-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "roles,groups,permissions",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of users was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamUsersPaginated"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "List Users",
        "tags": [
          "Users"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "list_users",
        "x-speakeasy-pagination": {
          "type": "cursor",
          "inputs": [
            {
              "name": "next",
              "in": "parameters",
              "type": "cursor"
            }
          ],
          "outputs": {
            "nextCursor": "$.next"
          }
        },
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/users/{id}": {
      "get": {
        "operationId": "iam_get_user",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,first_name,last_name,name,primary_email_address,username,roles,groups,status,avatar,is_bot_user,last_active_at,last_login_at,created_at,updated_at,multi_factor_enabled,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "roles,groups,permissions",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The user with the given identifier was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamUserResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Get User",
        "tags": [
          "Users"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "get_user",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      },
      "patch": {
        "operationId": "iam_update_user",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IamUpdateUserRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Record updated successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Update User",
        "tags": [
          "Users"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "update_user",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      },
      "delete": {
        "operationId": "iam_delete_user",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The user was deleted successfully.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeleteResult"
                }
              }
            }
          },
          "204": {
            "description": "The user was deleted successfully but no content was returned."
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Delete User",
        "tags": [
          "Users"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "delete_user",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/roles": {
      "get": {
        "operationId": "iam_list_roles",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,name,type,policies,description,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "filter",
            "required": false,
            "in": "query",
            "description": "Filter parameters that allow greater customisation of the list response",
            "explode": true,
            "style": "deepObject",
            "schema": {
              "properties": {
                "updated_after": {
                  "description": "Use a string with a date to only select results updated after that given date",
                  "example": "2020-01-01T00:00:00.000Z",
                  "type": "string",
                  "format": "date-time",
                  "nullable": true,
                  "additionalProperties": false
                }
              },
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "The page number of the results to fetch",
            "deprecated": true,
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "page_size",
            "required": false,
            "in": "query",
            "description": "The number of results per page (default value is 25)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "next",
            "required": false,
            "in": "query",
            "description": "The unified cursor",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "updated_after",
            "required": false,
            "in": "query",
            "description": "Use a string with a date to only select results updated after that given date",
            "deprecated": true,
            "schema": {
              "format": "date-time",
              "nullable": true,
              "example": "2020-01-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "policies,permissions",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of roles was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamRolesPaginated"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "List Roles",
        "tags": [
          "Roles"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "list_roles",
        "x-speakeasy-pagination": {
          "type": "cursor",
          "inputs": [
            {
              "name": "next",
              "in": "parameters",
              "type": "cursor"
            }
          ],
          "outputs": {
            "nextCursor": "$.next"
          }
        },
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/roles/{id}": {
      "get": {
        "operationId": "iam_get_role",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,name,type,policies,description,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "policies,permissions",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The role with the given identifier was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamRoleResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Get Role",
        "tags": [
          "Roles"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "get_role",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/groups": {
      "get": {
        "operationId": "iam_list_groups",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,parent_id,remote_parent_id,name,description,roles,type,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "filter",
            "required": false,
            "in": "query",
            "description": "Filter parameters that allow greater customisation of the list response",
            "explode": true,
            "style": "deepObject",
            "schema": {
              "properties": {
                "updated_after": {
                  "description": "Use a string with a date to only select results updated after that given date",
                  "example": "2020-01-01T00:00:00.000Z",
                  "type": "string",
                  "format": "date-time",
                  "nullable": true,
                  "additionalProperties": false
                }
              },
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "The page number of the results to fetch",
            "deprecated": true,
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "page_size",
            "required": false,
            "in": "query",
            "description": "The number of results per page (default value is 25)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "next",
            "required": false,
            "in": "query",
            "description": "The unified cursor",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "updated_after",
            "required": false,
            "in": "query",
            "description": "Use a string with a date to only select results updated after that given date",
            "deprecated": true,
            "schema": {
              "format": "date-time",
              "nullable": true,
              "example": "2020-01-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "roles,users",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of groups was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamGroupsPaginated"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "List Groups",
        "tags": [
          "Groups"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "list_groups",
        "x-speakeasy-pagination": {
          "type": "cursor",
          "inputs": [
            {
              "name": "next",
              "in": "parameters",
              "type": "cursor"
            }
          ],
          "outputs": {
            "nextCursor": "$.next"
          }
        },
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/groups/{id}": {
      "get": {
        "operationId": "iam_get_group",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,parent_id,remote_parent_id,name,description,roles,type,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "roles,users",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The group with the given identifier was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamGroupResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Get Group",
        "tags": [
          "Groups"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "get_group",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/organizations": {
      "get": {
        "operationId": "iam_list_organizations",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,remote_remote_id,name,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "filter",
            "required": false,
            "in": "query",
            "description": "Filter parameters that allow greater customisation of the list response",
            "explode": true,
            "style": "deepObject",
            "schema": {
              "properties": {
                "updated_after": {
                  "description": "Use a string with a date to only select results updated after that given date",
                  "example": "2020-01-01T00:00:00.000Z",
                  "type": "string",
                  "format": "date-time",
                  "nullable": true,
                  "additionalProperties": false
                }
              },
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "The page number of the results to fetch",
            "deprecated": true,
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "page_size",
            "required": false,
            "in": "query",
            "description": "The number of results per page (default value is 25)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "next",
            "required": false,
            "in": "query",
            "description": "The unified cursor",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "updated_after",
            "required": false,
            "in": "query",
            "description": "Use a string with a date to only select results updated after that given date",
            "deprecated": true,
            "schema": {
              "format": "date-time",
              "nullable": true,
              "example": "2020-01-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of organizations was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamOrganizationsPaginated"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "List Organizations",
        "tags": [
          "Organizations"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "list_organizations",
        "x-speakeasy-pagination": {
          "type": "cursor",
          "inputs": [
            {
              "name": "next",
              "in": "parameters",
              "type": "cursor"
            }
          ],
          "outputs": {
            "nextCursor": "$.next"
          }
        },
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/organizations/{id}": {
      "get": {
        "operationId": "iam_get_organization",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,remote_remote_id,name,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The organization with the given identifier was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamOrganizationResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Get Organization",
        "tags": [
          "Organizations"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "get_organization",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/me": {
      "get": {
        "operationId": "iam_get_me",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "name,auth_type,scopes,permissions,last_accessed_at,user,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The current connection credentials (name, auth type, scopes, permissions, last accessed).",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamCredentialsResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Get Me",
        "tags": [
          "Me"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "get_me",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/resource_types": {
      "get": {
        "operationId": "iam_list_resource_types",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields to return in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The supported resource type identifiers for this provider were retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamResourceTypesResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "List Resource Types",
        "tags": [
          "Resource Types"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "list_resource_types",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/resource_users": {
      "get": {
        "operationId": "iam_list_resource_users",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields to return in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "filter",
            "required": false,
            "in": "query",
            "description": "Filter parameters that allow greater customisation of the list response",
            "explode": true,
            "style": "deepObject",
            "schema": {
              "properties": {
                "updated_after": {
                  "description": "Use a string with a date to only select results updated after that given date",
                  "example": "2020-01-01T00:00:00.000Z",
                  "type": "string",
                  "format": "date-time",
                  "nullable": true,
                  "additionalProperties": false
                }
              },
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "The page number of the results to fetch",
            "deprecated": true,
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "page_size",
            "required": false,
            "in": "query",
            "description": "The number of results per page (default value is 25)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "next",
            "required": false,
            "in": "query",
            "description": "The unified cursor",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "updated_after",
            "required": false,
            "in": "query",
            "description": "Use a string with a date to only select results updated after that given date",
            "deprecated": true,
            "schema": {
              "format": "date-time",
              "nullable": true,
              "example": "2020-01-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "name": "resource_type",
            "required": true,
            "in": "query",
            "description": "The kind of resource to scope the user list to. Use GET /unified/iam/resource_types to discover provider-supported values.",
            "schema": {
              "example": "group",
              "type": "string"
            }
          },
          {
            "name": "resource_id",
            "required": true,
            "in": "query",
            "description": "The id of the specific resource. For Google Directory groups this must be the raw remote_id (or group email), NOT the StackOne-encoded id.",
            "schema": {
              "example": "02xcytpi2f2g0na",
              "type": "string"
            }
          },
          {
            "name": "cursor",
            "required": false,
            "in": "query",
            "description": "Provider-specific raw pagination cursor. On Google Directory this is Google's nextPageToken from a prior response. Note: this connector does not yet wrap the cursor as a unified next-cursor — pass it raw. Mutually exclusive with the standard `next` query parameter.",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Users with access to the specified resource were retrieved, with their resource-scoped roles populated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamUsersPaginated"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "List Resource Users",
        "tags": [
          "Resource Users"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "list_resource_users",
        "x-speakeasy-pagination": {
          "type": "cursor",
          "inputs": [
            {
              "name": "next",
              "in": "parameters",
              "type": "cursor"
            }
          ],
          "outputs": {
            "nextCursor": "$.next"
          }
        },
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/policies": {
      "get": {
        "operationId": "iam_list_policies",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,name,permissions,description,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "filter",
            "required": false,
            "in": "query",
            "description": "Filter parameters that allow greater customisation of the list response",
            "explode": true,
            "style": "deepObject",
            "schema": {
              "properties": {
                "updated_after": {
                  "description": "Use a string with a date to only select results updated after that given date",
                  "example": "2020-01-01T00:00:00.000Z",
                  "type": "string",
                  "format": "date-time",
                  "nullable": true,
                  "additionalProperties": false
                }
              },
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "The page number of the results to fetch",
            "deprecated": true,
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "page_size",
            "required": false,
            "in": "query",
            "description": "The number of results per page (default value is 25)",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "next",
            "required": false,
            "in": "query",
            "description": "The unified cursor",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "name": "updated_after",
            "required": false,
            "in": "query",
            "description": "Use a string with a date to only select results updated after that given date",
            "deprecated": true,
            "schema": {
              "format": "date-time",
              "nullable": true,
              "example": "2020-01-01T00:00:00.000Z",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "permissions",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The list of policies was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamPoliciesPaginated"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "List Policies",
        "tags": [
          "Policies"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "list_policies",
        "x-speakeasy-pagination": {
          "type": "cursor",
          "inputs": [
            {
              "name": "next",
              "in": "parameters",
              "type": "cursor"
            }
          ],
          "outputs": {
            "nextCursor": "$.next"
          }
        },
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    },
    "/unified/iam/policies/{id}": {
      "get": {
        "operationId": "iam_get_policy",
        "parameters": [
          {
            "name": "x-account-id",
            "in": "header",
            "description": "The account identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "required": true,
            "in": "path",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "raw",
            "required": false,
            "in": "query",
            "description": "Indicates that the raw request result should be returned in addition to the mapped result (default value is false)",
            "schema": {
              "nullable": true,
              "type": "boolean"
            }
          },
          {
            "name": "proxy",
            "required": false,
            "in": "query",
            "description": "Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key",
            "style": "deepObject",
            "explode": true,
            "schema": {
              "additionalProperties": true,
              "nullable": true,
              "type": "object"
            }
          },
          {
            "name": "fields",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be returned in the response (if empty, all fields are returned)",
            "schema": {
              "nullable": true,
              "example": "id,remote_id,name,permissions,description,created_at,updated_at,unified_custom_fields",
              "type": "string"
            }
          },
          {
            "name": "expand",
            "required": false,
            "in": "query",
            "description": "The comma separated list of fields that will be expanded in the response",
            "schema": {
              "nullable": true,
              "example": "permissions",
              "type": "string"
            }
          },
          {
            "name": "Prefer",
            "in": "header",
            "required": false,
            "description": "Set to \"heartbeat\" to enable keep-alive newline heartbeats during long-running requests. Response includes Preference-Applied: heartbeat header when honored. (RFC 7240)",
            "schema": {
              "type": "string",
              "example": "heartbeat"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The policy with the given identifier was retrieved.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IamPolicyResult"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized access.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            }
          },
          "404": {
            "description": "Resource not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            }
          },
          "408": {
            "description": "The request has timed out.",
            "headers": {
              "Retry-After": {
                "description": "A time in seconds after which the request can be retried.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RequestTimedOutResponse"
                }
              }
            }
          },
          "409": {
            "description": "Conflict with current state.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConflictResponse"
                }
              }
            }
          },
          "412": {
            "description": "Precondition failed: linked account belongs to a disabled integration.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreconditionFailedResponse"
                }
              }
            }
          },
          "422": {
            "description": "Validation error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponse"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TooManyRequestsResponse"
                }
              }
            }
          },
          "500": {
            "description": "Server error while executing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                }
              }
            }
          },
          "501": {
            "description": "This functionality is not implemented.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            }
          },
          "502": {
            "description": "Bad gateway error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadGatewayResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "basic": []
          }
        ],
        "summary": "Get Policy",
        "tags": [
          "Policies"
        ],
        "x-speakeasy-group": "iam",
        "x-speakeasy-name-override": "get_policy",
        "x-speakeasy-retries": {
          "statusCodes": [
            429,
            408
          ],
          "strategy": "backoff"
        }
      }
    }
  },
  "info": {
    "title": "IAM",
    "description": "The documentation for the StackOne Unified API - IAM",
    "version": "1.0.0",
    "contact": {}
  },
  "tags": [
    {
      "name": "Users",
      "description": "People or accounts with access to the system."
    },
    {
      "name": "Roles",
      "description": "Roles assigned to users for access control."
    },
    {
      "name": "Groups",
      "description": "Groups for organizing users."
    },
    {
      "name": "Organizations",
      "description": "Organizations or tenants. Users and groups belong to an organization via organization_id."
    },
    {
      "name": "Me",
      "description": "The currently authenticated connection and, where available, the associated user."
    },
    {
      "name": "Credentials",
      "description": "The currently authenticated connection: name, auth type, OAuth scopes, permissions, last accessed."
    },
    {
      "name": "Resource Types",
      "description": "Resource type identifiers supported by this provider for resource-scoped queries (input to /resource_users)."
    },
    {
      "name": "Resource Users",
      "description": "Users with access to a specific resource, with their resource-scoped roles and permissions auto-populated."
    },
    {
      "name": "Policies",
      "description": "Security and access policies."
    },
    {
      "name": "Permissions",
      "description": "Specific permissions granted to users or roles."
    },
    {
      "name": "Resources",
      "description": "Resources that can be accessed or managed."
    }
  ],
  "servers": [
    {
      "url": "https://api.stackone.com"
    }
  ],
  "components": {
    "securitySchemes": {
      "basic": {
        "type": "http",
        "scheme": "basic"
      }
    },
    "schemas": {
      "BadGatewayResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 502
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Bad Gateway"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "BadRequestResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 400
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Bad Request"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          },
          "data": {
            "description": "Error details",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UnifiedError"
              }
            ]
          },
          "provider_errors": {
            "description": "List of provider-specific errors",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderError"
            }
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "ConflictResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 409
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Conflict"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "Content": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "URL where the file content is located",
            "example": "https://example.com/file.pdf",
            "nullable": true
          },
          "unified_url": {
            "type": "string",
            "description": "Unified download URL for retrieving file content.",
            "example": "https://api.stackone.com/unified/hris/employees/12345/documents/67890/download",
            "nullable": true
          },
          "file_format": {
            "description": "The file format of the file",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/FileFormatEnum"
              }
            ]
          }
        }
      },
      "DeleteResult": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "example": 204
          },
          "message": {
            "type": "string",
            "example": "Record deleted successfully."
          },
          "timestamp": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "File": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The name of the file",
            "example": "My Document",
            "nullable": true
          },
          "category": {
            "description": "The category of the file",
            "example": "templates, forms, backups, etc.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/FileCategoryEnumApiModel"
              }
            ]
          },
          "contents": {
            "description": "The content of the file. Deprecated, use `url` and `file_format` one level up instead",
            "deprecated": true,
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Content"
            }
          },
          "category_id": {
            "type": "string",
            "description": "The categoryId of the documents",
            "example": "6530",
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "description": "The creation date of the file",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "description": "The update date of the file",
            "example": "2021-01-02T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "remote_url": {
            "type": "string",
            "description": "URL where the file content is located",
            "example": "https://example.com/file.pdf",
            "nullable": true
          },
          "file_format": {
            "description": "The file format of the file",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/FileFormatEnum"
              }
            ]
          }
        }
      },
      "FileCategoryEnumApiModel": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The category of the file",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      },
      "FileFormatEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The file format of the file, expressed as a file extension",
            "enum": [
              "unmapped_value",
              "ez",
              "aw",
              "atom",
              "atomcat",
              "atomdeleted",
              "atomsvc",
              "dwd",
              "held",
              "rsat",
              "bdoc",
              "xcs",
              "ccxml",
              "cdfx",
              "cdmia",
              "cdmic",
              "cdmid",
              "cdmio",
              "cdmiq",
              "cu",
              "mpd",
              "davmount",
              "dbk",
              "dssc",
              "xdssc",
              "es",
              "ecma",
              "emma",
              "emotionml",
              "epub",
              "exi",
              "exp",
              "fdt",
              "pfr",
              "geojson",
              "gml",
              "gpx",
              "gxf",
              "gz",
              "hjson",
              "stk",
              "ink",
              "inkml",
              "ipfix",
              "its",
              "jar",
              "war",
              "ear",
              "ser",
              "class",
              "js",
              "mjs",
              "json",
              "map",
              "json5",
              "jsonml",
              "jsonld",
              "lgr",
              "lostxml",
              "hqx",
              "cpt",
              "mads",
              "webmanifest",
              "mrc",
              "mrcx",
              "ma",
              "nb",
              "mb",
              "mathml",
              "mbox",
              "mscml",
              "metalink",
              "meta4",
              "mets",
              "maei",
              "musd",
              "mods",
              "m21",
              "mp21",
              "mp4s",
              "m4p",
              "doc",
              "dot",
              "mxf",
              "nq",
              "nt",
              "cjs",
              "bin",
              "dms",
              "lrf",
              "mar",
              "so",
              "dist",
              "distz",
              "pkg",
              "bpk",
              "dump",
              "elc",
              "deploy",
              "exe",
              "dll",
              "deb",
              "dmg",
              "iso",
              "img",
              "msi",
              "msp",
              "msm",
              "buffer",
              "oda",
              "opf",
              "ogx",
              "omdoc",
              "onetoc",
              "onetoc2",
              "onetmp",
              "onepkg",
              "oxps",
              "relo",
              "xer",
              "pdf",
              "pgp",
              "asc",
              "sig",
              "prf",
              "p10",
              "p7m",
              "p7c",
              "p7s",
              "p8",
              "ac",
              "cer",
              "crl",
              "pkipath",
              "pki",
              "pls",
              "ai",
              "eps",
              "ps",
              "provx",
              "pskcxml",
              "raml",
              "rdf",
              "owl",
              "rif",
              "rnc",
              "rl",
              "rld",
              "rs",
              "rapd",
              "sls",
              "rusd",
              "gbr",
              "mft",
              "roa",
              "rsd",
              "rss",
              "rtf",
              "sbml",
              "scq",
              "scs",
              "spq",
              "spp",
              "sdp",
              "senmlx",
              "sensmlx",
              "setpay",
              "setreg",
              "shf",
              "siv",
              "sieve",
              "smi",
              "smil",
              "rq",
              "srx",
              "gram",
              "grxml",
              "sru",
              "ssdl",
              "ssml",
              "swidtag",
              "tei",
              "teicorpus",
              "tfi",
              "tsd",
              "toml",
              "trig",
              "ttml",
              "ubj",
              "rsheet",
              "td",
              "vxml",
              "wasm",
              "wgt",
              "hlp",
              "wsdl",
              "wspolicy",
              "xaml",
              "xav",
              "xca",
              "xdf",
              "xel",
              "xns",
              "xenc",
              "xhtml",
              "xht",
              "xlf",
              "xml",
              "xsl",
              "xsd",
              "rng",
              "dtd",
              "xop",
              "xpl",
              "*xsl",
              "xslt",
              "xspf",
              "mxml",
              "xhvml",
              "xvml",
              "xvm",
              "yang",
              "yin",
              "zip",
              "*3gpp",
              "adp",
              "amr",
              "au",
              "snd",
              "mid",
              "midi",
              "kar",
              "rmi",
              "mxmf",
              "*mp3",
              "m4a",
              "mp4a",
              "mpga",
              "mp2",
              "mp2a",
              "mp3",
              "m2a",
              "m3a",
              "oga",
              "ogg",
              "spx",
              "opus",
              "s3m",
              "sil",
              "wav",
              "*wav",
              "weba",
              "xm",
              "ttc",
              "otf",
              "ttf",
              "woff",
              "woff2",
              "exr",
              "apng",
              "avif",
              "bmp",
              "cgm",
              "drle",
              "emf",
              "fits",
              "g3",
              "gif",
              "heic",
              "heics",
              "heif",
              "heifs",
              "hej2",
              "hsj2",
              "ief",
              "jls",
              "jp2",
              "jpg2",
              "jpeg",
              "jpg",
              "jpe",
              "jph",
              "jhc",
              "jpm",
              "jpx",
              "jpf",
              "jxr",
              "jxra",
              "jxrs",
              "jxs",
              "jxsc",
              "jxsi",
              "jxss",
              "ktx",
              "ktx2",
              "png",
              "sgi",
              "svg",
              "svgz",
              "t38",
              "tif",
              "tiff",
              "tfx",
              "webp",
              "wmf",
              "disposition-notification",
              "u8msg",
              "u8dsn",
              "u8mdn",
              "u8hdr",
              "eml",
              "mime",
              "3mf",
              "gltf",
              "glb",
              "igs",
              "iges",
              "msh",
              "mesh",
              "silo",
              "mtl",
              "obj",
              "stpx",
              "stpz",
              "stpxz",
              "stl",
              "wrl",
              "vrml",
              "*x3db",
              "x3dbz",
              "x3db",
              "*x3dv",
              "x3dvz",
              "x3d",
              "x3dz",
              "x3dv",
              "appcache",
              "manifest",
              "ics",
              "ifb",
              "coffee",
              "litcoffee",
              "css",
              "csv",
              "html",
              "htm",
              "shtml",
              "jade",
              "jsx",
              "less",
              "markdown",
              "md",
              "mml",
              "mdx",
              "n3",
              "txt",
              "text",
              "conf",
              "def",
              "list",
              "log",
              "in",
              "ini",
              "rtx",
              "*rtf",
              "sgml",
              "sgm",
              "shex",
              "slim",
              "slm",
              "spdx",
              "stylus",
              "styl",
              "tsv",
              "t",
              "tr",
              "roff",
              "man",
              "me",
              "ms",
              "ttl",
              "uri",
              "uris",
              "urls",
              "vcard",
              "vtt",
              "*xml",
              "yaml",
              "yml",
              "3gp",
              "3gpp",
              "3g2",
              "h261",
              "h263",
              "h264",
              "m4s",
              "jpgv",
              "*jpm",
              "jpgm",
              "mj2",
              "mjp2",
              "ts",
              "mp4",
              "mp4v",
              "mpg4",
              "mpeg",
              "mpg",
              "mpe",
              "m1v",
              "m2v",
              "ogv",
              "qt",
              "mov",
              "webm",
              "cww",
              "1km",
              "plb",
              "psb",
              "pvb",
              "tcap",
              "pwn",
              "aso",
              "imp",
              "acu",
              "atc",
              "acutc",
              "air",
              "fcdt",
              "fxp",
              "fxpl",
              "xdp",
              "xfdf",
              "ahead",
              "azf",
              "azs",
              "azw",
              "acc",
              "ami",
              "apk",
              "cii",
              "fti",
              "atx",
              "mpkg",
              "key",
              "m3u8",
              "numbers",
              "pages",
              "pkpass",
              "swi",
              "iota",
              "aep",
              "bmml",
              "mpm",
              "bmi",
              "rep",
              "cdxml",
              "mmd",
              "cdy",
              "csl",
              "cla",
              "rp9",
              "c4g",
              "c4d",
              "c4f",
              "c4p",
              "c4u",
              "c11amc",
              "c11amz",
              "csp",
              "cdbcmsg",
              "cmc",
              "clkx",
              "clkk",
              "clkp",
              "clkt",
              "clkw",
              "wbs",
              "pml",
              "ppd",
              "car",
              "pcurl",
              "dart",
              "rdz",
              "dbf",
              "uvf",
              "uvvf",
              "uvd",
              "uvvd",
              "uvt",
              "uvvt",
              "uvx",
              "uvvx",
              "uvz",
              "uvvz",
              "fe_launch",
              "dna",
              "mlp",
              "mle",
              "dpg",
              "dfac",
              "kpxx",
              "ait",
              "svc",
              "geo",
              "mag",
              "nml",
              "esf",
              "msf",
              "qam",
              "slt",
              "ssf",
              "es3",
              "et3",
              "ez2",
              "ez3",
              "fdf",
              "mseed",
              "seed",
              "dataless",
              "gph",
              "ftc",
              "fm",
              "frame",
              "maker",
              "book",
              "fnc",
              "ltf",
              "fsc",
              "oas",
              "oa2",
              "oa3",
              "fg5",
              "bh2",
              "ddd",
              "xdw",
              "xbd",
              "fzs",
              "txd",
              "ggb",
              "ggt",
              "gex",
              "gre",
              "gxt",
              "g2w",
              "g3w",
              "gmx",
              "gdoc",
              "gslides",
              "gsheet",
              "kml",
              "kmz",
              "gqf",
              "gqs",
              "gac",
              "ghf",
              "gim",
              "grv",
              "gtm",
              "tpl",
              "vcg",
              "hal",
              "zmm",
              "hbci",
              "les",
              "hpgl",
              "hpid",
              "hps",
              "jlt",
              "pcl",
              "pclxl",
              "sfd-hdstx",
              "mpy",
              "afp",
              "listafp",
              "list3820",
              "irm",
              "sc",
              "icc",
              "icm",
              "igl",
              "ivp",
              "ivu",
              "igm",
              "xpw",
              "xpx",
              "i2g",
              "qbo",
              "qfx",
              "rcprofile",
              "irp",
              "xpr",
              "fcs",
              "jam",
              "rms",
              "jisp",
              "joda",
              "ktz",
              "ktr",
              "karbon",
              "chrt",
              "kfo",
              "flw",
              "kon",
              "kpr",
              "kpt",
              "ksp",
              "kwd",
              "kwt",
              "htke",
              "kia",
              "kne",
              "knp",
              "skp",
              "skd",
              "skt",
              "skm",
              "sse",
              "lasxml",
              "lbd",
              "lbe",
              "apr",
              "pre",
              "nsf",
              "org",
              "scm",
              "lwp",
              "portpkg",
              "mvt",
              "mcd",
              "mc1",
              "cdkey",
              "mwf",
              "mfm",
              "flo",
              "igx",
              "mif",
              "daf",
              "dis",
              "mbk",
              "mqy",
              "msl",
              "plc",
              "txf",
              "mpn",
              "mpc",
              "xul",
              "cil",
              "cab",
              "xls",
              "xlm",
              "xla",
              "xlc",
              "xlt",
              "xlw",
              "xlam",
              "xlsb",
              "xlsm",
              "xltm",
              "eot",
              "chm",
              "ims",
              "lrm",
              "thmx",
              "msg",
              "cat",
              "*stl",
              "ppt",
              "pps",
              "pot",
              "ppam",
              "pptm",
              "sldm",
              "ppsm",
              "potm",
              "mpp",
              "mpt",
              "docm",
              "dotm",
              "wps",
              "wks",
              "wcm",
              "wdb",
              "wpl",
              "xps",
              "mseq",
              "mus",
              "msty",
              "taglet",
              "nlu",
              "ntf",
              "nitf",
              "nnd",
              "nns",
              "nnw",
              "*ac",
              "ngdat",
              "n-gage",
              "rpst",
              "rpss",
              "edm",
              "edx",
              "ext",
              "odc",
              "otc",
              "odb",
              "odf",
              "odft",
              "odg",
              "otg",
              "odi",
              "oti",
              "odp",
              "otp",
              "ods",
              "ots",
              "odt",
              "odm",
              "ott",
              "oth",
              "xo",
              "dd2",
              "obgx",
              "oxt",
              "osm",
              "pptx",
              "sldx",
              "ppsx",
              "potx",
              "xlsx",
              "xltx",
              "docx",
              "dotx",
              "mgp",
              "dp",
              "esa",
              "pdb",
              "pqa",
              "oprc",
              "paw",
              "str",
              "ei6",
              "efif",
              "wg",
              "plf",
              "pbd",
              "box",
              "mgz",
              "qps",
              "ptid",
              "qxd",
              "qxt",
              "qwd",
              "qwt",
              "qxl",
              "qxb",
              "rar",
              "bed",
              "mxl",
              "musicxml",
              "cryptonote",
              "cod",
              "rm",
              "rmvb",
              "link66",
              "st",
              "see",
              "sema",
              "semd",
              "semf",
              "ifm",
              "itp",
              "iif",
              "ipk",
              "twd",
              "twds",
              "mmf",
              "teacher",
              "fo",
              "sdkm",
              "sdkd",
              "dxp",
              "sfs",
              "sdc",
              "sda",
              "sdd",
              "smf",
              "sdw",
              "vor",
              "sgl",
              "smzip",
              "sm",
              "wadl",
              "sxc",
              "stc",
              "sxd",
              "std",
              "sxi",
              "sti",
              "sxm",
              "sxw",
              "sxg",
              "stw",
              "sus",
              "susp",
              "svd",
              "sis",
              "sisx",
              "xsm",
              "bdm",
              "xdm",
              "ddf",
              "tao",
              "pcap",
              "cap",
              "dmp",
              "tmo",
              "tpt",
              "mxs",
              "tra",
              "ufd",
              "ufdl",
              "utz",
              "umj",
              "unityweb",
              "uoml",
              "vcx",
              "vsd",
              "vst",
              "vss",
              "vsw",
              "vis",
              "vsf",
              "wbxml",
              "wmlc",
              "wmlsc",
              "wtb",
              "nbp",
              "wpd",
              "wqd",
              "stf",
              "xar",
              "xfdl",
              "hvd",
              "hvs",
              "hvp",
              "osf",
              "osfpvg",
              "saf",
              "spf",
              "cmp",
              "zir",
              "zirz",
              "zaz",
              "7z",
              "abw",
              "ace",
              "*dmg",
              "arj",
              "aab",
              "x32",
              "u32",
              "vox",
              "aam",
              "aas",
              "bcpio",
              "*bdoc",
              "torrent",
              "blb",
              "blorb",
              "bz",
              "bz2",
              "boz",
              "cbr",
              "cba",
              "cbt",
              "cbz",
              "cb7",
              "vcd",
              "cfs",
              "chat",
              "pgn",
              "crx",
              "cco",
              "nsc",
              "cpio",
              "csh",
              "*deb",
              "udeb",
              "dgc",
              "dir",
              "dcr",
              "dxr",
              "cst",
              "cct",
              "cxt",
              "w3d",
              "fgd",
              "swa",
              "wad",
              "ncx",
              "dtb",
              "res",
              "dvi",
              "evy",
              "eva",
              "bdf",
              "gsf",
              "psf",
              "pcf",
              "snf",
              "pfa",
              "pfb",
              "pfm",
              "afm",
              "arc",
              "spl",
              "gca",
              "ulx",
              "gnumeric",
              "gramps",
              "gtar",
              "hdf",
              "php",
              "install",
              "*iso",
              "*key",
              "*numbers",
              "*pages",
              "jardiff",
              "jnlp",
              "kdbx",
              "latex",
              "luac",
              "lzh",
              "lha",
              "run",
              "mie",
              "prc",
              "mobi",
              "application",
              "lnk",
              "wmd",
              "wmz",
              "xbap",
              "mdb",
              "obd",
              "crd",
              "clp",
              "*exe",
              "*dll",
              "com",
              "bat",
              "*msi",
              "mvb",
              "m13",
              "m14",
              "*wmf",
              "*wmz",
              "*emf",
              "emz",
              "mny",
              "pub",
              "scd",
              "trm",
              "wri",
              "nc",
              "cdf",
              "pac",
              "nzb",
              "pl",
              "pm",
              "*prc",
              "*pdb",
              "p12",
              "pfx",
              "p7b",
              "spc",
              "p7r",
              "*rar",
              "rpm",
              "ris",
              "sea",
              "sh",
              "shar",
              "swf",
              "xap",
              "sql",
              "sit",
              "sitx",
              "srt",
              "sv4cpio",
              "sv4crc",
              "t3",
              "gam",
              "tar",
              "tcl",
              "tk",
              "tex",
              "tfm",
              "texinfo",
              "texi",
              "*obj",
              "ustar",
              "hdd",
              "ova",
              "ovf",
              "vbox",
              "vbox-extpack",
              "vdi",
              "vhd",
              "vmdk",
              "src",
              "webapp",
              "der",
              "crt",
              "pem",
              "fig",
              "*xlf",
              "xpi",
              "xz",
              "z1",
              "z2",
              "z3",
              "z4",
              "z5",
              "z6",
              "z7",
              "z8",
              "uva",
              "uvva",
              "eol",
              "dra",
              "dts",
              "dtshd",
              "lvp",
              "pya",
              "ecelp4800",
              "ecelp7470",
              "ecelp9600",
              "rip",
              "aac",
              "aif",
              "aiff",
              "aifc",
              "caf",
              "flac",
              "*m4a",
              "mka",
              "m3u",
              "wax",
              "wma",
              "ram",
              "ra",
              "rmp",
              "*ra",
              "cdx",
              "cif",
              "cmdf",
              "cml",
              "csml",
              "xyz",
              "btif",
              "pti",
              "psd",
              "azv",
              "uvi",
              "uvvi",
              "uvg",
              "uvvg",
              "djvu",
              "djv",
              "*sub",
              "dwg",
              "dxf",
              "fbs",
              "fpx",
              "fst",
              "mmr",
              "rlc",
              "ico",
              "dds",
              "mdi",
              "wdp",
              "npx",
              "b16",
              "tap",
              "vtf",
              "wbmp",
              "xif",
              "pcx",
              "3ds",
              "ras",
              "cmx",
              "fh",
              "fhc",
              "fh4",
              "fh5",
              "fh7",
              "*ico",
              "jng",
              "sid",
              "*bmp",
              "*pcx",
              "pic",
              "pct",
              "pnm",
              "pbm",
              "pgm",
              "ppm",
              "rgb",
              "tga",
              "xbm",
              "xpm",
              "xwd",
              "wsc",
              "dae",
              "dwf",
              "gdl",
              "gtw",
              "mts",
              "ogex",
              "x_b",
              "x_t",
              "vds",
              "usdz",
              "bsp",
              "vtu",
              "dsc",
              "curl",
              "dcurl",
              "mcurl",
              "scurl",
              "sub",
              "fly",
              "flx",
              "gv",
              "3dml",
              "spot",
              "jad",
              "wml",
              "wmls",
              "s",
              "asm",
              "c",
              "cc",
              "cxx",
              "cpp",
              "h",
              "hh",
              "dic",
              "htc",
              "f",
              "for",
              "f77",
              "f90",
              "hbs",
              "java",
              "lua",
              "mkd",
              "nfo",
              "opml",
              "*org",
              "p",
              "pas",
              "pde",
              "sass",
              "scss",
              "etx",
              "sfv",
              "ymp",
              "uu",
              "vcs",
              "vcf",
              "uvh",
              "uvvh",
              "uvm",
              "uvvm",
              "uvp",
              "uvvp",
              "uvs",
              "uvvs",
              "uvv",
              "uvvv",
              "dvb",
              "fvt",
              "mxu",
              "m4u",
              "pyv",
              "uvu",
              "uvvu",
              "viv",
              "f4v",
              "fli",
              "flv",
              "m4v",
              "mkv",
              "mk3d",
              "mks",
              "mng",
              "asf",
              "asx",
              "vob",
              "wm",
              "wmv",
              "wmx",
              "wvx",
              "avi",
              "movie",
              "smv",
              "ice",
              "mht",
              null
            ],
            "example": "pdf",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "example": "application/pdf",
            "nullable": true
          }
        }
      },
      "ForbiddenResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 403
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Forbidden resource"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "GroupTypeEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "enum": [
              "workspace",
              "team",
              "department",
              "group",
              "organization",
              "unmapped_value",
              "cost_center",
              null
            ],
            "example": "team",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      },
      "IamAuthTypeEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "enum": [
              "oauth",
              "api_key",
              "service_user",
              "unmapped_value",
              null
            ],
            "description": "How the connection authenticates.",
            "example": "oauth",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      },
      "IamCredentials": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Human-readable name of the credential set.",
            "example": "admin@example.com",
            "nullable": true
          },
          "auth_type": {
            "description": "How the connection authenticates: oauth, api_key, or service_user.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/IamAuthTypeEnum"
              }
            ]
          },
          "scopes": {
            "description": "OAuth scopes granted (when auth_type is oauth); empty otherwise.",
            "nullable": true,
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "permissions": {
            "description": "Effective permissions for this connection (what it can do).",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamPermission"
            }
          },
          "last_accessed_at": {
            "type": "string",
            "description": "When this credential was last used to call the API.",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "user": {
            "description": "The IamUser associated with this credential, if applicable (e.g. OAuth or named service account). Null for impersonal API keys.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/IamUser"
              }
            ]
          }
        }
      },
      "IamCredentialsResult": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/IamCredentials"
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamGroup": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/GroupTypeEnum"
              }
            ]
          },
          "roles": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamRole"
            }
          },
          "parent_id": {
            "type": "string",
            "description": "The parent group id for when a group belongs to another group.",
            "nullable": true
          },
          "remote_parent_id": {
            "type": "string",
            "description": "Provider's unique identifier of the parent group id for when a group belongs to another group.",
            "example": "e3cb75bf-aa84-466e-a6c1-b8322b257a48",
            "nullable": true
          },
          "child_group_ids": {
            "description": "Ids of groups whose parent_id is this group.",
            "nullable": true,
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "organization_id": {
            "type": "string",
            "description": "Id of the organization this group belongs to.",
            "nullable": true
          },
          "users": {
            "type": "array",
            "description": "Members of the group. Populated when expand=users is requested.",
            "items": {
              "$ref": "#/components/schemas/IamUser"
            },
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "IamGroupResult": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/IamGroup"
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamGroupsPaginated": {
        "type": "object",
        "properties": {
          "next_page": {
            "type": "string",
            "deprecated": true,
            "nullable": true
          },
          "next": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamGroup"
            }
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamMfaTypeEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "enum": [
              "sms",
              "email",
              "push",
              "totp",
              "phone_call",
              "question",
              "software_token",
              "hardware_token",
              "web",
              "unknown",
              "unmapped_value",
              null
            ],
            "description": "The unified value for the type of multi-factor authentication. If the provider does not send back a type but does specify that MFA is set-up for this user, the value will be set to 'unknown'.'",
            "example": "totp",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      },
      "IamOrganization": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The organization name.",
            "example": "StackOne",
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "IamOrganizationResult": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/IamOrganization"
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamOrganizationsPaginated": {
        "type": "object",
        "properties": {
          "next_page": {
            "type": "string",
            "deprecated": true,
            "nullable": true
          },
          "next": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamOrganization"
            }
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamPermission": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The name of the permission.",
            "example": "read:users",
            "nullable": true
          },
          "type": {
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/IamPermissionTypeEnum"
              }
            ]
          },
          "resources": {
            "description": "The resources that the permission applies to.",
            "deprecated": true,
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamResource"
            }
          },
          "scopes": {
            "description": "Resource-type / resource-id targets for this permission. Omitted resource_id = all of type.",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamPermissionScope"
            }
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "IamPermissionScope": {
        "type": "object",
        "properties": {
          "resource_type": {
            "type": "string",
            "description": "The kind of resource the permission applies to (e.g. file, channel, user).",
            "example": "channel",
            "nullable": true
          },
          "resource_id": {
            "type": "string",
            "description": "The id of the specific resource the permission applies to. Omitted = all of type.",
            "example": "C0123456789",
            "nullable": true
          }
        }
      },
      "IamPermissionTypeEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "enum": [
              "read",
              "delete",
              "export",
              "read_write",
              "approve",
              "use",
              "write",
              "comment",
              "create",
              "edit",
              "unmapped_value",
              null
            ],
            "description": "The type of the permission, e.g. read, read_write, delete, etc.",
            "example": "read_write",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      },
      "IamPoliciesPaginated": {
        "type": "object",
        "properties": {
          "next_page": {
            "type": "string",
            "deprecated": true,
            "nullable": true
          },
          "next": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamPolicy"
            }
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamPolicy": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The name of the policy.",
            "example": "Remote Contractor Policy",
            "nullable": true
          },
          "permissions": {
            "description": "The set of permissions associated with the policy.",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamPermission"
            }
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "IamPolicyResult": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/IamPolicy"
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamResource": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The name of the resource.",
            "example": "Company History Records",
            "nullable": true
          },
          "location": {
            "type": "string",
            "description": "The location of the resource.",
            "example": "s3://bucket-name/folder-name",
            "nullable": true
          },
          "type": {
            "description": "The resource type identifier. Falcon connectors emit a plain string from the connector-defined set returned by GET /unified/iam/resource_types (e.g. \"file\", \"channel\", \"group\"). Legacy V2 connectors emit the {value, source_value} envelope where value is from the IamResourceTypeEnum fixed set. Either shape validates.",
            "example": "file",
            "oneOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/components/schemas/IamResourceTypeEnum"
              }
            ],
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "IamResourceTypeEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "enum": [
              "project",
              "file",
              "folder",
              "product",
              "property",
              "user",
              "unmapped_value",
              null
            ],
            "description": "The type of the resource, e.g. user, group, permission, etc.",
            "example": "file",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      },
      "IamResourceTypesResult": {
        "type": "object",
        "properties": {
          "data": {
            "description": "Resource type identifiers supported by this connector for resource-scoped queries (e.g. [\"channel\", \"workspace\"], [\"group\"], [\"file\", \"folder\"]).",
            "example": [
              "group"
            ],
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamRole": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/RoleTypeEnum"
              }
            ]
          },
          "policies": {
            "description": "The set of policies associated with the role.",
            "deprecated": true,
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamPolicy"
            }
          },
          "permissions": {
            "description": "The permissions granted by this role.",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamPermission"
            }
          },
          "scope": {
            "description": "Optional scope describing where this role applies (e.g. group, organization, department).",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/IamRoleScope"
              }
            ]
          },
          "created_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "IamRoleResult": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/IamRole"
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamRoleScope": {
        "type": "object",
        "properties": {
          "resource_type": {
            "type": "string",
            "description": "The kind of resource the role applies to (e.g. group, organization, department).",
            "example": "group",
            "nullable": true
          },
          "resource_id": {
            "type": "string",
            "description": "The id of the specific resource the role applies to. Omitted = all of type.",
            "example": "group_abc123",
            "nullable": true
          }
        }
      },
      "IamRolesPaginated": {
        "type": "object",
        "properties": {
          "next_page": {
            "type": "string",
            "deprecated": true,
            "nullable": true
          },
          "next": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamRole"
            }
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamUpdateUserRequestDto": {
        "type": "object",
        "properties": {
          "primary_email_address": {
            "type": "string",
            "description": "Primary email address of the user. This is generally a work email address.",
            "example": "han@stackone.com",
            "nullable": true
          },
          "first_name": {
            "type": "string",
            "example": "Han",
            "nullable": true
          },
          "last_name": {
            "type": "string",
            "example": "Solo",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "User's name which (can be a full name or display name)",
            "example": "Han Solo",
            "nullable": true
          },
          "username": {
            "type": "string",
            "example": "hansolo1977",
            "nullable": true
          },
          "is_bot_user": {
            "description": "Indicates if the user is a bot or service user",
            "example": true,
            "oneOf": [
              {
                "type": "boolean"
              },
              {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ]
              }
            ],
            "nullable": true
          },
          "status": {
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserStatusEnum"
              }
            ]
          },
          "passthrough": {
            "type": "object",
            "description": "Value to pass through to the provider",
            "example": {
              "other_known_names": "John Doe"
            },
            "additionalProperties": true,
            "nullable": true
          }
        }
      },
      "IamUser": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "remote_id": {
            "type": "string",
            "description": "Provider's unique identifier",
            "example": "8187e5da-dc77-475e-9949-af0f1fa4e4e3",
            "nullable": true
          },
          "unified_custom_fields": {
            "type": "object",
            "description": "Custom Unified Fields configured in your StackOne project",
            "additionalProperties": true,
            "example": {
              "my_project_custom_field_1": "REF-1236",
              "my_project_custom_field_2": "some other value"
            },
            "nullable": true
          },
          "primary_email_address": {
            "type": "string",
            "description": "Primary email address of the user. This is generally a work email address.",
            "example": "han@stackone.com",
            "nullable": true
          },
          "first_name": {
            "type": "string",
            "example": "Han",
            "nullable": true
          },
          "last_name": {
            "type": "string",
            "example": "Solo",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "User's name which (can be a full name or display name)",
            "example": "Han Solo",
            "nullable": true
          },
          "username": {
            "type": "string",
            "example": "hansolo1977",
            "nullable": true
          },
          "is_bot_user": {
            "description": "Indicates if the user is a bot or service user",
            "example": true,
            "oneOf": [
              {
                "type": "boolean"
              },
              {
                "type": "string",
                "enum": [
                  "true",
                  "false"
                ]
              }
            ],
            "nullable": true
          },
          "roles": {
            "description": "List of roles the user is assigned to",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamRole"
            }
          },
          "groups": {
            "description": "List of groups the user is assigned to",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamGroup"
            }
          },
          "permissions": {
            "description": "Direct permissions granted to the user (not inherited via roles or groups).",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamPermission"
            }
          },
          "status": {
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserStatusEnum"
              }
            ]
          },
          "last_active_at": {
            "type": "string",
            "description": "The date this user was last active",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "last_login_at": {
            "type": "string",
            "description": "The date this user last logged in",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "created_at": {
            "type": "string",
            "description": "The date the user was created",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "description": "The date the user was created",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time",
            "nullable": true
          },
          "multi_factor_enabled": {
            "description": "The list of Multi-Factor Authentication (MFA) types enabled for the user.",
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamMfaTypeEnum"
            }
          },
          "avatar": {
            "description": "The user's avatar data. This generally contains a URL within this property's 'contents' array. May be either a single File object or an array of File objects depending on the connector — both forms are supported.",
            "oneOf": [
              {
                "$ref": "#/components/schemas/File"
              },
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/File"
                }
              }
            ],
            "nullable": true
          }
        }
      },
      "IamUserResult": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/IamUser"
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "IamUsersPaginated": {
        "type": "object",
        "properties": {
          "next_page": {
            "type": "string",
            "deprecated": true,
            "nullable": true
          },
          "next": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IamUser"
            }
          },
          "raw": {
            "nullable": true,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RawResponse"
            }
          }
        },
        "required": [
          "data"
        ]
      },
      "InternalServerErrorResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 500
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Internal server error"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "NotFoundResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 404
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Not Found"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "NotImplementedResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 501
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Not Implemented"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "PreconditionFailedResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 412
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Precondition failed"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "ProviderError": {
        "type": "object",
        "properties": {
          "status": {
            "type": "number",
            "description": "HTTP status code of the provider error",
            "example": 400,
            "nullable": true
          },
          "url": {
            "type": "string",
            "description": "URL that caused the error",
            "example": "https://api.provider.com/v1/resource",
            "nullable": true
          },
          "raw": {
            "type": "object",
            "description": "Raw error response from the provider",
            "example": {
              "message": "Invalid input parameters"
            },
            "nullable": true
          },
          "headers": {
            "type": "object",
            "description": "Response headers",
            "example": {
              "content-type": "application/json",
              "x-request-id": "5678c28b211dace4e0a0f9171e6b88c5"
            },
            "nullable": true
          }
        }
      },
      "RawResponse": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "body": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {
                  "type": "integer",
                  "format": "int32",
                  "minimum": 0,
                  "maximum": 255
                }
              }
            ],
            "additionalProperties": true,
            "nullable": true
          },
          "response": {
            "oneOf": [
              {
                "type": "object",
                "additionalProperties": true
              },
              {
                "type": "array",
                "items": {}
              },
              {
                "type": "string"
              }
            ],
            "nullable": true
          }
        },
        "required": [
          "method",
          "url"
        ]
      },
      "RequestTimedOutResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 408
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Request timed out"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "RoleTypeEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "enum": [
              "admin",
              "viewer",
              "editor",
              "basic",
              "guest",
              "unassigned",
              "restricted",
              "unmapped_value",
              null
            ],
            "example": "admin",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      },
      "TooManyRequestsResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 429
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Too many requests"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "UnauthorizedResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 401
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Unauthorized"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "UnifiedError": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 400,
            "nullable": true
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Bad Request",
            "nullable": true
          },
          "headers": {
            "type": "object",
            "description": "Response headers",
            "example": {
              "content-type": "application/json",
              "x-request-id": "5678c28b211dace4e0a0f9171e6b88c5"
            },
            "nullable": true
          }
        }
      },
      "UnprocessableEntityResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "description": "HTTP status code",
            "example": 422
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Unprocessable Entity"
          },
          "timestamp": {
            "type": "string",
            "description": "Timestamp when the error occurred",
            "example": "2023-05-30T00:00:00.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "UpdateResult": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "example": 200
          },
          "message": {
            "type": "string",
            "example": "Record updated successfully."
          },
          "timestamp": {
            "type": "string",
            "example": "2021-01-01T01:01:01.000Z",
            "format": "date-time"
          }
        },
        "required": [
          "statusCode",
          "message",
          "timestamp"
        ]
      },
      "UserStatusEnum": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "enum": [
              "enabled",
              "disabled",
              "pending",
              "unmapped_value",
              null
            ],
            "description": "The status of the user, e.g. whether the user is enabled, has been disabled (eg. by an admin), or is pending (ie: awaiting approval by the user or an admin).",
            "example": "enabled",
            "x-speakeasy-unknown-values": "allow",
            "nullable": true
          },
          "source_value": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              },
              {
                "type": "boolean"
              },
              {
                "type": "object"
              },
              {
                "type": "array",
                "items": {}
              }
            ],
            "nullable": true
          }
        }
      }
    }
  }
}