{
  "openapi": "3.0.1",
  "info": {
    "title": "Management API",
    "version": "",
    "description": "The Synqly Management APIs enable you to manage the resources within your Synqly organization, such as setting up Accounts for your customers and creating Integrations to connect your product to the different service Providers supported by Synqly.\n\nFor more information see the [Synqly Overview](/guides/getting-started/overview).\n"
  },
  "paths": {
    "/v1/accounts": {
      "get": {
        "description": "Returns a list of all `Account` objects. For more information on\nOrganizations and Accounts, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `accounts_list`",
        "operationId": "accounts_list",
        "tags": [
          "Accounts"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Account` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Account` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "total",
            "in": "query",
            "description": "Return total number of accounts in the system, respecting all applied filters. This is expensive, use sparingly.",
            "required": false,
            "schema": {
              "type": "boolean",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAccountsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Accounts",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Creates an `Account` object. For more information on Organizations and\nAccounts, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `accounts_create`",
        "operationId": "accounts_create",
        "tags": [
          "Accounts"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAccountResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Account",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAccountRequest"
              }
            }
          }
        }
      }
    },
    "/v1/accounts/{accountId}": {
      "get": {
        "description": "Returns the `Account` object matching `{accountId}`. For more information on\nOrganizations and Accounts, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `accounts_get`",
        "operationId": "accounts_get",
        "tags": [
          "Accounts"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAccountResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Account",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Updates the `Account` object matching `{accountId}`. For more information on\nOrganizations and Accounts, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `accounts_update`",
        "operationId": "accounts_update",
        "tags": [
          "Accounts"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateAccountResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Account",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Account"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patches the `Account` object matching `{accountId}`. For more information on\nOrganizations and Accounts, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `accounts_patch`",
        "operationId": "accounts_patch",
        "tags": [
          "Accounts"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchAccountResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Account",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Deletes the `Account` matching `{accountId}`. Deleting an `Account` also deletea\nall `Tokens` and `Credentials` belonging to the `Account`.\n\n**Operation ID:** `accounts_delete`",
        "operationId": "accounts_delete",
        "tags": [
          "Accounts"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Account",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/audit/organizations": {
      "get": {
        "description": "Returns a list of all Synqly `Audit` events for the `Organization`.\n\n**Operation ID:** `audit_list`",
        "operationId": "audit_list",
        "tags": [
          "Audit"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Audit` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Audit` objects starting after this `created_at`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "The order defaults to created_at[asc] and can changed to descending order by specifying created_at[desc].",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAuditEventsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Audit Events",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/auth/logon/{organizationId}": {
      "post": {
        "description": "Initiates a new session for the given member in specified Synqly organization.\n\n**Operation ID:** `auth_logon`",
        "operationId": "auth_logon",
        "tags": [
          "Auth"
        ],
        "parameters": [
          {
            "name": "organizationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LogonResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Logon Organization",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LogonRequest"
              }
            }
          }
        }
      }
    },
    "/v1/auth/change_password": {
      "post": {
        "description": "Change member password.\n\n**Operation ID:** `auth_change_password`",
        "operationId": "auth_change_password",
        "tags": [
          "Auth"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ChangePasswordResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Change Member Password",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordRequest"
              }
            }
          }
        }
      }
    },
    "/v1/auth/logoff": {
      "post": {
        "description": "Terminates the session identified by the given logon token.\n\n**Operation ID:** `auth_logoff`",
        "operationId": "auth_logoff",
        "tags": [
          "Auth"
        ],
        "parameters": [],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Logoff",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/bridges/{accountId}": {
      "get": {
        "description": "Returns a list of all `Bridge Group` objects that match the query params.\n\n**Operation ID:** `bridges_list`",
        "operationId": "bridges_list",
        "tags": [
          "Bridges"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Bridge` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Bridge` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListBridgesResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Bridge Groups",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Creates a `Bridge Group` with a unique identifier and authentication\ncredentials. This allows for Bridge Agents to connect to Synqly. For\nmore information on Bridges, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `bridges_create`",
        "operationId": "bridges_create",
        "tags": [
          "Bridges"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateBridgeResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Bridge Group",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateBridgeRequest"
              }
            }
          }
        }
      }
    },
    "/v1/bridges/{accountId}/{bridgeId}": {
      "get": {
        "description": "Returns the Bridge Group object matching `{bridgeId}`. For more information on Bridges, refer to the\n[Bridge Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `bridges_get`",
        "operationId": "bridges_get",
        "tags": [
          "Bridges"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "bridgeId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBridgeResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Bridge Groups",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Updates the `Bridge Group` object matching `{bridgeId}`. For more information on Bridges, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `bridges_update`",
        "operationId": "bridges_update",
        "tags": [
          "Bridges"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "bridgeId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateBridgeResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Bridge Group",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BridgeGroup"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patches the `Bridge Group` object matching `{bridgeId}`. For more information on Bridges, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `bridges_patch`",
        "operationId": "bridges_patch",
        "tags": [
          "Bridges"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "bridgeId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchBridgeResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Bridge Group",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Deletes the `Bridge Group` matching `{bridgeId}`. Deleting an `Bridge Group` also deletea\nall `Tokens` and `Credentials` belonging to the `Bridge Group`.\n\n**Operation ID:** `bridges_delete`",
        "operationId": "bridges_delete",
        "tags": [
          "Bridges"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "bridgeId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Bridge Group",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/bridges/{accountId}/{bridgeId}/status": {
      "get": {
        "description": "Returns the status and local configuration of running Bridges Agents in the Bridge Group `{bridgeId}`.\n\n**Operation ID:** `bridges_get_status`",
        "operationId": "bridges_get_status",
        "tags": [
          "Bridges"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "bridgeId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetBridgeStatusResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Bridge Agent Statuses",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/capabilities/connectors": {
      "get": {
        "description": "Returns a list of all `Connectors`.\n\n**Operation ID:** `capabilities_list_connectors`",
        "operationId": "capabilities_list_connectors",
        "tags": [
          "Capabilities"
        ],
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Expand the capabilities result fields that are otherwise\nomitted or returned as references to OpenAPI spec components.\nNOTE: This can yield very big response objects.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ListConnectorCapabilitiesExpandOptions",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListConnectorsCapabilitiesResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Connectors",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/capabilities/providers": {
      "get": {
        "description": "Returns a list of all Provider capabilities and their configurations.\n\n**Operation ID:** `capabilities_list_providers`",
        "operationId": "capabilities_list_providers",
        "tags": [
          "Capabilities"
        ],
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Expand the capabilities result fields that are otherwise\nomitted or returned as references to OpenAPI spec components.\nNOTE: This can yield very big response objects.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ListProviderCapabilitiesExpandOptions",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListProvidersCapabilitiesResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Providers",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/capabilities/providers/{providerId}": {
      "get": {
        "description": "Returns the capabilities and configurations for a specific Provider type\n\n**Operation ID:** `capabilities_get_provider`",
        "operationId": "capabilities_get_provider",
        "tags": [
          "Capabilities"
        ],
        "parameters": [
          {
            "name": "providerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/ProviderConfigId"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Expand the capabilities result fields that are otherwise\nomitted or returned as references to OpenAPI spec components.\nNOTE: This can yield very big response objects.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/GetProviderCapabilitiesExpandOptions",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderCapabilitiesResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Provider",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/credentials/{ownerId}": {
      "get": {
        "description": "Returns a list of all `Credential` objects belonging to the `Account`, `Integration`, or `IntegrationPoint`, or `OrganizationWebhook` matching\n`{ownerId}`.\n\n**Operation ID:** `credentials_list`",
        "operationId": "credentials_list",
        "tags": [
          "Credentials"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Credential` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Credential` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListCredentialsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Credentials",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Creates a `Credential` object in the `Account`, `IntegrationPoint`, or `OrganizationWebhook` matching matching\n`{ownerId}`. A `Credential` may only by used by a single `Account`, `Integration`, `IntegrationPoint` or `OrganizationWebhook`;\nhowever, `Credential` objects can be shared by multiple `Integrations` within an `Account`.\n\n**Operation ID:** `credentials_create`",
        "operationId": "credentials_create",
        "tags": [
          "Credentials"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCredentialResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Credential",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCredentialRequest"
              }
            }
          }
        }
      }
    },
    "/v1/credentials/{ownerId}/{credentialId}": {
      "get": {
        "description": "Returns the `Credential` object matching `{credentialId}` where the\n`Credential` belongs to the `Account`, `Integration`, `IntegrationPoint` or `OrganizationWebhook` matching `{ownerId}`.\n\n**Operation ID:** `credentials_get`",
        "operationId": "credentials_get",
        "tags": [
          "Credentials"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "credentialId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCredentialResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Credential",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Updates the `Credential` object matching `{credentialId}`, where the\n`Credential` belongs to the `Account`, `Integration`, `IntegrationPoint` or `OrganizationWebhook` matching `{ownerId}`.\n\n**Operation ID:** `credentials_update`",
        "operationId": "credentials_update",
        "tags": [
          "Credentials"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "credentialId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCredentialResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Credential",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Credential"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patches the `Credential` object matching `{credentialId}`, where the\n`Credential` belongs to the `Account`, `Integration`, `IntegrationPoint` or `OrganizationWebhook` matching `{ownerId}`.\n\n**Operation ID:** `credentials_patch`",
        "operationId": "credentials_patch",
        "tags": [
          "Credentials"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "credentialId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchCredentialResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Credential",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Deletes the `Credential` object matching `{credentialId}`, where the\n`Credential` belongs to the `Account`, `Integration`, `IntegrationPoint` or `OrganizationWebhook` matching `{ownerId}`.\n\n**Operation ID:** `credentials_delete`",
        "operationId": "credentials_delete",
        "tags": [
          "Credentials"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "credentialId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Credential",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/credentials/lookup/{credentialId}": {
      "get": {
        "description": "Returns the `Credential` object matching `{credentialId}`.\n\n**Operation ID:** `credentials_lookup`",
        "operationId": "credentials_lookup",
        "tags": [
          "Credentials"
        ],
        "parameters": [
          {
            "name": "credentialId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LookupCredentialResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Lookup Credential",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/integration-points": {
      "get": {
        "description": "Returns a list of all `IntegrationPoint` objects.\n\n**Operation ID:** `integrationPoints_list`",
        "operationId": "integrationPoints_list",
        "tags": [
          "IntegrationPoints"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `IntegrationPoint` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `IntegrationPoint` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "total",
            "in": "query",
            "description": "Return total number of integration points in the system, respecting all applied filters. This is expensive, use sparingly.",
            "required": false,
            "schema": {
              "type": "boolean",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListIntegrationPointsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Integration Points",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Create a `IntegrationPoint` object.\n\n**Operation ID:** `integrationPoints_create`",
        "operationId": "integrationPoints_create",
        "tags": [
          "IntegrationPoints"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateIntegrationPointResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Integration Point",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateIntegrationPointRequest"
              }
            }
          }
        }
      }
    },
    "/v1/integration-points/{integrationPointId}": {
      "get": {
        "description": "Returns the `IntegrationPoint` object matching `{integrationPointId}`.\n\n**Operation ID:** `integrationPoints_get`",
        "operationId": "integrationPoints_get",
        "tags": [
          "IntegrationPoints"
        ],
        "parameters": [
          {
            "name": "integrationPointId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetIntegrationPointResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Integration Point",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Updates the `IntegrationPoint` object matching `{integrationPointId}`.\n\n**Operation ID:** `integrationPoints_update`",
        "operationId": "integrationPoints_update",
        "tags": [
          "IntegrationPoints"
        ],
        "parameters": [
          {
            "name": "integrationPointId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateIntegrationPointResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Integration Point",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationPoint"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patches the `IntegrationPoint` object matching `{integrationPointId}`.\n\n**Operation ID:** `integrationPoints_patch`",
        "operationId": "integrationPoints_patch",
        "tags": [
          "IntegrationPoints"
        ],
        "parameters": [
          {
            "name": "integrationPointId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchIntegrationPointResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Integration Point",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Deletes the `IntegrationPoint` object matching `{integrationPointId}`.\n\n**Operation ID:** `integrationPoints_delete`",
        "operationId": "integrationPoints_delete",
        "tags": [
          "IntegrationPoints"
        ],
        "parameters": [
          {
            "name": "integrationPointId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Integration Point",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/integrations": {
      "get": {
        "description": "Returns a list of all `Integration` objects that match the query params.\n\n**Operation ID:** `integrations_list`",
        "operationId": "integrations_list",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Integration` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Integration` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Expand the integration result with the related integration point and/or account information.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ListIntegrationOptions",
                "nullable": true
              }
            }
          },
          {
            "name": "total",
            "in": "query",
            "description": "Return total number of all integrations in the system, respecting all applied filters. This is expensive, use sparingly.",
            "required": false,
            "schema": {
              "type": "boolean",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListIntegrationsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Integrations",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/integrations/{accountId}": {
      "get": {
        "description": "Returns a list of all `Integration` objects belonging to the\n`Account` matching `{accountId}`.\n\n**Operation ID:** `integrations_list_account`",
        "operationId": "integrations_list_account",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Integration` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Integration` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Expand the integration result with the related integration point and/or account information.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ListIntegrationOptions",
                "nullable": true
              }
            }
          },
          {
            "name": "total",
            "in": "query",
            "description": "Return total number of integrations for a particular account. This is expensive, use sparingly.",
            "required": false,
            "schema": {
              "type": "boolean",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListAccountIntegrationsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Account Integrations",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Creates an `Integration` object belonging to the `Account` matching\n`{accountId}`. Configures the `Integration` with the Provider specified\nin the request. Returns an `Integration` token for use with `Integration` APIs.\n\n**Operation ID:** `integrations_create`",
        "operationId": "integrations_create",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateIntegrationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "501": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "502": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "504": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Integration",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateIntegrationRequest"
              }
            }
          }
        }
      }
    },
    "/v1/integrations/{accountId}/{integrationId}": {
      "get": {
        "description": "Returns the `Integration` object matching `{integrationId}` where\nthe `Integration` belongs to the `Account` matching `{accountId}`.\n\n**Operation ID:** `integrations_get`",
        "operationId": "integrations_get",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetIntegrationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Integration",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Updates the `Integration` object matching `{integrationId}`, where the\n`Integration` belongs to the `Account` matching `{accountId}`.\n\n**Operation ID:** `integrations_update`",
        "operationId": "integrations_update",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateIntegrationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Integration",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Integration"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patches the `Integration` object matching `{integrationId}`, where the\n`Integration` belongs to the `Account` matching `{accountId}`.\n\n**Operation ID:** `integrations_patch`",
        "operationId": "integrations_patch",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchIntegrationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Integration",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Deletes the `Integration` object matching `{integrationId}, where the `Integration`belongs to the`Account`matching`{accountId}`. Deleting an `Integration` also deletes any tokens that belong to it.\n\n**Operation ID:** `integrations_delete`",
        "operationId": "integrations_delete",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Integration",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/integrations/{accountId}/verify": {
      "post": {
        "description": "Verifies an ephemeral `Integration` and provider configuration and tests the authentication and provider connectivity.\nThe provider config credential IDs can utilize persistent IDs or use \"#/n\" reference IDs;\nwhere (n) is the zero based offset in the optional credentials list.\n\n**Operation ID:** `integrations_verify`",
        "operationId": "integrations_verify",
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "501": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "502": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "503": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "504": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Verify Integration",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyIntegrationRequest"
              }
            }
          }
        }
      }
    },
    "/v1/mappings": {
      "get": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nReturns a list of all `Mapping` objects.\n\n**Operation ID:** `mappings_list`",
        "operationId": "mappings_list",
        "tags": [
          "Mappings"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of mapping objects to return in this page. Defaults to 100. Items listed will not include the `data` field.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return mapping objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "total",
            "in": "query",
            "description": "Return total number of mappings in the system, respecting all applied filters. This is expensive, use sparingly.",
            "required": false,
            "schema": {
              "type": "boolean",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListMappingsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Mappings",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      },
      "post": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nCreates an mapping object.\n\n**Operation ID:** `mappings_create`",
        "operationId": "mappings_create",
        "tags": [
          "Mappings"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateMappingResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Mapping",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMappingRequest"
              }
            }
          }
        },
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      }
    },
    "/v1/mappings/{mappingId}": {
      "get": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nReturns the `Mapping` object matching `{mappingId}`. This response will include the full `data` field.\n\n**Operation ID:** `mappings_get`",
        "operationId": "mappings_get",
        "tags": [
          "Mappings"
        ],
        "parameters": [
          {
            "name": "mappingId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMappingResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Mapping",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      },
      "put": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nUpdates the mapping object matching `{mappingId}`.\n\n**Operation ID:** `mappings_update`",
        "operationId": "mappings_update",
        "tags": [
          "Mappings"
        ],
        "parameters": [
          {
            "name": "mappingId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMappingResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Mapping",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Mapping"
              }
            }
          }
        },
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      },
      "patch": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nPatches the mapping object matching `{mappingId}`.\n\n**Operation ID:** `mappings_patch`",
        "operationId": "mappings_patch",
        "tags": [
          "Mappings"
        ],
        "parameters": [
          {
            "name": "mappingId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchMappingResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Mapping",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        },
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      },
      "delete": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nDeletes the mapping object matching `{mappingId}`.\n\n**Operation ID:** `mappings_delete`",
        "operationId": "mappings_delete",
        "tags": [
          "Mappings"
        ],
        "parameters": [
          {
            "name": "mappingId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Mapping",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      }
    },
    "/v1/mappings/apply": {
      "post": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nApply a list of mapping transforms against the JSON input.\n\n**Operation ID:** `mappings_apply`",
        "operationId": "mappings_apply",
        "tags": [
          "Mappings"
        ],
        "parameters": [
          {
            "name": "include_raw_data",
            "in": "query",
            "description": "Include the raw data from the input in the response",
            "required": false,
            "schema": {
              "type": "boolean",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApplyMappingResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Apply Mappings",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApplyMappingRequestBody"
              }
            }
          }
        },
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      }
    },
    "/v1/members": {
      "get": {
        "description": "List all members\n\n**Operation ID:** `members_list`",
        "operationId": "members_list",
        "tags": [
          "Members"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Member` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Member` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListMembersResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Members",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Add a new member for this Organization.\n\n**Operation ID:** `members_create`",
        "operationId": "members_create",
        "tags": [
          "Members"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateMemberResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Member",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMemberRequest"
              }
            }
          }
        }
      }
    },
    "/v1/members/{memberId}": {
      "get": {
        "description": "Retrieve a Member by ID\n\n**Operation ID:** `members_get`",
        "operationId": "members_get",
        "tags": [
          "Members"
        ],
        "parameters": [
          {
            "name": "memberId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMemberResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Member",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Update a Member by ID\n\n**Operation ID:** `members_update`",
        "operationId": "members_update",
        "tags": [
          "Members"
        ],
        "parameters": [
          {
            "name": "memberId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMemberResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Member",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Member"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Update a Member by ID\n\n**Operation ID:** `members_patch`",
        "operationId": "members_patch",
        "tags": [
          "Members"
        ],
        "parameters": [
          {
            "name": "memberId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchMemberResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Member",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Delete a Member by ID. Also deletes all Tokens for the Member.\n\n**Operation ID:** `members_delete`",
        "operationId": "members_delete",
        "tags": [
          "Members"
        ],
        "parameters": [
          {
            "name": "memberId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Member",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/meta/openapi/management": {
      "get": {
        "description": "Retrieve the OpenAPI spec for the Management API\n\n**Operation ID:** `meta_managementOpenapiSpec`",
        "operationId": "meta_managementOpenapiSpec",
        "tags": [
          "Meta"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOpenApiSpecResponse"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Management OpenAPI Spec",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/meta/openapi/engine": {
      "get": {
        "description": "Retrieve the OpenAPI spec for the Engine APIs\n\n**Operation ID:** `meta_engineOpenapiSpec`",
        "operationId": "meta_engineOpenapiSpec",
        "tags": [
          "Meta"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOpenApiSpecResponse"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Engine OpenAPI Spec",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/jobs": {
      "get": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nReturns a list of all `Asynchronous Operations` objects.\n\n**Operation ID:** `operations_list`",
        "operationId": "operations_list",
        "tags": [
          "Operations"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Asynchronous Operations` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Asynchronous Operations` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `id`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field id. For example, `id[desc]` will sort the results by `id` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListOperationsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Asynchronous Operations",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      }
    },
    "/v1/jobs/history": {
      "get": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nReturns the execution history for all operations.\nHistory is stored for the configured retention period (default 4 weeks).\n\n**Operation ID:** `operations_list_execution_history`",
        "operationId": "operations_list_execution_history",
        "tags": [
          "Operations"
        ],
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "description": "Filter operation execution history by this query.\nAvailable filters:\n\n- `id[eq]` - Filter by specific operation ID\n- `integration_id[eq]` - Filter by specific integration ID\n- `account_id[eq]` - Filter by specific account ID\n- `execution_id[eq]` - Filter by specific execution ID\n- `started_at[gte]` - Filter executions started at or after a specific datetime (RFC3339 format)\n- `started_at[lte]` - Filter executions started at or before a specific datetime (RFC3339 format)\n- `started_at[gt]` - Filter executions started after a specific datetime\n- `started_at[lt]` - Filter executions started before a specific datetime\n- `operation_id[eq]` - Filter by operation name (e.g., \"assets_query_devices\")\n\n\n\n  If used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `started_at[desc]`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field id. For example, `started_at[asc]` will sort the results by `started_at` in ascending order.\nThe ordering defaults to `desc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Number of results to return (default 100, max 500)",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return execution history starting after this cursor.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListExecutionHistoryResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Operation Execution History",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      }
    },
    "/v1/organization/webhooks": {
      "get": {
        "description": "List webhooks for the organization\n\n**Operation ID:** `organizationWebhooks_list`",
        "operationId": "organizationWebhooks_list",
        "tags": [
          "OrganizationWebhooks"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Webhook` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Webhook` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListOrganizationWebhooksResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Organization Webhooks",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Create a new webhook for the organization\n\n**Operation ID:** `organizationWebhooks_create`",
        "operationId": "organizationWebhooks_create",
        "tags": [
          "OrganizationWebhooks"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrganizationWebhookResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Organization Webhook",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOrganizationWebhookRequest"
              }
            }
          }
        }
      }
    },
    "/v1/organization/webhooks/{webhookId}": {
      "get": {
        "description": "Returns the `Webhook` object matching `{webhookId}`.\n\n**Operation ID:** `organizationWebhooks_get`",
        "operationId": "organizationWebhooks_get",
        "tags": [
          "OrganizationWebhooks"
        ],
        "parameters": [
          {
            "name": "webhookId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOrganizationWebhookResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Organization Webhook",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Updates the `Webhook` object matching `{webhookId}`. For more information on\nOrganizations and Webhooks, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `organizationWebhooks_update`",
        "operationId": "organizationWebhooks_update",
        "tags": [
          "OrganizationWebhooks"
        ],
        "parameters": [
          {
            "name": "webhookId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateOrganizationWebhookResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Organization Webhook",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OrganizationWebhook"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patches the `Webhook` object matching `{webhookId}`. For more information on\nOrganizations and Webhooks, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `organizationWebhooks_patch`",
        "operationId": "organizationWebhooks_patch",
        "tags": [
          "OrganizationWebhooks"
        ],
        "parameters": [
          {
            "name": "webhookId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchOrganizationWebhookResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Organization Webhook",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Delete a webhook for the organization\n\n**Operation ID:** `organizationWebhooks_delete`",
        "operationId": "organizationWebhooks_delete",
        "tags": [
          "OrganizationWebhooks"
        ],
        "parameters": [
          {
            "name": "webhookId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Organization Webhook",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/organization": {
      "get": {
        "description": "Retrieve Organization\n\n**Operation ID:** `organization_get`",
        "operationId": "organization_get",
        "tags": [
          "Organization"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOrganizationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Organization",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Update Organization\n\n**Operation ID:** `organization_update`",
        "operationId": "organization_update",
        "tags": [
          "Organization"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateOrganizationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Organization",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Organization"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patch Organization\n\n**Operation ID:** `organization_patch`",
        "operationId": "organization_patch",
        "tags": [
          "Organization"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchOrganizationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Organization",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permissionsets": {
      "get": {
        "description": "Returns a list of all `PermissionSets` objects that match the query params.\n\n**Operation ID:** `permissionset_list`",
        "operationId": "permissionset_list",
        "tags": [
          "Permissionset"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListPermissionSetsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List PermissionSets",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/permissionsets/{permissionsetId}": {
      "get": {
        "description": "Returns the `PermissionSet` object matching `{permissionsetId}`. For more information on PermissionSets, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `permissionset_get`",
        "operationId": "permissionset_get",
        "tags": [
          "Permissionset"
        ],
        "parameters": [
          {
            "name": "permissionsetId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Permissions"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetPermissionSetResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get PermissionSet",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/roles": {
      "get": {
        "description": "Returns a list of all `Roles` objects that match the query params.\n\n**Operation ID:** `roles_list`",
        "operationId": "roles_list",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Role` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Role` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListRolesResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Roles",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Creates an `Role` object. For more information on Roles, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `roles_create`",
        "operationId": "roles_create",
        "tags": [
          "Roles"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRoleResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Role",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRoleRequest"
              }
            }
          }
        }
      }
    },
    "/v1/roles/{roleId}": {
      "get": {
        "description": "Returns the `Role` object matching `{roleId}`. For more information on Roles, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `roles_get`",
        "operationId": "roles_get",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "name": "roleId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRoleResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Role",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Updates the `Role` object matching `{roleId}`. For more information on Roles, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `roles_update`",
        "operationId": "roles_update",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "name": "roleId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateRoleResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Update Role",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RoleDefinition"
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patches the `Role` object matching `{roleId}`. For more information on Roles, refer to our\n[Synqly Overview](https://docs.synqly.com/docs/synqly-overview).\n\n**Operation ID:** `roles_patch`",
        "operationId": "roles_patch",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "name": "roleId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PatchRoleResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Patch Role",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PatchOperation"
                }
              }
            }
          }
        }
      },
      "delete": {
        "description": "Deletes the `Role` matching `{roleId}`. Deleting an `Role` also deletea\nall `Tokens` and `Credentials` belonging to the `Role`.\n\n**Operation ID:** `roles_delete`",
        "operationId": "roles_delete",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "name": "roleId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Role",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/status": {
      "get": {
        "description": "Returns all matching `Status` objects.\n\n**Operation ID:** `status_list`",
        "operationId": "status_list",
        "tags": [
          "Status"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Status` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Status` objects starting after this `account_id,integration_id`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `account_id,integration_id`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Expand the status result with the related integration and/or account information.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ListStatusOptions",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListStatusResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Status",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/status/{accountId}/{integrationId}": {
      "get": {
        "description": "Returns the integration `Status` object.\n\n**Operation ID:** `status_get`",
        "operationId": "status_get",
        "tags": [
          "Status"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetStatusResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Status",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "put": {
        "description": "Resets the integration `Status` object.\n\n**Operation ID:** `status_reset`",
        "operationId": "status_reset",
        "tags": [
          "Status"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Reset Status",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/status/{accountId}/{integrationId}/events": {
      "get": {
        "description": "Returns integration `Status` object list of `StatusEvent` objects.\n\n**Operation ID:** `status_list_events`",
        "operationId": "status_list_events",
        "tags": [
          "Status"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `StatusEvent` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `StatusEvent` objects starting after this `created_at`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "The order defaults to created_at[asc] and can changed to descending order by specifying created_at[desc].",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListStatusEventsResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Status Events",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/status/timeseries": {
      "get": {
        "description": "Returns organization last hour usage timeseries.\n\n**Operation ID:** `status_get_timeseries`",
        "operationId": "status_get_timeseries",
        "tags": [
          "Status"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetStatusTimeseries"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Status Timeseries",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/status/{accountId}/{integrationId}/timeseries": {
      "get": {
        "description": "Returns organization last hour usage timeseries.\n\n**Operation ID:** `status_get_integration_timeseries`",
        "operationId": "status_get_integration_timeseries",
        "tags": [
          "Status"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "interval",
            "in": "query",
            "description": "[hour] provide most recent 24 hour timeseries. default: hour",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetIntegrationTimeseries"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Integration Timeseries",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/suborgs": {
      "get": {
        "description": "List all organizations\n\n**Operation ID:** `subOrgs_list`",
        "operationId": "subOrgs_list",
        "tags": [
          "SubOrgs"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListOrganizationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Sub-Organizations",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "post": {
        "description": "Add a new organization.\n\n**Operation ID:** `subOrgs_create`",
        "operationId": "subOrgs_create",
        "tags": [
          "SubOrgs"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrganizationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Sub-Organization",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOrganizationRequest"
              }
            }
          }
        }
      }
    },
    "/v1/suborgs/{organizationId}": {
      "get": {
        "description": "Retrieve an Organization by ID\n\n**Operation ID:** `subOrgs_get`",
        "operationId": "subOrgs_get",
        "tags": [
          "SubOrgs"
        ],
        "parameters": [
          {
            "name": "organizationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetOrganizationResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Sub-Organization",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      },
      "delete": {
        "description": "Delete a Organization by ID. Also deletes\n\n**Operation ID:** `subOrgs_delete`",
        "operationId": "subOrgs_delete",
        "tags": [
          "SubOrgs"
        ],
        "parameters": [
          {
            "name": "organizationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Sub-Organization",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/tokens": {
      "post": {
        "description": "Create an adhoc organization token restricted to specified resources and permission set.\nTokens can only be reduced in scope, never expanded.\nPermissions are inherited from the token used to call this API.\nPermissions assigned to the new token will not be persisted, this is not a way to create roles.\n\n**Operation ID:** `tokens_create_token`",
        "operationId": "tokens_create_token",
        "tags": [
          "Tokens"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Organization Token",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTokenRequest"
              }
            }
          }
        }
      },
      "get": {
        "description": "Returns a list of all `RefreshToken` objects belonging to the Authorization Bearer\ntoken. For more infromation on Tokens, refer to\n[Authentication](/api-reference/authentication).\n\n**Operation ID:** `tokens_list`",
        "operationId": "tokens_list",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "description": "Number of `Token` objects to return in this page. Defaults to 100.",
            "required": false,
            "schema": {
              "type": "integer",
              "nullable": true
            }
          },
          {
            "name": "start_after",
            "in": "query",
            "description": "Return `Token` objects starting after this `name`.",
            "required": false,
            "schema": {
              "type": "string",
              "nullable": true
            }
          },
          {
            "name": "order",
            "in": "query",
            "description": "Select a field to order the results by. Defaults to `name`. To control the direction of the sorting, append\n`[asc]` or `[desc]` to the field name. For example, `name[desc]` will sort the results by `name` in descending order.\nThe ordering defaults to `asc` if not specified. May be used multiple times to order by multiple fields, and the\nordering is applied in the order the fields are specified.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter.\nIf used more than once, the queries are ANDed together.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "nullable": true
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListTokensResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "List Refresh Tokens",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/tokens/mcp": {
      "post": {
        "description": "Create a token for MCP authentication. This token is soley for MCP authentication and cannot\nauthenticate with any other API.\n\n**Operation ID:** `tokens_create_mcp_token`",
        "operationId": "tokens_create_mcp_token",
        "tags": [
          "Tokens"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateMCPTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create MCP Token",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMCPTokenRequest"
              }
            }
          }
        }
      }
    },
    "/v1/tokens/{accountId}/{integrationId}": {
      "post": {
        "description": "Create an adhoc integration token restricted to a single integration. The token used to call\nthis API must have the necessary permissions to create tokens and have access to the account\nand integration IDs. Permissions may not be escalated, so any operation that the invocation\ntoken does not have access to cannot be granted.\n\n**Operation ID:** `tokens_create_integration_token`",
        "operationId": "tokens_create_integration_token",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "accountId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "integrationId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateIntegrationTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Integration Token",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateIntegrationTokenRequest"
              }
            }
          }
        }
      }
    },
    "/v1/tokens/synqly-integrations": {
      "post": {
        "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis operation is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this operation.\n{% /admonition %}\nCreate a token for managing Synqly-specific integrations. This token can be used with the integration APIs to manage\nintegrations for Synqly-specific integrations, such as status events exports and async operations. See the\n[Synqly Integrations](https://docs.synqly.com/guides/synqly-integrations) documentation for more information.\n\n**Operation ID:** `tokens_create_synqly_integrations_token`",
        "operationId": "tokens_create_synqly_integrations_token",
        "tags": [
          "Tokens"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSynqlyIntegrationsTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Create Synqly Integrations Token",
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSynqlyIntegrationsTokenRequest"
              }
            }
          }
        },
        "x-badges": [
          {
            "name": "Alpha",
            "color": "in-development",
            "position": "before"
          }
        ]
      }
    },
    "/v1/tokens/{refreshTokenId}": {
      "delete": {
        "description": "Deletes the Refresh Token with id `{id}`. This immediately\ninvalidates both the primary and secondary token pairs.\n\n**Operation ID:** `tokens_delete`",
        "operationId": "tokens_delete",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "refreshTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Delete Adhoc Refresh Token",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/tokens/{refreshTokenId}/info": {
      "get": {
        "description": "Returns the `RefreshToken` object matching `{tokenId}`. For more information on\nTokens, refer to\n[Authentication](/api-reference/authentication).\n\n**Operation ID:** `tokens_get`",
        "operationId": "tokens_get",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "refreshTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Get Refresh Token",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/tokens/{ownerId}/{refreshTokenId}/reset": {
      "put": {
        "description": "This API can be used to reset `Organization` or `Integration` `RefreshTokens`.\nResets the specified `RefreshToken` and expiration time, removes the secondary, and resets access and refresh tokens for the\n`RefreshToken` object matching `{ownerId}/{refreshTokenId}` where `ownerId` is an `organizationId` or `integrationId`.\nAn `Organization` token with `administrator` permissions can be used to perform this operation.\n\n**Operation ID:** `tokens_reset`",
        "operationId": "tokens_reset",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "refreshTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResetTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Reset Refresh Token",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/tokens/{ownerId}/{refreshTokenId}/rotate": {
      "put": {
        "description": "This API can be used to rotate an `Organization` or `Integration` `RefreshTokens`.\nRotate deletes the existing `Secondary` TokenPair, moves the `Primary` TokenPair to the `Secondary` TokenPair and creates a new `Primary` TokenPair for the\n`RefreshToken` object matching `{ownerId}/{refreshTokenId}` where `ownerId` is an `organizationId` or `integrationId`.\nAn `Organization` token with `administrator` permissions can be used to perform this operation.\n\n**Operation ID:** `tokens_rotate`",
        "operationId": "tokens_rotate",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "ownerId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          },
          {
            "name": "refreshTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RotateTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Rotate Refresh Token",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/tokens/{refreshTokenId}/refresh": {
      "put": {
        "description": "Creates a new primary `TokenPair` object, setting the secondary `TokenPair`\nto the previous primary value. Call `/v1/removeSecondaryToken` to remove\nthis secondary backup once the new primary `TokenPair` has been deployed.\n\n**Operation ID:** `tokens_refresh`",
        "operationId": "tokens_refresh",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "refreshTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RefreshTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Refresh Token Pair",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    },
    "/v1/tokens/{refreshTokenId}/secondary": {
      "delete": {
        "description": "Deletes the secondary `TokenPair` for the `RefreshToken` object\nmatching `{refreshTokenId}`.\n\n**Operation ID:** `tokens_remove_secondary`",
        "operationId": "tokens_remove_secondary",
        "tags": [
          "Tokens"
        ],
        "parameters": [
          {
            "name": "refreshTokenId",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Id"
            }
          }
        ],
        "responses": {
          "204": {
            "description": ""
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "403": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "404": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "405": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "409": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "415": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "429": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                }
              }
            }
          }
        },
        "summary": "Remove Secondary Token",
        "security": [
          {
            "BearerAuth": []
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "AccountId": {
        "title": "AccountId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Account"
      },
      "Account": {
        "title": "Account",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this account."
          },
          "organization_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Organization that manages this Account."
          },
          "environment": {
            "$ref": "#/components/schemas/Environment",
            "description": "Environment this account runs in."
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "User defined labels that apply to this account. These values can be used in role bindings to limit the scope of permissions."
          }
        },
        "required": [
          "id",
          "fullname",
          "organization_id",
          "environment"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "ListAccountsResponse": {
        "title": "ListAccountsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Account"
            }
          },
          "total": {
            "type": "integer",
            "nullable": true
          }
        },
        "required": [
          "result"
        ]
      },
      "GetAccountResponse": {
        "title": "GetAccountResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Account"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateAccountRequest": {
        "title": "CreateAccountRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Account (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to AccountId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Account, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "environment": {
            "$ref": "#/components/schemas/Environment",
            "nullable": true,
            "description": "Environment this account runs in. Defaults to `prod` if not specified."
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "User defined labels that apply to this account. Labels are limited to 48 characters in length and must contain only letters, numbers, underscores, hyphens, colons, and periods. The label values can be used in role bindings to limit the scope of permissions."
          }
        }
      },
      "CreateAccountResponseResult": {
        "title": "CreateAccountResponseResult",
        "type": "object",
        "properties": {
          "account": {
            "$ref": "#/components/schemas/Account"
          }
        },
        "required": [
          "account"
        ]
      },
      "CreateAccountResponse": {
        "title": "CreateAccountResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CreateAccountResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateAccountRequest": {
        "title": "UpdateAccountRequest",
        "$ref": "#/components/schemas/Account"
      },
      "UpdateAccountResponse": {
        "title": "UpdateAccountResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Account"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchAccountResponse": {
        "title": "PatchAccountResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Account"
          }
        },
        "required": [
          "result"
        ]
      },
      "AuditType": {
        "title": "AuditType",
        "type": "string",
        "enum": [
          "ALARM",
          "ERROR",
          "API",
          "UNKNOWN"
        ]
      },
      "HTTPMethod": {
        "title": "HTTPMethod",
        "type": "string",
        "enum": [
          "DELETE",
          "GET",
          "PATCH",
          "POST",
          "PUT"
        ]
      },
      "Audit": {
        "title": "Audit",
        "type": "object",
        "properties": {
          "environment": {
            "type": "string"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Time when the API request occurred."
          },
          "remote_addr": {
            "type": "string"
          },
          "user_agent": {
            "type": "string"
          },
          "audit_type": {
            "$ref": "#/components/schemas/AuditType"
          },
          "method": {
            "$ref": "#/components/schemas/HTTPMethod"
          },
          "path": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "body": {
            "nullable": true
          },
          "response": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "member_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true
          },
          "integration_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true
          },
          "bridge_group_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true
          }
        },
        "required": [
          "environment",
          "created_at",
          "remote_addr",
          "user_agent",
          "audit_type",
          "method",
          "path",
          "code"
        ]
      },
      "ListAuditEventsResponse": {
        "title": "ListAuditEventsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Audit"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "AuthCode": {
        "title": "AuthCode",
        "type": "string",
        "enum": [
          "success",
          "failure",
          "disabled",
          "expired",
          "invited",
          "locked"
        ]
      },
      "LogonRequest": {
        "title": "LogonRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Email address identifying the member to initiate a session for."
          },
          "secret": {
            "type": "string",
            "description": "Password of the member to initiate a session for."
          }
        },
        "required": [
          "name",
          "secret"
        ]
      },
      "LogonResponseResult": {
        "title": "LogonResponseResult",
        "type": "object",
        "properties": {
          "auth_code": {
            "$ref": "#/components/schemas/AuthCode",
            "description": "Authentication result"
          },
          "auth_msg": {
            "type": "string",
            "nullable": true,
            "description": "Authentication failure message"
          },
          "refresh_token_id": {
            "$ref": "#/components/schemas/Id"
          },
          "token": {
            "$ref": "#/components/schemas/TokenPair"
          },
          "organization": {
            "$ref": "#/components/schemas/Organization"
          },
          "member": {
            "$ref": "#/components/schemas/Member"
          }
        },
        "required": [
          "auth_code",
          "refresh_token_id",
          "token",
          "organization",
          "member"
        ]
      },
      "LogonResponse": {
        "title": "LogonResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/LogonResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "ChangePasswordResponseResult": {
        "title": "ChangePasswordResponseResult",
        "type": "object",
        "properties": {
          "auth_code": {
            "$ref": "#/components/schemas/AuthCode",
            "description": "Authentication result"
          },
          "auth_msg": {
            "type": "string",
            "nullable": true,
            "description": "Authentication failure message"
          }
        },
        "required": [
          "auth_code"
        ]
      },
      "ChangePasswordResponse": {
        "title": "ChangePasswordResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/ChangePasswordResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "ChangePasswordRequest": {
        "title": "ChangePasswordRequest",
        "type": "object",
        "properties": {
          "old_secret": {
            "type": "string",
            "description": "Old member secret"
          },
          "new_secret": {
            "type": "string",
            "description": "New member secret"
          }
        },
        "required": [
          "old_secret",
          "new_secret"
        ]
      },
      "BillingMonth": {
        "title": "BillingMonth",
        "type": "string",
        "enum": [
          "partial",
          "january",
          "february",
          "march",
          "april",
          "may",
          "june",
          "july",
          "august",
          "september",
          "october",
          "november",
          "december"
        ]
      },
      "Billing": {
        "title": "Billing",
        "type": "object",
        "description": "Billing report covering total usage for a specific month.",
        "properties": {
          "organization_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Organization being billed."
          },
          "month": {
            "$ref": "#/components/schemas/BillingMonth",
            "description": "Billing report month. Full reports are available for the previous 12 months and a partial report for the current month-to-date."
          },
          "report_date": {
            "type": "string",
            "format": "date-time",
            "description": "Billing report generation date"
          },
          "csv_data": {
            "type": "string",
            "description": "Total usage for all Accounts and Integrations within the Organization, exported in comma-separated values (CSV) format. Columns include Organization name, Account names, Integration names, Environment, successful and failed requests, and total ingress and egress amounts in bytes."
          }
        },
        "required": [
          "organization_id",
          "month",
          "report_date",
          "csv_data"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "ListBillingResponse": {
        "title": "ListBillingResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Billing"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetBillingResponse": {
        "title": "GetBillingResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Billing"
          }
        },
        "required": [
          "result"
        ]
      },
      "BridgeGroupId": {
        "title": "BridgeGroupId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Bridge Group."
      },
      "BridgeGroup": {
        "title": "BridgeGroup",
        "type": "object",
        "description": "A Bridge Group represents a connection between the Synqly Saas or Embedded service and a Bridge Agent. See 'Synqly Bridge Agent' guide in Synqly docs for additional information.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Full name of bridge"
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Description of the resources included in the bridge and permissions granted on those resources. Includes details of when to use this bridge along with the intended personas."
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "Labels applied to Bridges within the group. These labels can be used by integrations to select the groups of bridges capable of handling requests to the integration."
          }
        },
        "required": [
          "id",
          "fullname"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "ListBridgesResponse": {
        "title": "ListBridgesResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BridgeGroup"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetBridgeResponse": {
        "title": "GetBridgeResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/BridgeGroup"
          }
        },
        "required": [
          "result"
        ]
      },
      "GetBridgeStatusResponse": {
        "title": "GetBridgeStatusResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BridgeStatus"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateBridgeRequest": {
        "title": "CreateBridgeRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Bridge (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to BridgeGroupId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Bridge, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Description of the resources included in the bridge and permissions granted on those resources. Includes details of when to use this bridge along with the intended personas."
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "Bridge selection labels"
          }
        }
      },
      "CreateBridgeResponseResult": {
        "title": "CreateBridgeResponseResult",
        "type": "object",
        "properties": {
          "bridge": {
            "$ref": "#/components/schemas/BridgeGroup"
          },
          "credential": {
            "type": "string",
            "description": "JWT for the Bridge Group to connect to Synqly. This must be saved in a file {bridgeId}.creds in the same directory as the bridge executable."
          }
        },
        "required": [
          "bridge",
          "credential"
        ]
      },
      "CreateBridgeResponse": {
        "title": "CreateBridgeResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CreateBridgeResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateBridgeRequest": {
        "title": "UpdateBridgeRequest",
        "$ref": "#/components/schemas/BridgeGroup"
      },
      "UpdateBridgeResponse": {
        "title": "UpdateBridgeResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/BridgeGroup"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchBridgeResponse": {
        "title": "PatchBridgeResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/BridgeGroup"
          }
        },
        "required": [
          "result"
        ]
      },
      "BridgeStatus": {
        "title": "BridgeStatus",
        "type": "object",
        "properties": {
          "current_time": {
            "type": "string",
            "format": "date-time",
            "description": "Local time on the Bridge when the status check was performed."
          },
          "response_duration": {
            "type": "string",
            "description": "Round trip time for the status check."
          },
          "local_config": {
            "$ref": "#/components/schemas/BridgeLocalConfig",
            "description": "Local configuration parameters for the Bridge."
          },
          "local_stats": {
            "$ref": "#/components/schemas/BridgeLocalStats",
            "description": "Local bridge statistics"
          }
        },
        "required": [
          "current_time",
          "response_duration",
          "local_config",
          "local_stats"
        ]
      },
      "BridgeLocalConfig": {
        "title": "BridgeLocalConfig",
        "type": "object",
        "properties": {
          "version": {
            "type": "string",
            "description": "Version of the Bridge."
          },
          "allow_addresses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of IP addresses that the Bridge is allowed to connect to."
          },
          "vault": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true,
            "description": "Vault configuration for the Bridge."
          }
        },
        "required": [
          "version",
          "allow_addresses"
        ]
      },
      "BridgeLocalStats": {
        "title": "BridgeLocalStats",
        "type": "object",
        "properties": {
          "requests": {
            "type": "integer",
            "format": "int64"
          },
          "failures": {
            "type": "integer",
            "format": "int64"
          },
          "in_bytes": {
            "type": "integer",
            "format": "int64"
          },
          "out_bytes": {
            "type": "integer",
            "format": "int64"
          }
        },
        "required": [
          "requests",
          "failures",
          "in_bytes",
          "out_bytes"
        ]
      },
      "ProviderId": {
        "title": "ProviderId",
        "type": "string"
      },
      "CategoryId": {
        "title": "CategoryId",
        "type": "string",
        "enum": [
          "appsec",
          "assets",
          "cloudsecurity",
          "custom",
          "edr",
          "identity",
          "incidentresponse",
          "notifications",
          "siem",
          "sink",
          "storage",
          "ticketing",
          "vulnerabilities"
        ],
        "description": "Id of the Integrations category"
      },
      "ProviderCapabilitiesBase": {
        "title": "ProviderCapabilitiesBase",
        "type": "object",
        "description": "Base properties for provider capabilities. This type is used both\ndirectly (when providers are nested in connectors) and extended by\nProviderCapabilities (which adds the expandable connector field).",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/ProviderId",
            "description": "Unique identifier for the Provider."
          },
          "name": {
            "type": "string",
            "description": "Name of the Provider."
          },
          "fullname": {
            "type": "string",
            "description": "Display name of the Provider."
          },
          "vendor": {
            "type": "string",
            "description": "Display name of the Provider vendor."
          },
          "description": {
            "type": "string",
            "description": "Description of the Provider."
          },
          "connector_id": {
            "$ref": "#/components/schemas/CategoryId",
            "description": "Id of the Connector that the Provider implements."
          },
          "operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderOperations"
            },
            "nullable": true,
            "description": "Operations that the Provider implements."
          },
          "provider_config": {
            "nullable": true,
            "description": "Details on the specific configuration options for the Provider."
          },
          "release": {
            "$ref": "#/components/schemas/ProviderRelease",
            "nullable": true,
            "description": "Provider availability information."
          }
        },
        "required": [
          "id",
          "name",
          "fullname",
          "vendor",
          "description",
          "connector_id"
        ]
      },
      "ProviderCapabilities": {
        "title": "ProviderCapabilities",
        "type": "object",
        "properties": {
          "connector": {
            "$ref": "#/components/schemas/ConnectorOrId",
            "nullable": true,
            "description": "Id of the Connector that the Provider implements – or, if\n`expand=connector` is set – the details of the Connector. NOTE:\nThe current default behavior is to return the ID of the\nConnector. This field will soon only be populated when\n`expand=connector` is set in the APIs that support it. It is\nrecommended you use `connector_id` for a stable reference to the\nConnector ID. This field will soon only be populated when\n`expand=connector` is set in the APIs that support it."
          }
        },
        "allOf": [
          {
            "$ref": "#/components/schemas/ProviderCapabilitiesBase"
          }
        ]
      },
      "ProviderRelease": {
        "title": "ProviderRelease",
        "type": "object",
        "properties": {
          "availability": {
            "$ref": "#/components/schemas/Availability",
            "description": "Availability status."
          },
          "environments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderEnvironment"
            },
            "description": "Environments the Provider is available to."
          }
        },
        "required": [
          "availability",
          "environments"
        ]
      },
      "Availability": {
        "title": "Availability",
        "type": "string",
        "enum": [
          "internal",
          "in-development",
          "pre-release",
          "deprecated",
          "generally-available"
        ]
      },
      "ProviderEnvironment": {
        "title": "ProviderEnvironment",
        "type": "string",
        "enum": [
          "prod",
          "test"
        ]
      },
      "ConnectorOrId": {
        "title": "ConnectorOrId",
        "oneOf": [
          {
            "$ref": "#/components/schemas/CategoryId"
          },
          {
            "$ref": "#/components/schemas/Connector"
          }
        ]
      },
      "Connector": {
        "title": "Connector",
        "type": "object",
        "description": "Provides details of the Connector.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/CategoryId",
            "description": "Unique identifier for the Connector."
          },
          "name": {
            "$ref": "#/components/schemas/CategoryId",
            "description": "Name of the connector."
          },
          "fullname": {
            "type": "string",
            "description": "Display name of the Connector."
          },
          "description": {
            "type": "string",
            "description": "Description of the Connector."
          },
          "provider_ids": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderId"
            },
            "description": "List of Providers that implement the Connector."
          },
          "providers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderCapabilitiesBase"
            },
            "nullable": true,
            "description": "List of capabilities for Providers that implement the Connector.\nUses ProviderCapabilitiesBase which omits the expandable connector\nfield since nested providers never have expanded connectors."
          },
          "connector": {
            "$ref": "#/components/schemas/CategoryId",
            "nullable": true,
            "description": "DEPRECATED – use `id` instead."
          },
          "release": {
            "$ref": "#/components/schemas/ConnectorRelease",
            "nullable": true,
            "description": "Connector availability information."
          }
        },
        "required": [
          "id",
          "name",
          "fullname",
          "description",
          "provider_ids"
        ]
      },
      "ConnectorRelease": {
        "title": "ConnectorRelease",
        "type": "object",
        "properties": {
          "availability": {
            "$ref": "#/components/schemas/Availability",
            "description": "Availability status."
          }
        },
        "required": [
          "availability"
        ]
      },
      "ProviderOperations": {
        "title": "ProviderOperations",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the operation."
          },
          "name": {
            "type": "string",
            "description": "Name of the operation."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Display name of the operation."
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Description of the operation."
          },
          "request_method": {
            "type": "string",
            "nullable": true,
            "description": "HTTP method used for the operation."
          },
          "request_path": {
            "type": "string",
            "nullable": true,
            "description": "URI template path for the operation, including path parameters."
          },
          "supported": {
            "type": "boolean",
            "description": "Whether the operation is supported by the provider."
          },
          "required_fields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "List of fields in the request body that are required by the\nprovider for this operation. Due to limitations of the OpenAPI\nformat these fields may be marked as optional, even though they\nare in fact required by this provider."
          },
          "supported_response_fields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "List of fields that may be returned in the response body. Any\nfields not listed in this array are not supported by this\nprovider and will not be returned in the response body."
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderFilter"
            },
            "nullable": true,
            "description": "Filters that can be applied to this operation."
          },
          "orders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderOrder"
            },
            "nullable": true,
            "description": "Orders that can be applied to this operation."
          },
          "request_body": {
            "$ref": "#/components/schemas/RequestBody",
            "nullable": true,
            "description": "This field is only available if the operation supports a request\nbody. Describes the request body and its schema."
          }
        },
        "required": [
          "id",
          "name",
          "supported"
        ]
      },
      "RequestBody": {
        "title": "RequestBody",
        "type": "object",
        "description": "Describes the request body and its schema.",
        "properties": {
          "required": {
            "type": "boolean",
            "description": "If true the request body is required, false otherwise."
          },
          "schema": {
            "type": "object",
            "additionalProperties": true,
            "nullable": true,
            "description": "The schema defining the type used for the request body. If\nexpanded will be a full JSON schema of the entire request body,\notherwise this will be a reference object. The reference object\nhas a single key `$ref`, which is a URI [RFC3986] identifying the\nlocation of a component within the Engine OpenAPI specification."
          }
        },
        "required": [
          "required"
        ]
      },
      "ProviderFilter": {
        "title": "ProviderFilter",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the filter."
          },
          "type": {
            "$ref": "#/components/schemas/FilterType",
            "description": "Type of the value that this filter can apply to"
          },
          "operators": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of operators that this filter supports."
          },
          "values": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "List of possible values for this filter."
          }
        },
        "required": [
          "name",
          "type",
          "operators"
        ]
      },
      "ProviderOrder": {
        "title": "ProviderOrder",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the field to order by."
          },
          "directions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderDirection"
            },
            "description": "List of possible directions to order by."
          }
        },
        "required": [
          "name",
          "directions"
        ]
      },
      "OrderDirection": {
        "title": "OrderDirection",
        "type": "string",
        "enum": [
          "asc",
          "desc"
        ]
      },
      "FilterType": {
        "title": "FilterType",
        "type": "string",
        "enum": [
          "string",
          "datetime",
          "enum",
          "boolean",
          "number"
        ]
      },
      "ListConnectorsCapabilitiesResponse": {
        "title": "ListConnectorsCapabilitiesResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Connector"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "ListProvidersCapabilitiesResponse": {
        "title": "ListProvidersCapabilitiesResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderCapabilities"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "ProviderCapabilitiesResponse": {
        "title": "ProviderCapabilitiesResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/ProviderCapabilities"
          }
        },
        "required": [
          "result"
        ]
      },
      "ListConnectorCapabilitiesExpandOptions": {
        "title": "ListConnectorCapabilitiesExpandOptions",
        "type": "string",
        "enum": [
          "providers"
        ]
      },
      "ListProviderCapabilitiesExpandOptions": {
        "title": "ListProviderCapabilitiesExpandOptions",
        "type": "string",
        "enum": [
          "connector",
          "operations",
          "provider_config"
        ]
      },
      "GetProviderCapabilitiesExpandOptions": {
        "title": "GetProviderCapabilitiesExpandOptions",
        "type": "string",
        "enum": [
          "connector",
          "operations",
          "request_body",
          "provider_config"
        ]
      },
      "Id": {
        "title": "Id",
        "type": "string"
      },
      "Base": {
        "title": "Base",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Human-readable name for this resource"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Time object was originally created"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Last time object was updated"
          }
        },
        "required": [
          "name",
          "created_at",
          "updated_at"
        ]
      },
      "Problem": {
        "title": "Problem",
        "type": "object",
        "description": "Generic base type for problems in Synqly. This object carries both machine-readable data as well as information intended for display purposes.",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ProblemType",
            "nullable": true
          },
          "occurred_at": {
            "type": "string",
            "format": "date-time",
            "description": "The date and time the problem occurred."
          },
          "status": {
            "type": "integer",
            "description": "The HTTP status code of the problem. Matches the HTTP response code sent by the server."
          },
          "instance": {
            "type": "string",
            "description": "A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced."
          },
          "cause": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProblemCause"
            },
            "nullable": true,
            "description": "A list of the root cause(s) for this problem occurrence. Includes at minimum one root cause, and is otherwise an unordered list of causes."
          }
        },
        "required": [
          "occurred_at",
          "status",
          "instance"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/ProblemDetails"
          }
        ]
      },
      "ProblemCause": {
        "title": "ProblemCause",
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ProblemType"
          }
        },
        "required": [
          "type"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/ProblemDetails"
          }
        ]
      },
      "ProblemType": {
        "title": "ProblemType",
        "type": "string",
        "description": "A URI reference that identifies the type of problem that occurred. When the URI scheme is HTTP(s), it may or may not be possible to deference the URL to a display-friendly description of the problem type."
      },
      "ProblemDetails": {
        "title": "ProblemDetails",
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "A short, display-friendly summary of the problem."
          },
          "detail": {
            "type": "string",
            "nullable": true,
            "description": "A display-friendly and more detailed explanation of the problem. It may offer additional contextual detail, but may also be just a generic description of the problem."
          },
          "remediation": {
            "type": "string",
            "nullable": true,
            "description": "A display-friendly explanation for how to remediate the problem. This field may be omitted in case there are multiple problems, each with its own remediation, or if no remediation is possible."
          },
          "context": {
            "$ref": "#/components/schemas/ProblemContext",
            "nullable": true,
            "description": "Additional context providing further detail about the problem, such as a problematic input parameter and/or a list of related resources."
          }
        },
        "required": [
          "message"
        ]
      },
      "ProblemContext": {
        "title": "ProblemContext",
        "type": "object",
        "properties": {
          "parameter": {
            "$ref": "#/components/schemas/ProblematicParameter",
            "nullable": true,
            "description": "If the problem is related to a `query`, `header`, `path` or `body` parameter, this field will describe the problematic parameter and where to find it."
          },
          "resources": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ResourceReference"
            },
            "nullable": true
          },
          "raw_error": {
            "type": "string",
            "nullable": true,
            "description": "If available this represents the underlying raw error, for example an error response from a Provider."
          },
          "provider_details": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true,
            "description": "If available this represents the underlying details from the provider. May include the error message, status code, and other details."
          }
        }
      },
      "ProblematicParameter": {
        "title": "ProblematicParameter",
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "If the `location` of the parameter is `body`, this value is always a JSON Pointer, otherwise it's the name of the parameter."
          },
          "location": {
            "$ref": "#/components/schemas/ParameterLocation",
            "description": "The location of the parameter. Possible values are `query`, `header`, `path` or `body`."
          },
          "value": {
            "nullable": true,
            "description": "The given value of the parameter."
          }
        },
        "required": [
          "id",
          "location"
        ]
      },
      "ParameterLocation": {
        "title": "ParameterLocation",
        "type": "string",
        "enum": [
          "header",
          "path",
          "query",
          "body"
        ]
      },
      "ResourceReference": {
        "title": "ResourceReference",
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ResourceType",
            "description": "Type of the related resource."
          },
          "id": {
            "type": "string",
            "description": "ID of the related resource."
          },
          "rel": {
            "$ref": "#/components/schemas/ProblemRelation",
            "description": "The way in which the resource relates to the problem."
          }
        },
        "required": [
          "type",
          "id",
          "rel"
        ]
      },
      "ProblemRelation": {
        "title": "ProblemRelation",
        "type": "string",
        "enum": [
          "affected",
          "cause"
        ]
      },
      "ResourceType": {
        "title": "ResourceType",
        "type": "string",
        "enum": [
          "account",
          "bridge",
          "credential",
          "integration_point",
          "integration",
          "member",
          "operation",
          "organization_webhook",
          "role",
          "sub_org",
          "token",
          "transform"
        ]
      },
      "PatchOp": {
        "title": "PatchOp",
        "type": "string",
        "enum": [
          "add",
          "copy",
          "move",
          "remove",
          "replace",
          "test"
        ]
      },
      "PatchOperation": {
        "title": "PatchOperation",
        "type": "object",
        "description": "JSON patch to apply. A JSON patch is a list of patch operations. (see https://jsonpatch.com/)",
        "properties": {
          "op": {
            "$ref": "#/components/schemas/PatchOp",
            "description": "The operation to perform. Supported values are `add`, `copy`, `move`, `replace`, `remove`, and `test`."
          },
          "path": {
            "type": "string",
            "description": "The path to the field to update. The path is a JSON Pointer."
          },
          "from": {
            "type": "string",
            "nullable": true,
            "description": "The path to the field to copy from. This is required for `copy` and `move` operations."
          },
          "value": {
            "nullable": true,
            "description": "The value to set the field to. This is required for `add`, `replace` and `test` operations."
          }
        },
        "required": [
          "op",
          "path"
        ]
      },
      "ResourceId": {
        "title": "ResourceId",
        "type": "string",
        "enum": [
          "alerts",
          "applications",
          "audit_logs",
          "comments",
          "devices",
          "events",
          "evidence",
          "findings",
          "groups",
          "investigations",
          "iocs",
          "log_providers",
          "posture_scores",
          "projects",
          "scans",
          "scan_activities",
          "threats",
          "tickets",
          "users",
          "compliance",
          "cloudresourceinventory"
        ]
      },
      "ActionId": {
        "title": "ActionId",
        "type": "string",
        "enum": [
          "query",
          "read",
          "create",
          "update",
          "delete",
          "patch"
        ]
      },
      "CredentialId": {
        "title": "CredentialId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Credential"
      },
      "OwnerType": {
        "title": "OwnerType",
        "type": "string",
        "enum": [
          "account",
          "integration",
          "integration_point",
          "organization_webhook"
        ]
      },
      "ManagedType": {
        "title": "ManagedType",
        "type": "string",
        "enum": [
          "Managed",
          "Unmanaged"
        ]
      },
      "Credential": {
        "title": "Credential",
        "type": "object",
        "description": "Credential to access an integration. Each credential is owned by an Account, Integration, IntegrationPoint or OrganizationWebhook.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Account that manages this credential."
          },
          "integration_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration associated with this credential."
          },
          "integration_point_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration Point associated with this credential."
          },
          "organization_webhook_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Organization Webhook associated with this credential."
          },
          "owner_type": {
            "$ref": "#/components/schemas/OwnerType",
            "description": "One of `account` or `integration_point`."
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this Credential"
          },
          "config": {
            "$ref": "#/components/schemas/CredentialConfig",
            "nullable": true,
            "description": "Credential configuration"
          },
          "expires": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "Time when this credential expires and can no longer be used again."
          },
          "managed": {
            "$ref": "#/components/schemas/ManagedType",
            "description": "Field is set by the management process. Determines lifecycle and ownership of the credential."
          }
        },
        "required": [
          "id",
          "owner_type",
          "fullname",
          "managed"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "CredentialResponse": {
        "title": "CredentialResponse",
        "type": "object",
        "description": "Response object for a Credential",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Account that manages this credential."
          },
          "integration_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration associated with this credential."
          },
          "integration_point_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration Point associated with this credential."
          },
          "organization_webhook_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration Point associated with this credential."
          },
          "owner_type": {
            "$ref": "#/components/schemas/OwnerType",
            "description": "One of `account` or `integration_point`."
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this Credential. Defaults to the same value as the 'name' field if not specified."
          },
          "config": {
            "$ref": "#/components/schemas/CredentialConfigNoSecret"
          },
          "expires": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "Time when this credential expires and can no longer be used again."
          },
          "managed": {
            "$ref": "#/components/schemas/ManagedType",
            "description": "Field is set by the management process. Determines lifecycle and ownership of the credential."
          }
        },
        "required": [
          "id",
          "owner_type",
          "fullname",
          "config",
          "managed"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "CredentialConfigNoSecret": {
        "title": "CredentialConfigNoSecret",
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          }
        },
        "required": [
          "type"
        ]
      },
      "AwsCredentialId": {
        "title": "AwsCredentialId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for an AWS Credential"
      },
      "AwsRoleCredentialId": {
        "title": "AwsRoleCredentialId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for an AWS Role Credential"
      },
      "BasicCredentialId": {
        "title": "BasicCredentialId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for a Basic Credential"
      },
      "TokenCredentialId": {
        "title": "TokenCredentialId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for a Token Credential"
      },
      "SecretCredentialId": {
        "title": "SecretCredentialId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for a Secret Credential"
      },
      "OAuthClientCredentialId": {
        "title": "OAuthClientCredentialId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for an OAuth Client Credential"
      },
      "CredentialConfig": {
        "title": "CredentialConfig",
        "oneOf": [
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "aws"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/AwsCredential"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "aws_role"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/AwsRoleCredential"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "token"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "basic"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "secret"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "o_auth_client"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "tls_certificate"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/TlsCertificateCredential"
              }
            ],
            "required": [
              "type"
            ]
          }
        ]
      },
      "CredentialBase": {
        "title": "CredentialBase",
        "type": "object",
        "description": "Base type for all credential types",
        "properties": {}
      },
      "AwsRoleCredential": {
        "title": "AWS Role",
        "type": "object",
        "description": "AWS Role configuration to authenticate with AWS. Delegated access with AWS Roles are used to create short-term credentials to access AWS resources in the destination AWS account. You can review [this guide on delegating access across AWS accounts using IAM roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html).",
        "properties": {
          "role_arn": {
            "type": "string",
            "description": "ARN of the AWS role to assume in the destination account.",
            "title": "Role ARN"
          },
          "external_id": {
            "type": "string",
            "description": "External ID to use when assuming the AWS role in the destination account.",
            "title": "External ID"
          },
          "role_session_name": {
            "type": "string",
            "nullable": true,
            "description": "Name of the AWS role session.",
            "title": "Role Session Name"
          },
          "duration": {
            "type": "integer",
            "nullable": true,
            "description": "The duration, in seconds, of the role session. The value specified can range from 900 seconds (15 minutes) up to the maximum session duration set for the role. The maximum session duration setting can have a value from 1 hour.",
            "title": "Duration"
          }
        },
        "required": [
          "role_arn",
          "external_id"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/CredentialBase"
          }
        ]
      },
      "AwsCredential": {
        "title": "AWS Access Keys",
        "type": "object",
        "description": "Access key to authenticate with AWS. Access keys are long-term credentials for an IAM user and consist of an Access Key ID and a Secret Access Key. Follow [this guide to generate credentials](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html).\nYou may optionally provide a session token if you are using temporary credentials.",
        "properties": {
          "access_key_id": {
            "type": "string",
            "description": "Access Key ID portion of the AWS access key pair.",
            "title": "Access Key ID"
          },
          "secret_access_key": {
            "type": "string",
            "description": "Secret portion of the AWS access key pair.",
            "title": "Secret Access Key",
            "format": "password"
          },
          "session": {
            "type": "string",
            "nullable": true,
            "description": "A temporary session token. Session tokens are optional and are only necessary if you are using temporary credentials.",
            "title": "Session",
            "format": "password"
          }
        },
        "required": [
          "access_key_id",
          "secret_access_key"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/CredentialBase"
          }
        ]
      },
      "TokenCredential": {
        "title": "Token",
        "type": "object",
        "description": "Token used to authenticate with an external service.",
        "properties": {
          "secret": {
            "type": "string",
            "description": "Secret value of the token.",
            "title": "Secret",
            "format": "password"
          }
        },
        "required": [
          "secret"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/CredentialBase"
          }
        ]
      },
      "BasicCredential": {
        "title": "Basic Credentials",
        "type": "object",
        "description": "Username and secret used to authenticate with an external service.",
        "properties": {
          "username": {
            "type": "string",
            "description": "Username value for authentication",
            "title": "Username"
          },
          "secret": {
            "type": "string",
            "description": "Secret value for authentication",
            "title": "Secret",
            "format": "password"
          }
        },
        "required": [
          "username",
          "secret"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/CredentialBase"
          }
        ]
      },
      "SecretCredential": {
        "title": "Secret",
        "type": "object",
        "description": "Secret value such as password or webhook url",
        "properties": {
          "secret": {
            "type": "string",
            "description": "Secret value",
            "title": "Secret",
            "format": "password"
          }
        },
        "required": [
          "secret"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/CredentialBase"
          }
        ]
      },
      "OAuthClientCredential": {
        "title": "Client Credentials",
        "type": "object",
        "description": "A Client ID and secret used for authenticating with OAuth 2.0 compatible service using the client credentials grant.",
        "properties": {
          "token_url": {
            "type": "string",
            "nullable": true,
            "description": "Optional URL for the OAuth 2.0 token exchange if it can not be constructed based on provider configuration",
            "title": "Token URL"
          },
          "client_id": {
            "type": "string",
            "description": "The ID of the client application defined at the service provider",
            "title": "Client ID"
          },
          "client_secret": {
            "type": "string",
            "description": "Secret value for authentication",
            "title": "Client Secret",
            "format": "password"
          },
          "extra": {
            "type": "object",
            "additionalProperties": true,
            "nullable": true,
            "description": "Optional connection specific JSON map data such as a signing key ID or organization ID",
            "title": "Extra"
          }
        },
        "required": [
          "client_id",
          "client_secret"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/CredentialBase"
          }
        ]
      },
      "TlsCertificateCredential": {
        "title": "TlsCertificateCredential",
        "type": "object",
        "description": "A PEM-encoded certificate and private key pair. Used for TLS client authentication (mutual TLS), server identity, or other cryptographic operations requiring a certificate with its associated private key.",
        "properties": {
          "certificate": {
            "type": "string",
            "description": "PEM-encoded certificate."
          },
          "private_key": {
            "type": "string",
            "description": "PEM-encoded private key corresponding to the certificate."
          }
        },
        "required": [
          "certificate",
          "private_key"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/CredentialBase"
          }
        ]
      },
      "ListCredentialsResponse": {
        "title": "ListCredentialsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CredentialResponse"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetCredentialResponse": {
        "title": "GetCredentialResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CredentialResponse"
          }
        },
        "required": [
          "result"
        ]
      },
      "LookupCredentialResponse": {
        "title": "LookupCredentialResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CredentialResponse"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateCredentialRequest": {
        "title": "CreateCredentialRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Credential (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to CredentialId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Credential, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "config": {
            "$ref": "#/components/schemas/CredentialConfig",
            "nullable": true,
            "description": "Credential configuration"
          },
          "owner_type": {
            "$ref": "#/components/schemas/OwnerType",
            "nullable": true,
            "description": "One of `account` or `integration_point`; defaults to `account` if not specified."
          },
          "expires": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "Time when this credential expires and can no longer be used again."
          }
        }
      },
      "CreateCredentialResponse": {
        "title": "CreateCredentialResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CredentialResponse"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateCredentialRequest": {
        "title": "UpdateCredentialRequest",
        "$ref": "#/components/schemas/Credential"
      },
      "UpdateCredentialResponse": {
        "title": "UpdateCredentialResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CredentialResponse"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchCredentialResponse": {
        "title": "PatchCredentialResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CredentialResponse"
          }
        },
        "required": [
          "result"
        ]
      },
      "CustomId": {
        "title": "CustomId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this organization custom provider."
      },
      "Custom": {
        "title": "Custom",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this custom provider."
          },
          "organization_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Organization that manages this custom provider."
          },
          "data": {
            "type": "string",
            "description": "The YAML custom provider definition. Must follow the custom provider definition schema."
          }
        },
        "required": [
          "id",
          "fullname",
          "organization_id",
          "data"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "ListCustomsResponse": {
        "title": "ListCustomsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Custom"
            }
          },
          "total": {
            "type": "integer",
            "nullable": true
          }
        },
        "required": [
          "result"
        ]
      },
      "GetCustomResponse": {
        "title": "GetCustomResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Custom"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateCustomRequest": {
        "title": "CreateCustomRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this custom provider (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to CustomId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this custom provider, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "data": {
            "type": "string",
            "description": "transform to apply."
          }
        },
        "required": [
          "data"
        ]
      },
      "CreateCustomResponseResult": {
        "title": "CreateCustomResponseResult",
        "type": "object",
        "properties": {
          "custom": {
            "$ref": "#/components/schemas/Custom"
          }
        },
        "required": [
          "custom"
        ]
      },
      "CreateCustomResponse": {
        "title": "CreateCustomResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CreateCustomResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateCustomRequest": {
        "title": "UpdateCustomRequest",
        "$ref": "#/components/schemas/Custom"
      },
      "UpdateCustomResponse": {
        "title": "UpdateCustomResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Custom"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchCustomResponse": {
        "title": "PatchCustomResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Custom"
          }
        },
        "required": [
          "result"
        ]
      },
      "IntegrationId": {
        "title": "IntegrationId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Integration"
      },
      "IntegrationPointId": {
        "title": "IntegrationPointId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this IntegrationPoint"
      },
      "IntegrationEnvironments": {
        "title": "IntegrationEnvironments",
        "type": "object",
        "properties": {
          "test": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderConfigId"
            },
            "nullable": true,
            "description": "List of allowed providers for test environment."
          },
          "prod": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderConfigId"
            },
            "nullable": true,
            "description": "List of allowed providers for production environment."
          }
        }
      },
      "AdditionalMappingType": {
        "title": "AdditionalMappingType",
        "type": "string",
        "enum": [
          "recommended",
          "optional",
          "fixed"
        ]
      },
      "AdditionalMappingTemplate": {
        "title": "AdditionalMappingTemplate",
        "type": "object",
        "properties": {
          "providers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderConfigId"
            },
            "description": "A list of provider ID strings that this mapping applies to. Mapping templates must have at least one provider."
          },
          "mapping_type": {
            "$ref": "#/components/schemas/AdditionalMappingType",
            "nullable": true,
            "description": "This controls the end-user's responsibility for this mapping when creating an integration in this integration point. Default: 'optional'.\nWhen set to 'fixed' the mapping is always included and can not be overridden by the end-user.\nWhen 'optional', the end-user can choose to override the mapping.\nWhen 'recommended', the provider will enter a warning state if the mapping is missing."
          }
        },
        "required": [
          "providers"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/AdditionalMapping"
          }
        ]
      },
      "MappingChainTemplate": {
        "title": "MappingChainTemplate",
        "type": "object",
        "properties": {
          "providers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProviderConfigId"
            },
            "description": "A list of provider ID strings that this mapping applies to. Mapping templates must have at least one provider."
          }
        },
        "required": [
          "providers"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/MappingChain"
          }
        ]
      },
      "IntegrationPoint": {
        "title": "IntegrationPoint",
        "type": "object",
        "description": "Enables creation, editing and deletion of Integrations.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Name of integration point, will be shown to end-users in the Connect UI."
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Optional description of the Integration Point. Will not be displayed to end-users of Connect UI."
          },
          "connector": {
            "$ref": "#/components/schemas/CategoryId",
            "description": "Connector to use for the Integration Point."
          },
          "environments": {
            "$ref": "#/components/schemas/IntegrationEnvironments",
            "description": "Selects providers to use for account environments."
          },
          "mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MappingChainTemplate"
            },
            "nullable": true,
            "description": "A list of mapping chains to apply to integrations using this integration point. Each mapping chain is a list of mappings to apply to the integration in the order they should be applied. Mappings are applied by operation ID. If an integration is created that declares its own mappings for an operation, they will override this list of mappings. Leave this empty to use the default default mappings."
          },
          "additional_mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalMappingTemplate"
            },
            "nullable": true,
            "description": "Additional data mappings for integrations added to this integration point. This allows for custom data to be mapped to the custom_fields portion of the response."
          },
          "scheduled_operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OperationSchedule"
            },
            "nullable": true,
            "description": "A list of operations that are scheduled to run for this integration point.\nWhenever an integration is created, these operations will automatically\nbe scheduled to run based on the schedule defined for the operation."
          }
        },
        "required": [
          "id",
          "connector",
          "environments"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "ListIntegrationPointsResponse": {
        "title": "ListIntegrationPointsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationPoint"
            }
          },
          "total": {
            "type": "integer",
            "nullable": true
          }
        },
        "required": [
          "result"
        ]
      },
      "GetIntegrationPointResponse": {
        "title": "GetIntegrationPointResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/IntegrationPoint"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateIntegrationPointRequest": {
        "title": "CreateIntegrationPointRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Integration Point (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to IntegrationPointId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Name of integration point, will be shown to end-users in the Connect UI. Defaults to the same value as the 'name' field if not specified."
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Optional description of the Integration Point. Will not be displayed to end-users of Connect UI."
          },
          "connector": {
            "$ref": "#/components/schemas/CategoryId",
            "description": "Connector to use for the Integration Point."
          },
          "environments": {
            "$ref": "#/components/schemas/IntegrationEnvironments",
            "description": "Selects providers to use for account environments."
          },
          "mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MappingChainTemplate"
            },
            "nullable": true,
            "description": "A list of mapping chains to apply to integrations using this integration point. Each mapping chain is a list of mappings to apply to the integration in the order they should be applied. Mappings are applied by operation ID. If an integration is created that declares its own mappings for an operation, they will override this list of mappings. Leave this empty to use the default default mappings."
          },
          "additional_mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalMappingTemplate"
            },
            "nullable": true,
            "description": "Additional data mappings for integrations added to this integration point. This allows for custom data to be mapped to the custom_fields portion of the response."
          },
          "scheduled_operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OperationSchedule"
            },
            "nullable": true,
            "description": "A list of operations that are scheduled to run for this integration point.\nWhenever an integration is created, these operations will automatically\nbe scheduled to run based on the schedule defined for the operation."
          }
        },
        "required": [
          "connector",
          "environments"
        ]
      },
      "CreateIntegrationPointResponse": {
        "title": "CreateIntegrationPointResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/IntegrationPoint"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateIntegrationPointRequest": {
        "title": "UpdateIntegrationPointRequest",
        "$ref": "#/components/schemas/IntegrationPoint"
      },
      "UpdateIntegrationPointResponse": {
        "title": "UpdateIntegrationPointResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/IntegrationPoint"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchIntegrationPointResponse": {
        "title": "PatchIntegrationPointResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/IntegrationPoint"
          }
        },
        "required": [
          "result"
        ]
      },
      "ListIntegrationOptions": {
        "title": "ListIntegrationOptions",
        "type": "string",
        "enum": [
          "account",
          "accounts",
          "integration_point",
          "integration_points",
          "all"
        ]
      },
      "WebhookConfig": {
        "title": "WebhookConfig",
        "type": "object",
        "properties": {
          "provider_key": {
            "type": "string",
            "nullable": true,
            "description": "The key used by Synqly to verify incoming webhook payloads sent by the Provider. The format and requirements for this key is Provider specific:\n\n- **ServiceNow**: Webhook payload signing is not currently supported, so the integrity of incoming ServiceNow payloads cannot be verified.\n- **Jira**: Synqly does _not_ automatically configure Jira webhooks. A user with administrator privileges must configure the webhook, including the signing key. If this key is not specified, Synqly will _not_ validate incoming webhooks from Jira. It is strongly recommended that a key is specified and configured with Jira to ensure the integrity of incoming payloads."
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookItem"
            },
            "description": "List of webhooks for an integration. If the provider supports webhooks, they will be sent to the servers provided in this list."
          }
        },
        "required": [
          "items"
        ]
      },
      "WebhookItem": {
        "title": "WebhookItem",
        "type": "object",
        "properties": {
          "webhook_url": {
            "type": "string",
            "description": "Webhook URL. Events from providers will be sent to this URL."
          },
          "event_filter": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookEvent"
            },
            "nullable": true,
            "description": "If specified, only events matching this list will be sent to `webhook_url`. If no filters are specified, all events sent from providers will be forwarded to `webhook_url`."
          },
          "integrator_key": {
            "type": "string",
            "nullable": true,
            "description": "The key used to sign outgoing web hook payloads. If not specified a random key is automatically generated.\nUse this key at the target URL to validate that the incoming payload was signed by Synqly. The payload is signed symmetrically with the `integrator_key` using the `HMAC-SHA256` signature scheme. The key should be randomly generated and between 24 bytes (192 bits) and 64 bytes (512 bits) long."
          }
        },
        "required": [
          "webhook_url"
        ]
      },
      "Integration": {
        "title": "Integration",
        "type": "object",
        "description": "Connects an Account to an external service",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this integration."
          },
          "refresh_token_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Integration refresh token id"
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Account associated with this integration. Use the expand=accounts parameter with the List and ListAccount APIs to expand the Account to the full object"
          },
          "account": {
            "$ref": "#/components/schemas/Account",
            "nullable": true,
            "description": "When using the expand option on the List or ListAccount APIs, the full account object is included in the response"
          },
          "category": {
            "$ref": "#/components/schemas/CategoryId",
            "description": "Id of the Connector Category for this Integration."
          },
          "provider_config": {
            "$ref": "#/components/schemas/ProviderConfig",
            "description": "Provider configuration for this Integration."
          },
          "provider_fullname": {
            "type": "string",
            "description": "Human friendly display name for the provider."
          },
          "provider_type": {
            "type": "string",
            "description": "Type of the provider for this Integration."
          },
          "integration_point_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration Point associated with this integration. Use the expand=integration_points parameter with the List and ListAccount APIs to expand the Integration Point to the full object"
          },
          "integration_point": {
            "$ref": "#/components/schemas/IntegrationPoint",
            "nullable": true,
            "description": "When using the expand option on the List or ListAccount APIs, the full integration_point object is included in the response"
          },
          "bridge_selector": {
            "$ref": "#/components/schemas/BridgeSelector",
            "nullable": true,
            "description": "Use a Bridge to connect to the provider."
          },
          "webhook_config": {
            "$ref": "#/components/schemas/WebhookConfig",
            "nullable": true,
            "description": "Webhook configuration for this integration. Some providers support webhooks, and will allow end users providers to send events to a server for new or updated data."
          },
          "mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MappingChain"
            },
            "nullable": true,
            "description": "A list of mapping chains to apply to the integration. Each mapping chain is a list of mappings to apply to the integration in the order they should be applied. Mappings are applied by operation ID. Leave this empty to use the default default mappings."
          },
          "additional_mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalMapping"
            },
            "nullable": true,
            "description": "Additional data mappings for this integration. This allows for custom data to be mapped to the custom_fields portion of the response."
          }
        },
        "required": [
          "id",
          "fullname",
          "refresh_token_id",
          "account_id",
          "category",
          "provider_config",
          "provider_fullname",
          "provider_type"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "BridgeSelector": {
        "title": "BridgeSelector",
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "id"
                ]
              },
              "value": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "labels"
                ]
              },
              "value": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "required": [
              "type"
            ]
          }
        ]
      },
      "ListIntegrationsResponse": {
        "title": "ListIntegrationsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Integration"
            }
          },
          "total": {
            "type": "integer",
            "nullable": true
          }
        },
        "required": [
          "result"
        ]
      },
      "ListAccountIntegrationsResponse": {
        "title": "ListAccountIntegrationsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Integration"
            }
          },
          "total": {
            "type": "integer",
            "nullable": true
          }
        },
        "required": [
          "result"
        ]
      },
      "GetIntegrationResponse": {
        "title": "GetIntegrationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Integration"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateIntegrationRequest": {
        "title": "CreateIntegrationRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Integrations (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to IntegrationId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Integrations, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "provider_config": {
            "$ref": "#/components/schemas/ProviderConfig",
            "description": "Provider configuration for this Integration."
          },
          "integration_point_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration Point associated with this integration."
          },
          "bridge_selector": {
            "$ref": "#/components/schemas/BridgeSelector",
            "nullable": true,
            "description": "Use a Bridge to connect to the provider."
          },
          "webhook_config": {
            "$ref": "#/components/schemas/WebhookConfig",
            "nullable": true,
            "description": "Web hook config for this integration"
          },
          "mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MappingChain"
            },
            "nullable": true,
            "description": "A list of mapping chains to apply to the integration. Each mapping chain is a list of mappings to apply to the integration in the order they should be applied. Mappings are applied by operation ID. Leave this empty to use the default default mappings."
          },
          "additional_mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AdditionalMapping"
            },
            "nullable": true,
            "description": "Additional data mappings for this integration. This allows for custom data to be mapped to the custom_fields portion of the response."
          }
        },
        "required": [
          "provider_config"
        ]
      },
      "CreateIntegrationResponseResult": {
        "title": "CreateIntegrationResponseResult",
        "type": "object",
        "properties": {
          "credentials_created": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CredentialResponse"
            },
            "nullable": true
          },
          "integration": {
            "$ref": "#/components/schemas/Integration"
          },
          "token": {
            "$ref": "#/components/schemas/TokenPair"
          }
        },
        "required": [
          "integration",
          "token"
        ]
      },
      "IntegrationMessagesResponse": {
        "title": "IntegrationMessagesResponse",
        "type": "object",
        "properties": {
          "problems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Problem"
            },
            "nullable": true,
            "description": "Warnings or issues that occurred during integration creation that did not prevent the request from returning, but may indicate a problem with the integration configuration."
          }
        }
      },
      "CreateIntegrationResponse": {
        "title": "CreateIntegrationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CreateIntegrationResponseResult"
          },
          "messages": {
            "$ref": "#/components/schemas/IntegrationMessagesResponse",
            "nullable": true,
            "description": "Warnings or issues that occurred during integration creation, such as authentication failures or invalid custom field mappings."
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateIntegrationRequest": {
        "title": "UpdateIntegrationRequest",
        "$ref": "#/components/schemas/Integration"
      },
      "UpdateIntegrationResponse": {
        "title": "UpdateIntegrationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Integration"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchIntegrationResponse": {
        "title": "PatchIntegrationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Integration"
          }
        },
        "required": [
          "result"
        ]
      },
      "VerifyIntegrationRequest": {
        "title": "VerifyIntegrationRequest",
        "type": "object",
        "properties": {
          "integration": {
            "$ref": "#/components/schemas/CreateIntegrationRequest"
          }
        },
        "required": [
          "integration"
        ]
      },
      "MappingDataType": {
        "title": "MappingDataType",
        "type": "string",
        "enum": [
          "string",
          "number",
          "datetime",
          "boolean",
          "array",
          "any"
        ]
      },
      "AdditionalMapping": {
        "title": "AdditionalMapping",
        "type": "object",
        "properties": {
          "resource": {
            "$ref": "#/components/schemas/ResourceId",
            "description": "The resources that this mapping applies to."
          },
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ActionId"
            },
            "description": "The actions that this mapping applies to. At least one action must be specified."
          },
          "source": {
            "type": "string",
            "description": "The dot-separated path to the field in the source data coming from the provider. Use `\\.` to escape literal dots in the field name."
          },
          "destination": {
            "type": "string",
            "description": "The dot-separated path to where the data should reside in the custom fields object when data is returned from the provider."
          },
          "literal": {
            "type": "boolean",
            "nullable": true,
            "description": "When true, the value in 'source' is treated as a literal value rather than a mapping. This allows adding static values to custom fields. Default: false"
          },
          "data_type": {
            "$ref": "#/components/schemas/MappingDataType",
            "description": "The data type of the field. This ensures the data is processed to the correct type when mapping. Fields set to 'any' will not get validated\nor processed. Other types are cast depending as defined by each provider. For example, a field with 'datetime' is parsed based on the date\nformat used by the provider, and normalized to a unix timestamp with millisecond precision."
          }
        },
        "required": [
          "resource",
          "actions",
          "source",
          "destination",
          "data_type"
        ]
      },
      "MappingChain": {
        "title": "MappingChain",
        "type": "object",
        "properties": {
          "mappings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of mapping IDs to apply in the format `{mapping_id}:{version}`."
          },
          "operation_ids": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The operation IDs to apply the mappings to."
          }
        },
        "required": [
          "mappings",
          "operation_ids"
        ]
      },
      "MappingId": {
        "title": "MappingId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this organization mapping"
      },
      "MappingBase": {
        "title": "MappingBase",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this mapping."
          },
          "organization_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Organization that manages this Mapping."
          }
        },
        "required": [
          "id",
          "fullname",
          "organization_id"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "Mapping": {
        "title": "Mapping",
        "type": "object",
        "properties": {
          "data": {
            "type": "string",
            "description": "transform to apply."
          }
        },
        "required": [
          "data"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/MappingBase"
          }
        ]
      },
      "ListMappingsResponse": {
        "title": "ListMappingsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MappingBase"
            }
          },
          "total": {
            "type": "integer",
            "nullable": true
          }
        },
        "required": [
          "result"
        ]
      },
      "GetMappingResponse": {
        "title": "GetMappingResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Mapping"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateMappingRequest": {
        "title": "CreateMappingRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Mapping (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to MappingId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Mapping, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "data": {
            "type": "string",
            "description": "transform to apply."
          }
        },
        "required": [
          "data"
        ]
      },
      "CreateMappingResponseResult": {
        "title": "CreateMappingResponseResult",
        "type": "object",
        "properties": {
          "mapping": {
            "$ref": "#/components/schemas/Mapping"
          }
        },
        "required": [
          "mapping"
        ]
      },
      "CreateMappingResponse": {
        "title": "CreateMappingResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CreateMappingResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateMappingRequest": {
        "title": "UpdateMappingRequest",
        "$ref": "#/components/schemas/Mapping"
      },
      "UpdateMappingResponse": {
        "title": "UpdateMappingResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Mapping"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchMappingResponse": {
        "title": "PatchMappingResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Mapping"
          }
        },
        "required": [
          "result"
        ]
      },
      "ApplyMappingRequestBody": {
        "title": "ApplyMappingRequestBody",
        "type": "object",
        "properties": {
          "mappings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of mappings to utilize. This can include custom mappings you have defined as well as Synqly built-in mappings."
          },
          "data": {
            "type": "object",
            "additionalProperties": true,
            "description": "JSON input data to apply the mapping chain to."
          }
        },
        "required": [
          "mappings",
          "data"
        ]
      },
      "ApplyMappingResponseResult": {
        "title": "ApplyMappingResponseResult",
        "type": "object",
        "properties": {
          "mapping": {
            "type": "object",
            "additionalProperties": true,
            "description": "The JSON object resulting from applying the mapping chain defined by the request over the input data."
          }
        },
        "required": [
          "mapping"
        ]
      },
      "ApplyMappingResponse": {
        "title": "ApplyMappingResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/ApplyMappingResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "MemberId": {
        "title": "MemberId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Member"
      },
      "State": {
        "title": "State",
        "type": "string",
        "enum": [
          "disabled",
          "enabled",
          "forgotten",
          "invited",
          "locked"
        ]
      },
      "Options": {
        "title": "Options",
        "type": "string",
        "enum": [
          "disabled",
          "expired",
          "forgotten",
          "invited",
          "locked"
        ]
      },
      "Member": {
        "title": "Member",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "state": {
            "$ref": "#/components/schemas/State"
          },
          "last_logon": {
            "type": "string",
            "format": "date-time",
            "description": "Last logon time"
          },
          "fullname": {
            "type": "string",
            "description": "User's full display name."
          },
          "nickname": {
            "type": "string",
            "nullable": true,
            "description": "User's nickname"
          },
          "picture": {
            "type": "string",
            "nullable": true,
            "description": "Url of user's picture"
          },
          "ttl": {
            "type": "string"
          },
          "token_ttl": {
            "type": "string"
          },
          "expires": {
            "type": "string",
            "format": "date-time"
          },
          "pin_expires": {
            "type": "string",
            "format": "date-time"
          },
          "role_binding": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RoleName"
            },
            "description": "Roles granted to this member. Tokens inherit this access."
          }
        },
        "required": [
          "id",
          "state",
          "last_logon",
          "fullname",
          "ttl",
          "token_ttl",
          "expires",
          "pin_expires",
          "role_binding"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "MemberOptions": {
        "title": "MemberOptions",
        "type": "object",
        "properties": {
          "ttl": {
            "type": "string",
            "nullable": true,
            "description": "Optional member time-to-live duration. After a member expires, system requires a change password to re-enable member. Minimum 1 day, Maximum 1 year, Default 180 days."
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Options"
            },
            "nullable": true,
            "description": "Options: \"expired\" will force change password on first logon."
          },
          "token_ttl": {
            "type": "string",
            "nullable": true,
            "description": "Optional token time-to-live duration. Tokens are created for this member with this duration as their TTL. Minimum 10 miniutes, Maximum 1 week, Defaults 1 hour."
          }
        }
      },
      "CreateMemberRequest": {
        "title": "CreateMemberRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Email name to use for this Member. Also used for duplicate detection and default sort order."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "User's full display name. Defaults to the same value as the 'name' field if not specified."
          },
          "nickname": {
            "type": "string",
            "nullable": true,
            "description": "User's nickname"
          },
          "picture": {
            "type": "string",
            "nullable": true,
            "description": "Url of user's picture"
          },
          "secret": {
            "type": "string",
            "description": "Member secret used to logon. Must be at least 8 characters long and fewer than 72 characters. There are no restrictions on the characters used; however, the secret must be sufficiently complex. It cannot be a common word, previously leaked password, or easily guessed sequences like `qwerty` or `12345`."
          },
          "role_binding": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RoleName"
            },
            "nullable": true,
            "description": "Roles granted to this member. Tokens inherit this access. Defaults to `member`."
          },
          "options": {
            "$ref": "#/components/schemas/MemberOptions",
            "nullable": true
          }
        },
        "required": [
          "name",
          "secret"
        ]
      },
      "CreateMemberResponseResult": {
        "title": "CreateMemberResponseResult",
        "type": "object",
        "properties": {
          "member": {
            "$ref": "#/components/schemas/Member"
          }
        },
        "required": [
          "member"
        ]
      },
      "CreateMemberResponse": {
        "title": "CreateMemberResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CreateMemberResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "ListMembersResponse": {
        "title": "ListMembersResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Member"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetMemberResponse": {
        "title": "GetMemberResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Member"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateMemberRequest": {
        "title": "UpdateMemberRequest",
        "$ref": "#/components/schemas/Member"
      },
      "UpdateMemberResponse": {
        "title": "UpdateMemberResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Member"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchMemberResponse": {
        "title": "PatchMemberResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Member"
          }
        },
        "required": [
          "result"
        ]
      },
      "GetOpenApiSpecResponse": {
        "title": "GetOpenApiSpecResponse"
      },
      "AsyncOperationRequestId": {
        "title": "AsyncOperationRequestId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique request identifier for this Asynchronous Operation."
      },
      "OperationInput": {
        "title": "OperationInput",
        "type": "object",
        "properties": {
          "filters": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "Limit the number of results returned by the operation. If not specified, the operation will return all results."
          },
          "limit": {
            "type": "integer",
            "nullable": true,
            "description": "Limit query results by these filters."
          }
        }
      },
      "Operation": {
        "title": "Operation",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id",
            "description": "ID of the operation"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Time object was originally created"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Last time object was updated"
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Account ID containing the integration."
          },
          "integration_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Integration ID to use for the operation."
          },
          "operation": {
            "type": "string",
            "description": "Name of the operation that will be run for this operation."
          },
          "input": {
            "$ref": "#/components/schemas/OperationInput",
            "description": "Parameters for the operation that will be run for this operation."
          },
          "status": {
            "$ref": "#/components/schemas/OperationStatus",
            "description": "Status of the operation"
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OperationError"
            },
            "nullable": true,
            "description": "Errors that occurred during the operation"
          },
          "cpu_time": {
            "type": "integer",
            "format": "int64",
            "description": "Cpu time in microseconds"
          },
          "in_bytes": {
            "type": "integer",
            "format": "int64",
            "description": "Total number of bytes sent to the output integration."
          },
          "output_integration_id": {
            "type": "string",
            "nullable": true,
            "description": "ID of the integration receiving operation output."
          }
        },
        "required": [
          "id",
          "created_at",
          "updated_at",
          "account_id",
          "integration_id",
          "operation",
          "input",
          "status",
          "cpu_time",
          "in_bytes"
        ]
      },
      "OperationStatus": {
        "title": "OperationStatus",
        "type": "string",
        "enum": [
          "SCHEDULED",
          "PROCESSING",
          "CANCELLED",
          "COMPLETE",
          "DISABLED"
        ]
      },
      "OperationError": {
        "title": "OperationError",
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "Error message"
          }
        },
        "required": [
          "message"
        ]
      },
      "OperationExecutionEvent": {
        "title": "OperationExecutionEvent",
        "type": "object",
        "description": "A single execution of an operation, capturing start time, completion time,\nand metrics for that specific run.",
        "properties": {
          "execution_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Unique identifier for this execution"
          },
          "operation_id": {
            "$ref": "#/components/schemas/Id",
            "description": "ID of the operation that was executed"
          },
          "started_at": {
            "type": "string",
            "format": "date-time",
            "description": "When this execution started"
          },
          "completed_at": {
            "type": "string",
            "format": "date-time",
            "description": "When this execution completed"
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Account ID containing the integration"
          },
          "integration_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Integration ID used for the operation"
          },
          "integration_point_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Integration-point ID if triggered by a schedule, omitted if manually triggered\nvia the API"
          },
          "operation": {
            "type": "string",
            "description": "Name of the operation (e.g., \"assets_query_devices\")"
          },
          "trigger_type": {
            "$ref": "#/components/schemas/OperationTriggerType",
            "description": "How this execution was triggered"
          },
          "trigger_source": {
            "type": "string",
            "description": "Source of trigger - \"manual\" for API calls, integration-point ID for scheduled"
          },
          "status": {
            "$ref": "#/components/schemas/OperationStatus",
            "description": "Final status of the execution"
          },
          "records_processed": {
            "type": "integer",
            "format": "int64",
            "description": "Approximate number of records processed"
          },
          "cpu_time": {
            "type": "integer",
            "format": "int64",
            "description": "CPU time in microseconds"
          },
          "in_bytes": {
            "type": "integer",
            "format": "int64",
            "description": "Number of bytes sent to sink integration"
          },
          "duration": {
            "type": "integer",
            "format": "int64",
            "description": "Total execution duration in microseconds"
          },
          "initial_cursor": {
            "type": "string",
            "nullable": true,
            "description": "Cursor value at execution start"
          },
          "final_cursor": {
            "type": "string",
            "nullable": true,
            "description": "Cursor value at execution completion"
          },
          "error": {
            "type": "string",
            "nullable": true,
            "description": "Error message if execution failed"
          }
        },
        "required": [
          "execution_id",
          "operation_id",
          "started_at",
          "completed_at",
          "account_id",
          "integration_id",
          "operation",
          "trigger_type",
          "trigger_source",
          "status",
          "records_processed",
          "cpu_time",
          "in_bytes",
          "duration"
        ]
      },
      "OperationTriggerType": {
        "title": "OperationTriggerType",
        "type": "string",
        "enum": [
          "API",
          "SCHEDULED"
        ],
        "description": "How an operation execution was initiated"
      },
      "ListExecutionHistoryResponse": {
        "title": "ListExecutionHistoryResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OperationExecutionEvent"
            },
            "description": "List of execution events"
          }
        },
        "required": [
          "result"
        ]
      },
      "OperationId": {
        "title": "OperationId",
        "type": "string",
        "enum": [
          "appsec_get_application_finding_details",
          "appsec_query_application_findings",
          "appsec_query_applications",
          "appsec_query_findings",
          "assets_create_asset",
          "assets_create_devices",
          "assets_get_labels",
          "assets_query_alerts",
          "assets_query_devices",
          "assets_query_utilization",
          "assets_query_vulnerabilities",
          "assets_update_device_properties",
          "cloudsecurity_query_cloud_resource_inventory",
          "cloudsecurity_query_compliance_findings",
          "cloudsecurity_query_events",
          "cloudsecurity_query_ioms",
          "cloudsecurity_query_threats",
          "custom_delete",
          "custom_get",
          "custom_patch",
          "custom_post",
          "custom_post_batch",
          "custom_query",
          "edr_create_iocs",
          "edr_delete_iocs",
          "edr_get_endpoint",
          "edr_network_quarantine",
          "edr_query_alerts",
          "edr_query_applications",
          "edr_query_edr_events",
          "edr_query_endpoints",
          "edr_query_iocs",
          "edr_query_posture_score",
          "edr_query_threatevents",
          "identity_disable_user",
          "identity_enable_user",
          "identity_expire_all_user_sessions",
          "identity_force_user_password_reset",
          "identity_get_group",
          "identity_get_group_members",
          "identity_get_user",
          "identity_get_user_picture",
          "identity_query_audit_log",
          "identity_query_groups",
          "identity_query_users",
          "incidentresponse_query_escalation_policies",
          "incidentresponse_query_escalation_policy_users_on_call",
          "notifications_clear_message",
          "notifications_create_message",
          "notifications_get_message",
          "siem_get_alert",
          "siem_get_evidence",
          "siem_get_investigation",
          "siem_patch_investigation",
          "siem_post_events",
          "siem_query_alerts",
          "siem_query_events",
          "siem_query_investigations",
          "siem_query_log_providers",
          "sink_post_events",
          "storage_delete_file",
          "storage_download_file",
          "storage_list_files",
          "storage_upload_file",
          "ticketing_create_attachment",
          "ticketing_create_comment",
          "ticketing_create_note",
          "ticketing_create_ticket",
          "ticketing_delete_attachment",
          "ticketing_delete_comment",
          "ticketing_delete_note",
          "ticketing_download_attachment",
          "ticketing_get_ticket",
          "ticketing_list_attachments_metadata",
          "ticketing_list_comments",
          "ticketing_list_notes",
          "ticketing_list_on_call",
          "ticketing_list_projects",
          "ticketing_list_remote_fields",
          "ticketing_patch_note",
          "ticketing_patch_ticket",
          "ticketing_query_escalation_policies",
          "ticketing_query_tickets",
          "vulnerabilities_create_asset",
          "vulnerabilities_create_findings",
          "vulnerabilities_get_labels",
          "vulnerabilities_get_scan_activity",
          "vulnerabilities_get_scan_status",
          "vulnerabilities_query_assets",
          "vulnerabilities_query_findings",
          "vulnerabilities_query_scans",
          "vulnerabilities_update_asset",
          "vulnerabilities_update_finding",
          "vulnerabilities_upload_scan"
        ]
      },
      "ScheduledOperationId": {
        "title": "ScheduledOperationId",
        "type": "string",
        "enum": [
          "assets_query_devices",
          "assets_query_alerts",
          "assets_query_utilization",
          "assets_query_vulnerabilities",
          "edr_query_alerts",
          "edr_query_applications",
          "edr_query_endpoints",
          "edr_query_iocs",
          "edr_query_posture_score",
          "edr_query_threatevents",
          "identity_query_audit_log",
          "identity_query_groups",
          "identity_query_groups_enriched",
          "identity_query_users",
          "identity_query_users_enriched",
          "siem_query_events",
          "siem_query_investigations",
          "vulnerabilities_query_assets",
          "vulnerabilities_query_findings",
          "vulnerabilities_query_scans",
          "appsec_query_applications",
          "appsec_query_application_findings",
          "appsec_query_findings",
          "cloudsecurity_query_compliance_findings"
        ]
      },
      "OperationSchedule": {
        "title": "OperationSchedule",
        "type": "object",
        "properties": {
          "operation": {
            "$ref": "#/components/schemas/ScheduledOperationId",
            "description": "ID of the operation to schedule (e.g., query_alerts, query_endpoints)."
          },
          "enabled": {
            "type": "boolean",
            "description": "Whether the schedule is active. When false, no executions will occur."
          },
          "frequency": {
            "$ref": "#/components/schemas/OperationFrequency",
            "description": "How often the operation should execute (e.g., every 4 hours).\nIf an execution takes longer than the interval, the next execution\nwill start immediately after the previous one completes."
          },
          "filters": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "Optional filters to apply when querying data from the source API.\nFormat and available filters depend on the specific operation.\nExample: \"severity[eq]critical\" or \"status[eq]active\"."
          },
          "backfill_from_time": {
            "type": "string",
            "nullable": true,
            "description": "Starting point for the initial data collection. No data before this time will be fetched.\nAccepts:\n\n- RFC 3339 datetime: \"2024-01-01T00:00:00Z\"\n- Relative duration: \"7d\" (7 days ago), \"24h\" (24 hours ago), \"30m\" (30 minutes ago)\n- \"max\": Collect all available historical data\n\n\n\n  If not specified, starts from the operation's creation time."
          },
          "incremental_config": {
            "$ref": "#/components/schemas/OperationIncrementalPullConfig",
            "nullable": true,
            "description": "Configuration for how data is fetched on each execution.\nBy default, operations fetch only data that changed since the last run (incremental)\nand the time filter used depends on the operation.\nUse this to override the default behavior or switch to full snapshots."
          }
        },
        "required": [
          "operation",
          "enabled",
          "frequency"
        ]
      },
      "OperationFrequency": {
        "title": "OperationFrequency",
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "periodic"
                ]
              },
              "value": {
                "$ref": "#/components/schemas/OperationFrequencyPeriodic"
              }
            },
            "required": [
              "type"
            ]
          }
        ]
      },
      "OperationFrequencyPeriodic": {
        "title": "OperationFrequencyPeriodic",
        "type": "string",
        "description": "Frequency of operation executions is defined by a periodic interval. Value is a string in the format \"4h\" (every 4 hours).\nYou may use \"m\" for minutes, \"h\" for hours, and \"d\" for days."
      },
      "OperationIncrementalPullConfig": {
        "title": "OperationIncrementalPullConfig",
        "type": "object",
        "description": "Controls how data is fetched from the source API on each execution.",
        "properties": {
          "mode": {
            "$ref": "#/components/schemas/OperationIncrementalPullMode",
            "description": "Fetch strategy: incremental (only changed data) or full_snapshot (all data every time)."
          },
          "time_filter_field": {
            "type": "string",
            "nullable": true,
            "description": "Custom field to use for time-based filtering in incremental mode.\nOverrides the operation's default time filter field.\nExamples: \"modified_time\" or \"finding.last_seen_time\".\nThe filter will use this field with \"[gt]\" (greater than) operator.\nFirst run will use `initial_backfill_start_time` as the filter value, and\nsubsequent runs use the last execution time."
          }
        },
        "required": [
          "mode"
        ]
      },
      "OperationIncrementalPullMode": {
        "title": "OperationIncrementalPullMode",
        "type": "string",
        "enum": [
          "incremental",
          "full_snapshot"
        ],
        "description": "Strategy for fetching data from the source API."
      },
      "ListOperationsResponse": {
        "title": "ListOperationsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Operation"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "OrganizationId": {
        "title": "OrganizationId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Organization"
      },
      "Environment": {
        "title": "Environment",
        "type": "string",
        "enum": [
          "test",
          "prod"
        ]
      },
      "OrganizationType": {
        "title": "OrganizationType",
        "type": "string",
        "enum": [
          "root",
          "standard"
        ]
      },
      "OrganizationOptions": {
        "title": "OrganizationOptions",
        "type": "object",
        "properties": {
          "invite_duration": {
            "type": "string",
            "nullable": true,
            "description": "Duration new member invitations will be valid. Default: 168h (7 days), minimum 24h, maximum 168h (7 days)."
          },
          "forgot_duration": {
            "type": "string",
            "nullable": true,
            "description": "Duration forgotten password invitations will be valid. Default: 24h, minimum 24h, maximum 168h (7 days)."
          },
          "password_duration": {
            "type": "string",
            "nullable": true,
            "description": "Duration before member password expires, part of required password rotation. Default: 4320h (180 days), minimum: 24h, maximum: 8760h (365 days)."
          },
          "minimum_password_length": {
            "type": "integer",
            "nullable": true,
            "description": "Minimum password length. Default: 8, minimum 8, maximum 72."
          }
        }
      },
      "Organization": {
        "title": "Organization",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "refresh_token_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Organization refresh token id"
          },
          "organization_type": {
            "$ref": "#/components/schemas/OrganizationType",
            "description": "Organization type: root or standard"
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this Organization"
          },
          "contact": {
            "type": "string",
            "nullable": true,
            "description": "Organization email address"
          },
          "reply_to": {
            "type": "string",
            "nullable": true,
            "description": "Reply-to email address, used for SMTP emails. Defaults to no-reply@synqly.com"
          },
          "picture": {
            "type": "string",
            "nullable": true,
            "description": "Picture URL of the organization"
          },
          "options": {
            "$ref": "#/components/schemas/OrganizationOptions",
            "nullable": true,
            "description": "Organization options"
          }
        },
        "required": [
          "id",
          "refresh_token_id",
          "organization_type",
          "fullname"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "CreateOrganizationRequest": {
        "title": "CreateOrganizationRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Organization (lowercase [a-z0-9_-], can be used in URLs). Used for case insensitive duplicate name detection and default sort order. Defaults to OrganizationId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Organization, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "contact": {
            "type": "string",
            "nullable": true,
            "description": "Organization email address"
          },
          "reply_to": {
            "type": "string",
            "nullable": true,
            "description": "Reply-to email address, used for SMTP emails. Defaults to no-reply@synqly.com"
          },
          "picture": {
            "type": "string",
            "nullable": true,
            "description": "URL of the organization"
          },
          "member": {
            "$ref": "#/components/schemas/CreateMemberRequest",
            "nullable": true,
            "description": "Create organization member"
          }
        }
      },
      "CreateOrganizationResponseResult": {
        "title": "CreateOrganizationResponseResult",
        "type": "object",
        "properties": {
          "member": {
            "$ref": "#/components/schemas/Member",
            "nullable": true
          },
          "organization": {
            "$ref": "#/components/schemas/Organization"
          },
          "token": {
            "$ref": "#/components/schemas/TokenPair"
          }
        },
        "required": [
          "organization",
          "token"
        ]
      },
      "CreateOrganizationResponse": {
        "title": "CreateOrganizationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/CreateOrganizationResponseResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "GetOrganizationResponse": {
        "title": "GetOrganizationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Organization"
          }
        },
        "required": [
          "result"
        ]
      },
      "ListOrganizationResponse": {
        "title": "ListOrganizationResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Organization"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "WebhookId": {
        "title": "WebhookId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for a Webhook"
      },
      "WebhookFilter": {
        "title": "WebhookFilter",
        "type": "string",
        "enum": [
          "all",
          "account_create",
          "account_delete",
          "account_update",
          "integration_create",
          "integration_delete",
          "integration_update",
          "operation_complete"
        ]
      },
      "WebhookEvent": {
        "title": "WebhookEvent",
        "type": "string",
        "enum": [
          "TicketCreated",
          "TicketUpdated",
          "TicketDeleted",
          "TicketCommentCreated",
          "TicketCommentDeleted"
        ]
      },
      "OrganizationWebhook": {
        "title": "OrganizationWebhook",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly slug for this webhook"
          },
          "environment": {
            "$ref": "#/components/schemas/Environment",
            "description": "Environment that the webhook is configured for. Only events associated with this environment will trigger the webhook."
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookFilter"
            },
            "description": "Specifies which Webhooks to send."
          },
          "url": {
            "type": "string",
            "description": "URL that webhooks will be sent to"
          },
          "credential_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Credential contain secret"
          }
        },
        "required": [
          "id",
          "fullname",
          "environment",
          "filters",
          "url",
          "credential_id"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "OrganizationWebhookSecret": {
        "title": "OrganizationWebhookSecret",
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Secret used for signing webhooks. This value is used to verify the authenticity of the webhook payload."
          },
          "expires": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "Time when this secret expires and can no longer be used again."
          }
        },
        "required": [
          "value"
        ]
      },
      "CreateOrganizationWebhookRequest": {
        "title": "CreateOrganizationWebhookRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly slug for this webhook"
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Fullname for this webhook"
          },
          "environment": {
            "$ref": "#/components/schemas/Environment",
            "nullable": true,
            "description": "Environment that the webhook is configured for. Only events for accounts associated with this environment will trigger the webhook."
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhookFilter"
            },
            "description": "Specifies which Webhooks to send."
          },
          "url": {
            "type": "string",
            "description": "URL that webhooks will be sent to."
          },
          "secret": {
            "$ref": "#/components/schemas/OrganizationWebhookSecret",
            "description": "Secret used for signing webhooks. This value is used to verify the authenticity of the webhook payload."
          }
        },
        "required": [
          "filters",
          "url",
          "secret"
        ]
      },
      "CreateOrganizationWebhookResponse": {
        "title": "CreateOrganizationWebhookResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/OrganizationWebhook",
            "description": "The created webhook."
          }
        },
        "required": [
          "result"
        ]
      },
      "GetOrganizationWebhookResponse": {
        "title": "GetOrganizationWebhookResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/OrganizationWebhook"
          }
        },
        "required": [
          "result"
        ]
      },
      "ListOrganizationWebhooksResponse": {
        "title": "ListOrganizationWebhooksResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrganizationWebhook"
            },
            "description": "List of webhooks for the organization."
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchOrganizationWebhookResponse": {
        "title": "PatchOrganizationWebhookResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/OrganizationWebhook"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateOrganizationWebhookRequest": {
        "title": "UpdateOrganizationWebhookRequest",
        "$ref": "#/components/schemas/OrganizationWebhook"
      },
      "UpdateOrganizationWebhookResponse": {
        "title": "UpdateOrganizationWebhookResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/OrganizationWebhook"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateOrganizationRequest": {
        "title": "UpdateOrganizationRequest",
        "$ref": "#/components/schemas/Organization"
      },
      "UpdateOrganizationResponse": {
        "title": "UpdateOrganizationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Organization"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchOrganizationResponse": {
        "title": "PatchOrganizationResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Organization"
          }
        },
        "required": [
          "result"
        ]
      },
      "Permission": {
        "title": "Permission",
        "type": "object",
        "properties": {
          "role_binding": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RoleName"
            },
            "nullable": true,
            "description": "Roles granted to this token."
          },
          "adhoc_role": {
            "$ref": "#/components/schemas/AdhocRole",
            "nullable": true,
            "description": "Adhoc role granted to this token."
          },
          "resource_id": {
            "$ref": "#/components/schemas/Id",
            "description": "ID of the resource that this permission grants access to."
          },
          "resource_type": {
            "type": "string",
            "description": "Type of the resource that this permission grants access to. Must be one of the following: \"organization, \"integration\""
          },
          "parent_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Token parentId"
          },
          "id": {
            "$ref": "#/components/schemas/Id",
            "description": "Token Id"
          },
          "organization_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Token organizationId"
          },
          "root_organization_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Token root organizationId"
          },
          "member_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Token memberId"
          }
        },
        "required": [
          "resource_id",
          "resource_type",
          "parent_id",
          "id",
          "organization_id",
          "member_id"
        ]
      },
      "Permissions": {
        "title": "Permissions",
        "type": "string",
        "enum": [
          "administrator",
          "viewer",
          "member",
          "account-manager",
          "connect-ui",
          "token-issuer",
          "mcp-integrations-use-only",
          "mcp-management"
        ]
      },
      "PermissionSet": {
        "title": "PermissionSet",
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/Permissions"
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Description of when the permission set should be used and what permissions are granted by the permission set."
          },
          "resource_restrictions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ResourceRestrictions"
            },
            "nullable": true,
            "description": "Resources that can be used with this permission set"
          },
          "permissions": {
            "$ref": "#/components/schemas/ApiPermissionMap",
            "description": "API permissions granted by the permission set."
          }
        },
        "required": [
          "name",
          "permissions"
        ]
      },
      "ApiPermissionMap": {
        "title": "ApiPermissionMap",
        "type": "object",
        "properties": {
          "all": {
            "$ref": "#/components/schemas/ReadWritePermissions",
            "nullable": true
          },
          "accounts": {
            "$ref": "#/components/schemas/AccountsPermissions",
            "nullable": true
          },
          "alarms": {
            "$ref": "#/components/schemas/AlarmsPermissions",
            "nullable": true
          },
          "alarm_policies": {
            "$ref": "#/components/schemas/AlarmPoliciesPermissions",
            "nullable": true
          },
          "audit": {
            "$ref": "#/components/schemas/AuditPermissions",
            "nullable": true
          },
          "auth": {
            "$ref": "#/components/schemas/AuthPermissions",
            "nullable": true
          },
          "billing": {
            "$ref": "#/components/schemas/BillingPermissions",
            "nullable": true
          },
          "bridges": {
            "$ref": "#/components/schemas/BridgesPermissions",
            "nullable": true
          },
          "credentials": {
            "$ref": "#/components/schemas/CredentialsPermissions",
            "nullable": true
          },
          "customs": {
            "$ref": "#/components/schemas/CustomsPermissions",
            "nullable": true
          },
          "integrations": {
            "$ref": "#/components/schemas/IntegrationsPermissions",
            "nullable": true
          },
          "integration_points": {
            "$ref": "#/components/schemas/IntegrationPointsPermissions",
            "nullable": true
          },
          "operations": {
            "$ref": "#/components/schemas/OperationsPermissions",
            "nullable": true
          },
          "mappings": {
            "$ref": "#/components/schemas/MappingsPermissions",
            "nullable": true
          },
          "members": {
            "$ref": "#/components/schemas/MembersPermissions",
            "nullable": true
          },
          "organizations": {
            "$ref": "#/components/schemas/OrganizationPermissions",
            "nullable": true
          },
          "permission_set": {
            "$ref": "#/components/schemas/PermissionSetPermissions",
            "nullable": true
          },
          "roles": {
            "$ref": "#/components/schemas/RolesPermissions",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/StatusPermissions",
            "nullable": true
          },
          "suborgs": {
            "$ref": "#/components/schemas/SubOrgsPermissions",
            "nullable": true
          },
          "tokens": {
            "$ref": "#/components/schemas/TokensPermissions",
            "nullable": true
          },
          "transforms": {
            "$ref": "#/components/schemas/TransformsPermissions",
            "nullable": true
          },
          "webhooks": {
            "$ref": "#/components/schemas/WebhooksPermissions",
            "nullable": true
          }
        }
      },
      "ReadWritePermissions": {
        "title": "ReadWritePermissions",
        "type": "object",
        "description": "Permissions for all accounts",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReadWriteActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "AccountsPermissions": {
        "title": "AccountsPermissions",
        "type": "object",
        "description": "Permissions for the accounts API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccountsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "AlarmsPermissions": {
        "title": "AlarmsPermissions",
        "type": "object",
        "description": "Permissions for the alarms API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AlarmsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "AlarmPoliciesPermissions": {
        "title": "AlarmPoliciesPermissions",
        "type": "object",
        "description": "Permissions for the alarm policy API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AlarmPoliciesActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "AuditPermissions": {
        "title": "AuditPermissions",
        "type": "object",
        "description": "Permissions for the audit API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AuditActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "AuthPermissions": {
        "title": "AuthPermissions",
        "type": "object",
        "description": "Permissions for the auth logon/logoff API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AuthActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "BillingPermissions": {
        "title": "BillingPermissions",
        "type": "object",
        "description": "Permissions for the billing API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BillingActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "BridgesPermissions": {
        "title": "BridgesPermissions",
        "type": "object",
        "description": "Permissions for the bridge API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BridgesActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "CredentialsPermissions": {
        "title": "CredentialsPermissions",
        "type": "object",
        "description": "Permissions for the credentials API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CredentialsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "CustomsPermissions": {
        "title": "CustomsPermissions",
        "type": "object",
        "description": "Permissions for the customs API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "IntegrationsPermissions": {
        "title": "IntegrationsPermissions",
        "type": "object",
        "description": "Permissions for the integrations API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "IntegrationPointsPermissions": {
        "title": "IntegrationPointsPermissions",
        "type": "object",
        "description": "Permissions for the integrations points API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationPointsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "OperationsPermissions": {
        "title": "OperationsPermissions",
        "type": "object",
        "description": "Permissions for the operations API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OperationsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "MappingsPermissions": {
        "title": "MappingsPermissions",
        "type": "object",
        "description": "Permissions for the mappings API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MappingsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "MembersPermissions": {
        "title": "MembersPermissions",
        "type": "object",
        "description": "Permissions for the members API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MembersActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "OrganizationPermissions": {
        "title": "OrganizationPermissions",
        "type": "object",
        "description": "Permissions for the organization API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrganizationActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "PermissionSetPermissions": {
        "title": "PermissionSetPermissions",
        "type": "object",
        "description": "Permissions for the permissionset API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PermissionSetActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "RolesPermissions": {
        "title": "RolesPermissions",
        "type": "object",
        "description": "Permissions for the roles API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RolesActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "SubOrgsPermissions": {
        "title": "SubOrgsPermissions",
        "type": "object",
        "description": "Permissions for the roles API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SubOrgsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "StatusPermissions": {
        "title": "StatusPermissions",
        "type": "object",
        "description": "Permissions for the status API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StatusActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "TokensPermissions": {
        "title": "TokensPermissions",
        "type": "object",
        "description": "Permissions for the tokens API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TokensActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "TransformsPermissions": {
        "title": "TransformsPermissions",
        "type": "object",
        "description": "Permissions for the transforms API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransformsActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "WebhooksPermissions": {
        "title": "WebhooksPermissions",
        "type": "object",
        "description": "Permissions for the webhooks API",
        "properties": {
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WebhooksActions"
            }
          }
        },
        "required": [
          "actions"
        ]
      },
      "ResourceRestrictions": {
        "title": "ResourceRestrictions",
        "type": "string",
        "enum": [
          "accounts",
          "integrations"
        ]
      },
      "ReadWriteActions": {
        "title": "ReadWriteActions",
        "type": "string",
        "enum": [
          "read",
          "*"
        ]
      },
      "AccountsActions": {
        "title": "AccountsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "*"
        ]
      },
      "AlarmsActions": {
        "title": "AlarmsActions",
        "type": "string",
        "enum": [
          "list",
          "get",
          "mode",
          "priority",
          "clear",
          "*"
        ]
      },
      "AlarmPoliciesActions": {
        "title": "AlarmPoliciesActions",
        "type": "string",
        "enum": [
          "get",
          "update",
          "patch",
          "*"
        ]
      },
      "AuditActions": {
        "title": "AuditActions",
        "type": "string",
        "enum": [
          "list",
          "*"
        ]
      },
      "AuthActions": {
        "title": "AuthActions",
        "type": "string",
        "enum": [
          "logon",
          "change_password",
          "logoff",
          "*"
        ]
      },
      "BillingActions": {
        "title": "BillingActions",
        "type": "string",
        "enum": [
          "list",
          "get",
          "*"
        ]
      },
      "BridgesActions": {
        "title": "BridgesActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "status",
          "*"
        ]
      },
      "CredentialsActions": {
        "title": "CredentialsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "lookup",
          "*"
        ]
      },
      "CustomsActions": {
        "title": "CustomsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "*"
        ]
      },
      "IntegrationsActions": {
        "title": "IntegrationsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "list_account",
          "verify",
          "*"
        ]
      },
      "IntegrationPointsActions": {
        "title": "IntegrationPointsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "*"
        ]
      },
      "OperationsActions": {
        "title": "OperationsActions",
        "type": "string",
        "enum": [
          "list",
          "list_history",
          "*"
        ]
      },
      "MappingsActions": {
        "title": "MappingsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "apply",
          "*"
        ]
      },
      "MembersActions": {
        "title": "MembersActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "*"
        ]
      },
      "OrganizationActions": {
        "title": "OrganizationActions",
        "type": "string",
        "enum": [
          "get",
          "update",
          "patch",
          "*"
        ]
      },
      "PermissionSetActions": {
        "title": "PermissionSetActions",
        "type": "string",
        "enum": [
          "list",
          "get",
          "*"
        ]
      },
      "RolesActions": {
        "title": "RolesActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "*"
        ]
      },
      "SubOrgsActions": {
        "title": "SubOrgsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "delete",
          "*"
        ]
      },
      "StatusActions": {
        "title": "StatusActions",
        "type": "string",
        "enum": [
          "list",
          "get",
          "reset",
          "list_events",
          "timeseries",
          "integration_timeseries",
          "*"
        ]
      },
      "TokensActions": {
        "title": "TokensActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "create_integration",
          "create_synqly_integrations",
          "delete",
          "get",
          "reset",
          "rotate",
          "refresh",
          "remove_secondary",
          "*"
        ]
      },
      "TransformsActions": {
        "title": "TransformsActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "*"
        ]
      },
      "WebhooksActions": {
        "title": "WebhooksActions",
        "type": "string",
        "enum": [
          "list",
          "create",
          "get",
          "update",
          "patch",
          "delete",
          "*"
        ]
      },
      "ListPermissionSetsResponse": {
        "title": "ListPermissionSetsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PermissionSet"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetPermissionSetResponse": {
        "title": "GetPermissionSetResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/PermissionSet"
          }
        },
        "required": [
          "result"
        ]
      },
      "APIRegion": {
        "title": "APIRegion",
        "type": "string",
        "enum": [
          "eu",
          "de",
          "us",
          "ca",
          "jpn"
        ]
      },
      "ApiConfig": {
        "title": "ApiConfig",
        "type": "object",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PantherApiCredential",
                "description": "Authenticates calls to the Panther APIs."
              },
              {
                "title": "Credential",
                "description": "Authenticates calls to the Panther APIs."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for your Panther instance APIs."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://api.instance-id.runpanther.net",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for your Panther instance APIs."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "AppSec_Snyk": {
        "title": "appsec | Snyk",
        "type": "object",
        "description": "Configuration for Snyk as an application security provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/snyk-appsec-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SnykCredential",
                "description": "Credentials used for accessing the Snyk API."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the Snyk API."
              }
            ]
          },
          "organization_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The ID of the Snyk organization to use. This value can be found in the Snyk Organizations Settings page."
              },
              {
                "title": "Organization ID",
                "description": "The ID of the Snyk organization to use. This value can be found in the Snyk Organizations Settings page."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SnykRegion",
                "description": "The data region that the Snyk organization is hosted in. This value can be found in the Snyk URL and on the Snyk login page. For more information, see the [Snyk documentation](https://docs.snyk.io/snyk-data-and-governance/regional-hosting-and-data-residency#regional-urls)."
              },
              {
                "title": "Data Region",
                "description": "The data region that the Snyk organization is hosted in. This value can be found in the Snyk URL and on the Snyk login page. For more information, see the [Snyk documentation](https://docs.snyk.io/snyk-data-and-governance/regional-hosting-and-data-residency#regional-urls)."
              }
            ]
          }
        },
        "required": [
          "credential",
          "organization_id",
          "region"
        ]
      },
      "Appsec_amazon_Inspector": {
        "title": "appsec | Amazon Inspector",
        "type": "object",
        "description": "Configuration for Amazon Inspector as an application security provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/amazon-inspector-appsec-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with access to [Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/what-is-inspector.html)."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with access to [Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/what-is-inspector.html)."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsRegion",
                "description": "The [AWS region](https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html) to use for the Amazon Inspector provider."
              },
              {
                "title": "Region",
                "description": "The [AWS region](https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html) to use for the Amazon Inspector provider."
              }
            ]
          }
        },
        "required": [
          "credential",
          "region"
        ]
      },
      "AppsecOpentextCoreApplicationSecurityDataset": {
        "title": "AppsecOpentextCoreApplicationSecurityDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "ArmisCredential": {
        "title": "Armis Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "required": [
                  "extra"
                ],
                "type": "object",
                "properties": {
                  "extra": {
                    "title": "Extra",
                    "required": [
                      "vendor_id"
                    ],
                    "properties": {
                      "vendor_id": {
                        "title": "Vendor ID",
                        "type": "string"
                      }
                    },
                    "description": "Vendor ID for the Armis Centrix™ tenant."
                  },
                  "token_url": {
                    "title": "Token URL",
                    "description": "This field is ignored and should not be set.",
                    "readOnly": true
                  }
                },
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "ArmisCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "ArmisCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "API Key",
                    "description": "Secret value of the API Key."
                  }
                },
                "description": "Configuration when creating new API Key."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "ArmisCredential"
            }
          },
          {
            "description": "Reference to existing API Key.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "ArmisCredential"
            }
          }
        ]
      },
      "Assets_ArmisCentrix": {
        "title": "assets | Armis Centrix™",
        "type": "object",
        "description": "Configuration for Armis Centrix™ for Asset Management and Security.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/armis-centrix-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ArmisCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Armis Centrix™ API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.armis.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Armis Centrix™ API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_ArmisCentrix_Mock": {
        "title": "assets | [MOCK] Armis Centrix",
        "type": "object",
        "description": "Configuration for a mocked Armis Centrix Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsArmisDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_Axonius": {
        "title": "assets | Axonius",
        "type": "object",
        "description": "Configuration for the Axonius Assets Provider\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/axonius-asset-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AxoniusCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Axonius API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.on.axonius.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Axonius API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_Axonius_Mock": {
        "title": "assets | [MOCK] Axonius",
        "type": "object",
        "description": "Configuration for a mocked Axonius as an Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsAxoniusDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_ClarotyXdome": {
        "title": "assets | Claroty xDome",
        "type": "object",
        "description": "Configuration for the Claroty xDome Assets Provider\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/claroty-asset-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClarotyCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ClarotyAPIURL",
                "description": "Base URL for the Claroty xDome API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://api.claroty.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "URL",
                "description": "Base URL for the Claroty xDome API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_CrowdStrike": {
        "title": "assets | CrowdStrike Falcon Spotlight",
        "type": "object",
        "description": "Configuration for CrowdStrike Falcon as an Assets Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrowdStrikeCredential",
                "description": "The credential to use for the CrowdStrike Falcon tenant."
              },
              {
                "title": "Credential",
                "description": "The credential to use for the CrowdStrike Falcon tenant."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the CrowdStrike Falcon Spotlight API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.crowdstrike.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the CrowdStrike Falcon Spotlight API."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "Assets_CrowdStrike_Mock": {
        "title": "assets | [MOCK] CrowdStrike Falcon Spotlight",
        "type": "object",
        "description": "Configuration for a mocked CrowdStrike Falcon as an Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsCrowdStrikeDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_Defender": {
        "title": "assets | Microsoft Defender for Endpoint",
        "type": "object",
        "description": "Configuration for Microsoft Defender for Endpoint as an Assets Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DefenderCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Tenant ID for the Microsoft Defender Management Console."
              },
              {
                "title": "Tenant ID",
                "description": "Tenant ID for the Microsoft Defender Management Console."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Microsoft Defender API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://api-us3.securitycenter.microsoft.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Microsoft Defender API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "tenant_id",
          "url"
        ]
      },
      "Assets_IvantiNeurons": {
        "title": "assets | Ivanti Neurons",
        "type": "object",
        "description": "Configuration for Ivanti Neurons as an Assets Provider\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/ivanti-asset-setup)",
        "properties": {
          "account_identifier": {
            "allOf": [
              {
                "type": "string"
              },
              {
                "format": "uuid",
                "example": "f81d4fae-7dec-11d0-a765-00a0c91e6bf6"
              },
              {
                "title": "Account ID"
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IvantiCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Ivanti Neurons API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://nvuprd-sfc.ivanticloud.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Ivanti Neurons API."
              }
            ]
          }
        },
        "required": [
          "account_identifier",
          "credential",
          "url"
        ]
      },
      "Assets_IvantiNeurons_Mock": {
        "title": "assets | [MOCK] Ivanti Neurons",
        "type": "object",
        "description": "Configuration for a mocked Ivanti Neurons as an Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsIvantiNeuronsDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_NozomiVantage": {
        "title": "assets | Nozomi Vantage",
        "type": "object",
        "description": "Configuration for Nozomi Vantage.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/nozomi-vantage-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NozomiVantageCredential",
                "description": "Credentials used to authenticate with Nozomi Vantage."
              },
              {
                "title": "Credential",
                "description": "Credentials used to authenticate with Nozomi Vantage."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Nozomi Vantage API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.us1.vantage.nozominetworks.io",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Nozomi Vantage API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_NozomiVantage_Mock": {
        "title": "assets | [MOCK] Nozomi Vantage",
        "type": "object",
        "description": "Configuration for a mocked Nozomi Vantage provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsNozomiVantageDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_QualysCloud": {
        "title": "assets | Qualys VMDR",
        "type": "object",
        "description": "Configuration for Qualys Cloud Platform as an Assets Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/QualysCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL for the Qualys Cloud API. This should be the base URL for the API, without any path components."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://qualys.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "URL for the Qualys Cloud API. This should be the base URL for the API, without any path components."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_QualysCloud_Mock": {
        "title": "assets | [MOCK] Qualys VMDR",
        "type": "object",
        "description": "Configuration for a mock Qualys Cloud Platform as an Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsQualysCloudDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_ServiceNow": {
        "title": "assets | ServiceNow CMDB",
        "type": "object",
        "description": "Configuration for ServiceNow Configuration Management Database (CMDB).\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/servicenow-assets-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ServiceNowCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the ServiceNow API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.service-now.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the ServiceNow API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_ServiceNow_Mock": {
        "title": "assets | [MOCK] ServiceNow CMDB",
        "type": "object",
        "description": "Configuration for a mocked ServiceNow as an Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsServiceNowDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_Sevco": {
        "title": "assets | Sevco",
        "type": "object",
        "description": "Configuration for the Sevco Assets Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SevcoCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL for the Sevco API. This should be the base URL for the API, without any path components."
              },
              {
                "pattern": "^https?:.+$",
                "example": "https://api.sev.co"
              },
              {
                "title": "API URL",
                "description": "URL for the Sevco API. This should be the base URL for the API, without any path components."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_Sevco_Mock": {
        "title": "assets | [MOCK] Sevco",
        "type": "object",
        "description": "Configuration for a mocked Sevco Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsSevcoDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Assets_TaniumCloud": {
        "title": "assets | Tanium Assets",
        "type": "object",
        "description": "Configuration for Tanium Cloud as an Assets Provider\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/tanium-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TaniumCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Tanium Cloud API"
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://{customername}-api.cloud.tanium.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Tanium Cloud API"
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Assets_TaniumCloud_Mock": {
        "title": "assets | [MOCK] Tanium Assets",
        "type": "object",
        "description": "Configuration for a mocked Tanium Cloud as an Assets Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AssetsTaniumCloudDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "AssetsArmisDataset": {
        "title": "AssetsArmisDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsAxoniusDataset": {
        "title": "AssetsAxoniusDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsCrowdStrikeDataset": {
        "title": "AssetsCrowdStrikeDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsIvantiNeuronsDataset": {
        "title": "AssetsIvantiNeuronsDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsNozomiVantageDataset": {
        "title": "AssetsNozomiVantageDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsQualysCloudDataset": {
        "title": "AssetsQualysCloudDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsServiceNowDataset": {
        "title": "AssetsServiceNowDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsSevcoDataset": {
        "title": "AssetsSevcoDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AssetsTaniumCloudDataset": {
        "title": "AssetsTaniumCloudDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "AutotaskApiIntegrationCodeCredential": {
        "title": "Autotask Api Integration Code Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "secret"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Identifier used for individual tracking and management of API calls."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Tracking ID",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "AutotaskApiIntegrationCodeCredential"
            }
          },
          {
            "description": "Reference to existing API Tracking ID.",
            "properties": {
              "type": {
                "enum": [
                  "secret_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `secret`. Must match the `id` of an existing `secret`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Tracking ID",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "AutotaskApiIntegrationCodeCredential"
            }
          }
        ]
      },
      "AutotaskSecretCredential": {
        "title": "Autotask Secret Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "secret"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Secret."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "AutotaskSecretCredential"
            }
          },
          {
            "description": "Reference to existing Secret.",
            "properties": {
              "type": {
                "enum": [
                  "secret_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `secret`. Must match the `id` of an existing `secret`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "AutotaskSecretCredential"
            }
          }
        ]
      },
      "AwsProviderCredential": {
        "title": "Aws Provider Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "aws"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/AwsCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new AWS Access Keys."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New AWS Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsCredential",
              "type": "AwsProviderCredential"
            }
          },
          {
            "description": "Reference to existing AWS Access Keys.",
            "properties": {
              "type": {
                "enum": [
                  "aws_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `aws`. Must match the `id` of an existing `aws`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing AWS Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsCredentialId",
              "reference": true,
              "type": "AwsProviderCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "aws_role"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/AwsRoleCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new AWS Role."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New AWS Role",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsRoleCredential",
              "type": "AwsProviderCredential"
            }
          },
          {
            "description": "Reference to existing AWS Role.",
            "properties": {
              "type": {
                "enum": [
                  "aws_role_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `aws_role`. Must match the `id` of an existing `aws_role`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing AWS Role",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsRoleCredentialId",
              "reference": true,
              "type": "AwsProviderCredential"
            }
          }
        ]
      },
      "AwsRegion": {
        "title": "AwsRegion",
        "type": "string",
        "enum": [
          "us-east-1",
          "us-east-2",
          "us-west-1",
          "us-west-2",
          "af-south-1",
          "ap-east-1",
          "ap-south-2",
          "ap-southeast-3",
          "ap-southeast-5",
          "ap-southeast-4",
          "ap-south-1",
          "ap-northeast-3",
          "ap-northeast-2",
          "ap-southeast-1",
          "ap-southeast-2",
          "ap-east-2",
          "ap-southeast-7",
          "ap-northeast-1",
          "ca-central-1",
          "ca-west-1",
          "eu-central-1",
          "eu-west-1",
          "eu-west-2",
          "eu-south-1",
          "eu-west-3",
          "eu-south-2",
          "eu-north-1",
          "eu-central-2",
          "il-central-1",
          "mx-central-1",
          "me-south-1",
          "me-central-1",
          "sa-east-1"
        ]
      },
      "AxoniusCredential": {
        "title": "Axonius Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "This credential must be an API Key and API Secret. For more details, see the [Getting an API Key and API Secret](https://docs.axonius.com/docs/axonius-rest-api#getting-an-api-key-and-api-secret)."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "AxoniusCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "AxoniusCredential"
            }
          }
        ]
      },
      "AzureBlobCredential": {
        "title": "Azure Blob Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Secret."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "AzureBlobCredential"
            }
          },
          {
            "description": "Reference to existing Client Secret.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "AzureBlobCredential"
            }
          }
        ]
      },
      "AzureMonitorLogsCredential": {
        "title": "Azure Monitor Logs Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Secret."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "AzureMonitorLogsCredential"
            }
          },
          {
            "description": "Reference to existing Client Secret.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "AzureMonitorLogsCredential"
            }
          }
        ]
      },
      "ClarotyAPIURL": {
        "title": "ClarotyAPIURL",
        "type": "string",
        "enum": [
          "https://api.claroty.com",
          "https://eu.api.claroty.com",
          "https://ca.api.claroty.com",
          "https://au.api.claroty.com",
          "https://demo-api.claroty.com"
        ]
      },
      "ClarotyCredential": {
        "title": "Claroty Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "ClarotyCredential"
            }
          },
          {
            "description": "Reference to existing API Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "ClarotyCredential"
            }
          }
        ]
      },
      "CloudSecurity_AWS": {
        "title": "cloudsecurity | AWS Cloud Security",
        "type": "object",
        "description": "Configuration for the AWS Cloud Security Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with access to [Amazon Security Hub](https://docs.aws.amazon.com/securityhub/latest/userguide/what-are-securityhub-services.html)."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with access to [Amazon Security Hub](https://docs.aws.amazon.com/securityhub/latest/userguide/what-are-securityhub-services.html)."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsRegion",
                "description": "The [AWS region](https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html) to use for the AWS Cloud Security Provider."
              },
              {
                "title": "Region",
                "description": "The [AWS region](https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html) to use for the AWS Cloud Security Provider."
              }
            ]
          }
        },
        "required": [
          "credential",
          "region"
        ]
      },
      "CloudSecurity_AWSEventBridgeSQS": {
        "title": "cloudsecurity | AWS EventBridge SQS",
        "type": "object",
        "description": "Configuration for the AWS EventBridge SQS Provider that reads security events from an SQS queue populated by EventBridge (e.g. from GuardDuty and SecurityHub).",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with access to the configured SQS queue."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with access to the configured SQS queue."
              }
            ]
          },
          "queue_url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL of the SQS queue where EventBridge sends GuardDuty and SecurityHub events."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Queue URL",
                "description": "URL of the SQS queue where EventBridge sends GuardDuty and SecurityHub events."
              }
            ]
          }
        },
        "required": [
          "credential",
          "queue_url"
        ]
      },
      "CloudSecurity_CrowdStrike": {
        "title": "cloudsecurity | CrowdStrike Cloud Security",
        "type": "object",
        "description": "Configuration for the CrowdStrike Cloud Security Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrowdStrikeCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The root domain where your CrowdStrike Falcon tenant is located."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.crowdstrike.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "The root domain where your CrowdStrike Falcon tenant is located."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "CloudSecurity_CrowdStrike_Mock": {
        "title": "cloudsecurity | [MOCK] CrowdStrike Cloud Security",
        "type": "object",
        "description": "Configuration for a mock CrowdStrike Cloud Security Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CloudSecurityCrowdStrikeDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "CloudSecurity_Defender": {
        "title": "cloudsecurity | Microsoft Defender for Cloud",
        "type": "object",
        "description": "Configuration for the Microsoft Defender for Cloud Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DefenderCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "subscription_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The Azure subscription ID that contains the Microsoft Defender for Cloud workspace."
              },
              {
                "title": "Subscription ID",
                "description": "The Azure subscription ID that contains the Microsoft Defender for Cloud workspace."
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The Azure Active Directory tenant ID that contains the Microsoft Defender for Cloud workspace."
              },
              {
                "title": "Tenant ID",
                "description": "The Azure Active Directory tenant ID that contains the Microsoft Defender for Cloud workspace."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL to your Microsoft Defender for Cloud workspace."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://management.azure.com/.default",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL to your Microsoft Defender for Cloud workspace."
              }
            ]
          }
        },
        "required": [
          "credential",
          "subscription_id",
          "tenant_id"
        ]
      },
      "CloudSecurity_PaloAlto": {
        "title": "cloudsecurity | Palo Alto Networks Cortex Cloud Security",
        "type": "object",
        "description": "Configuration for Palo Alto Networks Cortex Cloud Security",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaloAltoCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Palo Alto Networks Cortex Cloud Security API."
              },
              {
                "example": "https://api-{tenant}.xdr.{region}.paloaltonetworks.com"
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Palo Alto Networks Cortex Cloud Security API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "CloudSecurityCrowdStrikeDataset": {
        "title": "CloudSecurityCrowdStrikeDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "CrowdStrikeCredential": {
        "title": "Crowd Strike Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "CrowdStrikeCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "CrowdStrikeCredential"
            }
          }
        ]
      },
      "CrowdstrikeHECCredential": {
        "title": "Crowdstrike HECCredential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Key."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "CrowdstrikeHECCredential"
            }
          },
          {
            "description": "Reference to existing API Key.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "CrowdstrikeHECCredential"
            }
          }
        ]
      },
      "Custom_Synqly": {
        "title": "custom | Custom Provider",
        "type": "object",
        "description": "Configuration for Synqly Custom Provider.",
        "properties": {
          "custom_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Customer provider ID associated with this credential configuration"
              },
              {
                "title": "Custom provider ID",
                "description": "Customer provider ID associated with this credential configuration"
              }
            ]
          },
          "endpoints": {
            "allOf": [
              {
                "type": "object",
                "additionalProperties": {
                  "$ref": "#/components/schemas/CustomEndpoint"
                },
                "description": "Custom endpoints. Review the custom provider definition for the custom_id you supplied for the list of endpoints that must be defined. All endpoint in the provider definition are required."
              },
              {
                "title": "Custom endpoints",
                "description": "Custom endpoints. Review the custom provider definition for the custom_id you supplied for the list of endpoints that must be defined. All endpoint in the provider definition are required."
              }
            ]
          },
          "tags": {
            "allOf": [
              {
                "type": "object",
                "additionalProperties": {
                  "type": "string"
                },
                "description": "Tags that customize how provider requests are made, such as supplying a URL path parameter or account ID. Review the custom provider definition for the custom_id you supplied for the list of tags that must be defined. All tags in the provider definition are required."
              },
              {
                "title": "Tags",
                "description": "Tags that customize how provider requests are made, such as supplying a URL path parameter or account ID. Review the custom provider definition for the custom_id you supplied for the list of tags that must be defined. All tags in the provider definition are required."
              }
            ]
          }
        },
        "required": [
          "custom_id",
          "endpoints",
          "tags"
        ]
      },
      "CustomCredential": {
        "title": "Custom Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "aws"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/AwsCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new AWS Access Keys."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New AWS Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsCredential",
              "type": "CustomCredential"
            }
          },
          {
            "description": "Reference to existing AWS Access Keys.",
            "properties": {
              "type": {
                "enum": [
                  "aws_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `aws`. Must match the `id` of an existing `aws`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing AWS Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsCredentialId",
              "reference": true,
              "type": "CustomCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Basic Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "CustomCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "CustomCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "CustomCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "CustomCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "secret"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Secret."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "CustomCredential"
            }
          },
          {
            "description": "Reference to existing Secret.",
            "properties": {
              "type": {
                "enum": [
                  "secret_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `secret`. Must match the `id` of an existing `secret`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "CustomCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "CustomCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "CustomCredential"
            }
          }
        ]
      },
      "CustomEndpoint": {
        "title": "Custom Endpoint",
        "type": "object",
        "description": "Defines URL and Credential to use for the endpoint",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CustomCredential",
                "description": "The credential to use for the custom endpoint. Review the custom provider definition for the custom_id you supplied for the credential type that must be defined."
              },
              {
                "title": "Custom endpoint credential",
                "description": "The credential to use for the custom endpoint. Review the custom provider definition for the custom_id you supplied for the credential type that must be defined."
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the TLS certificate."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Custom URL for the provider. If not provided, the default endpoint URL defined in the provider definition for the provided custom_id will be used instead."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Custom endpoint URL",
                "description": "Custom URL for the provider. If not provided, the default endpoint URL defined in the provider definition for the provided custom_id will be used instead."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "CustomFieldMapping": {
        "title": "CustomFieldMapping",
        "type": "object",
        "properties": {
          "name": {
            "allOf": [
              {
                "type": "string",
                "description": "Name for the custom field that you will use in the `custom_fields` field in the returned ticket objects."
              },
              {
                "title": "Name",
                "description": "Name for the custom field that you will use in the `custom_fields` field in the returned ticket objects."
              }
            ]
          },
          "project_id": {
            "allOf": [
              {
                "type": "string",
                "description": "ID of the project this field mapping is associated with. ID of \"\\*\" is used to apply to all projects."
              },
              {
                "title": "Project ID",
                "description": "ID of the project this field mapping is associated with. ID of \"*\" is used to apply to all projects."
              }
            ]
          },
          "provider_field_path": {
            "allOf": [
              {
                "type": "string",
                "description": "Path to or name of the custom field in the provider."
              },
              {
                "title": "Field Path (Provider)",
                "description": "Path to or name of the custom field in the provider."
              }
            ]
          }
        },
        "required": [
          "name",
          "project_id",
          "provider_field_path"
        ]
      },
      "DefenderCredential": {
        "title": "Defender Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Microsoft Defender OAuth client credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "DefenderCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "DefenderCredential"
            }
          }
        ]
      },
      "ESETCredential": {
        "title": "ESETCredential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {
                  "token_url": {
                    "title": "Token URL",
                    "description": "This field is ignored and should not be set.",
                    "readOnly": true
                  }
                },
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "ESETCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "ESETCredential"
            }
          }
        ]
      },
      "Edr_CrowdStrike": {
        "title": "edr | CrowdStrike Insight EDR",
        "type": "object",
        "description": "Configuration for CrowdStrike Falcon® Insight EDR.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/crowdstrike-edr-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrowdStrikeCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the CrowdStrike Falcon® API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.crowdstrike.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the CrowdStrike Falcon® API."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "Edr_CrowdStrike_Mock": {
        "title": "edr | [MOCK] CrowdStrike Insight EDR",
        "type": "object",
        "description": "Configuration for [MOCK] CrowdStrike Falcon® Insight EDR.",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EdrCrowdStrikeDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Edr_Defender": {
        "title": "edr | Microsoft Defender",
        "type": "object",
        "description": "Configuration for Microsoft Defender for Endpoint.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/defender-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DefenderCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Tenant ID for the Microsoft Defender Management Console."
              },
              {
                "title": "Tenant ID",
                "description": "Tenant ID for the Microsoft Defender Management Console."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Microsoft Defender API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api-us.securitycenter.windows.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Microsoft Defender API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "tenant_id",
          "url"
        ]
      },
      "Edr_EsetConnect": {
        "title": "edr | ESET Connect",
        "type": "object",
        "description": "Configuration for ESET Connect as a EDR Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ESETCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "$ref": "#/components/schemas/APIRegion",
                "description": "Region to use when connecting to the ESET Connect API."
              },
              {
                "example": "eu"
              },
              {
                "title": "Region",
                "description": "Region to use when connecting to the ESET Connect API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "region"
        ]
      },
      "Edr_Malwarebytes": {
        "title": "edr | ThreatDown EDR",
        "type": "object",
        "description": "Configuration for ThreatDown Endpoint Detection & Response.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/malwarebytes-setup)",
        "properties": {
          "account_identifier": {
            "allOf": [
              {
                "type": "string",
                "description": "Account identifier for the ThreatDown EDR tenant."
              },
              {
                "pattern": "^(https:\\/\\/cloud\\.malwarebytes\\.com\\/)?((?:[\\dA-Za-z]+-){4}[\\dA-Za-z]+)(\\/.*)?$",
                "example": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx - OR - https://cloud.malwarebytes.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/dashboard",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid Account ID (`xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`) or tenant URL (`https://cloud.malwarebytes.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/dashboard`)."
                }
              },
              {
                "title": "Account ID",
                "description": "Account identifier for the ThreatDown EDR tenant."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MalwarebytesCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the ThreatDown EDR API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.malwarebytes.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the ThreatDown EDR API."
              }
            ]
          }
        },
        "required": [
          "account_identifier",
          "credential"
        ]
      },
      "Edr_SentinelOne": {
        "title": "edr | SentinelOne Endpoint",
        "type": "object",
        "description": "Configuration for SentinelOne Singularity™ Endpoint.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/sentinelone-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SentinelOneCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "edr_events_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SentinelOneEdrEventsCredential",
                "nullable": true,
                "description": "Credential used for the SentinelOne Singularity Data Lake API. This credential is required when querying EDR events."
              },
              {
                "title": "Events Credential",
                "description": "Credential used for the SentinelOne Singularity Data Lake API. This credential is required when querying EDR events."
              }
            ]
          },
          "edr_events_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the SentinelOne Singularity Data Lake API. This URL is required is required when querying EDR events."
              },
              {
                "example": "https://xdr.{region}.sentinelone.net"
              },
              {
                "title": "Events Base URL",
                "description": "Base URL for the SentinelOne Singularity Data Lake API. This URL is required is required when querying EDR events."
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the SentinelOne TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the SentinelOne TLS certificate."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the SentinelOne Management API."
              },
              {
                "example": "https://{tenant}.sentinelone.net"
              },
              {
                "title": "Base URL",
                "description": "Base URL for the SentinelOne Management API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Edr_Sophos": {
        "title": "edr | Sophos Endpoint",
        "type": "object",
        "description": "Configuration for Sophos Endpoint.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/sophos-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SophosCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Sophos Endpoint API."
              },
              {
                "default": "https://api.central.sophos.com"
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Sophos Endpoint API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Edr_Tanium": {
        "title": "edr | Tanium EDR",
        "type": "object",
        "description": "Configuration for Tanium Cloud as a EDR Provider\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/tanium-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TaniumCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Tanium Cloud API"
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://{customername}-api.cloud.tanium.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Tanium Cloud API"
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "EdrCrowdStrikeDataset": {
        "title": "EdrCrowdStrikeDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "ElasticsearchAuthOptions": {
        "title": "Elasticsearch Authentication Options",
        "type": "object",
        "description": "Options used to control how requests are made to Elasticsearch when different authentication types are used.",
        "properties": {
          "run_as": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Submit API requests as a specific user, with all of their roles and permissions. When populated, this option will send the `es-security-runas-user` header with every request made to the Elasticsearch API."
              },
              {
                "title": "Run As",
                "description": "Submit API requests as a specific user, with all of their roles and permissions. When populated, this option will send the `es-security-runas-user` header with every request made to the Elasticsearch API."
              }
            ]
          },
          "shared_secret": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ElasticsearchSharedSecret",
                "nullable": true,
                "description": "Some auth cases, notably JWT auth, can be configured to require sending a shared secret in the `ES-Client-Authentication` header. When this secret is populated it will get added as the shared secret for every request made to Elasticsearch."
              },
              {
                "title": "Shared Secret",
                "description": "Some auth cases, notably JWT auth, can be configured to require sending a shared secret in the `ES-Client-Authentication` header. When this secret is populated it will get added as the shared secret for every request made to Elasticsearch."
              }
            ]
          }
        }
      },
      "ElasticsearchCredential": {
        "title": "Elasticsearch Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Basic authentication credentials for Elasticsearch. It is recommended to use API keys or OAuth client credentials whenever possible."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "ElasticsearchCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "ElasticsearchCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "required": [
                  "token_url"
                ],
                "type": "object",
                "properties": {},
                "description": "Client credentials and connection data for an identity provider (IdP) that has been configured for use as a [JWT realm](https://www.elastic.co/guide/en/elasticsearch/reference/8.15/jwt-auth-realm.html) in Elasticsearch. *([Instructions for Elastic Cloud](https://www.elastic.co/guide/en/cloud/current/ec-securing-clusters-JWT.html).)*\nRequires a Token URL for the third party identity provider. To send specific scopes during the client credentials OAuth flow, specify them in `extra.scopes` as a list of strings."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "ElasticsearchCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "ElasticsearchCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Elasticsearch API Key. Follow [this guide to generate an API Key](https://www.elastic.co/guide/en/kibana/current/api-keys.html). The API Key must have sufficient permissions to the target index."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "ElasticsearchCredential"
            }
          },
          {
            "description": "Reference to existing API Key.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "ElasticsearchCredential"
            }
          }
        ]
      },
      "ElasticsearchSharedSecret": {
        "title": "Shared Secret",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "secret"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Shared secret used to populate the `ES-Client-Authentication` header during Elasticsearch requests."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Shared Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "ElasticsearchSharedSecret"
            }
          },
          {
            "description": "Reference to existing Shared Secret.",
            "properties": {
              "type": {
                "enum": [
                  "secret_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `secret`. Must match the `id` of an existing `secret`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Shared Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "ElasticsearchSharedSecret"
            }
          }
        ]
      },
      "EntraIdCredential": {
        "title": "Entra Id Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Azure Client ID and Client Secret for a service principal. The application must be configured with permissions to access the user, group, and audit log graph APIs."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "EntraIdCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "EntraIdCredential"
            }
          }
        ]
      },
      "FreshdeskCredential": {
        "title": "Freshdesk Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "You can use your personal API key to authenticate the request. If you use the API key, there is no need for a password. The token is supplied as \"Your API Key\". [Freshdesk API token generation documentation](https://developer.freshdesk.com/api/#authentication)"
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "FreshdeskCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "FreshdeskCredential"
            }
          }
        ]
      },
      "GCSCredential": {
        "title": "GCSCredential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "aws"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/AwsCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "AWS like credential that stores [hash-based message authentication code (HMAC) keys](https://cloud.google.com/storage/docs/authentication/hmackeys) with write access to the GCS bucket."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New AWS Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsCredential",
              "type": "GCSCredential"
            }
          },
          {
            "description": "Reference to existing AWS Access Keys.",
            "properties": {
              "type": {
                "enum": [
                  "aws_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `aws`. Must match the `id` of an existing `aws`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing AWS Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "AwsCredentialId",
              "reference": true,
              "type": "GCSCredential"
            }
          }
        ]
      },
      "GCSJsonCredential": {
        "title": "GCSJson Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "GCSJsonCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "GCSJsonCredential"
            }
          }
        ]
      },
      "GitHubCredential": {
        "title": "Git Hub Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "GitHubCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "GitHubCredential"
            }
          }
        ]
      },
      "GitLabCredential": {
        "title": "Git Lab Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "GitLabCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "GitLabCredential"
            }
          }
        ]
      },
      "GoogleChronicleCredential": {
        "title": "Google Chronicle Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "required": [
                  "extra"
                ],
                "type": "object",
                "properties": {
                  "extra": {
                    "title": "Extra",
                    "required": [
                      "client_email"
                    ],
                    "properties": {
                      "client_email": {
                        "title": "Client Email",
                        "type": "string"
                      }
                    },
                    "description": "Connection specific JSON map, must include the field `client_email`."
                  },
                  "token_url": {
                    "title": "Token URL"
                  }
                },
                "description": "OAuth client credentials for a Google Cloud Service Account with permissions for Google Security Operations (formerly Google Chronicle)."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "GoogleChronicleCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "GoogleChronicleCredential"
            }
          }
        ]
      },
      "GoogleCredential": {
        "title": "Google Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "GoogleCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "GoogleCredential"
            }
          }
        ]
      },
      "GoogleServiceAccountCredential": {
        "title": "Google Service Account Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "required": [
                  "extra"
                ],
                "type": "object",
                "properties": {
                  "extra": {
                    "title": "Extra",
                    "required": [
                      "client_email"
                    ],
                    "properties": {
                      "client_email": {
                        "title": "Client Email",
                        "type": "string"
                      }
                    },
                    "description": "Connection specific JSON map, must include the field `client_email`."
                  },
                  "token_url": {
                    "title": "Token URL"
                  }
                },
                "description": "OAuth client credentials for a Google Cloud Service Account with permissions for Google Security Operations."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "GoogleServiceAccountCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "GoogleServiceAccountCredential"
            }
          }
        ]
      },
      "HCLAppScanOnCloudCredential": {
        "title": "HCLApp Scan On Cloud Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "HCLAppScanOnCloudCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "HCLAppScanOnCloudCredential"
            }
          }
        ]
      },
      "HCLAppScanOnCloudUrl": {
        "title": "HCLAppScanOnCloudUrl",
        "type": "string",
        "enum": [
          "https://cloud.appscan.com",
          "https://eu.cloud.appscan.com"
        ]
      },
      "HttpIngest": {
        "title": "HttpIngest",
        "type": "object",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PantherIngestionCredential",
                "description": "Authenticates calls to your HTTP Ingest log source."
              },
              {
                "title": "Authentication",
                "description": "Authenticates calls to your HTTP Ingest log source."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "The URL for your HTTP Log Source."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://logs.instance-id.runpanther.net/http/log-source-id",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Ingest URL",
                "description": "The URL for your HTTP Log Source."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "HttpReceiverAuthConfig": {
        "title": "HttpReceiverAuthConfig",
        "oneOf": [
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "basic_config"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/HttpReceiverBasicAuthConfig"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "o_auth_client_config"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/HttpReceiverOAuthConfig"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "token_config"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/HttpReceiverTokenAuthConfig"
              }
            ],
            "required": [
              "type"
            ]
          }
        ]
      },
      "HttpReceiverBasicAuthConfig": {
        "title": "Basic Authorization",
        "type": "object",
        "description": "Standard HTTP Basic authentication (RFC 7617). Credentials are sent in the Authorization header as Base64-encoded `username:password`.",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpReceiverBasicCredential"
              },
              {
                "title": "Basic Credentials"
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "HttpReceiverBasicCredential": {
        "title": "Http Receiver Basic Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Basic Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "HttpReceiverBasicCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "HttpReceiverBasicCredential"
            }
          }
        ]
      },
      "HttpReceiverMethod": {
        "title": "HTTP Method",
        "type": "string",
        "enum": [
          "POST",
          "PUT",
          "PATCH",
          "GET"
        ],
        "description": "HTTP method to use for sending events."
      },
      "HttpReceiverOAuthConfig": {
        "title": "OAuth Client Credentials",
        "type": "object",
        "description": "OAuth 2.0 client credentials flow (RFC 6749) for service-to-service authentication.",
        "properties": {
          "auth_style": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpReceiverOAuthStyle",
                "nullable": true,
                "description": "How to send client credentials when requesting OAuth access tokens:\n\n- `in_header`: Send client credentials via HTTP Basic authentication. This is the **recommended and most secure method**, used by most modern OAuth 2.0 providers.\n- `in_params`: Send client credentials URL-encoded in the request body as form parameters. Required by some legacy OAuth servers and specific provider implementations. Consult your OAuth provider documentation for details."
              },
              {
                "default": "in_header"
              },
              {
                "title": "Auth Style",
                "description": "How to send client credentials when requesting OAuth access tokens:\n- `in_header`: Send client credentials via HTTP Basic authentication. This is the **recommended and most secure method**, used by most modern OAuth 2.0 providers.\n- `in_params`: Send client credentials URL-encoded in the request body as form parameters. Required by some legacy OAuth servers and specific provider implementations. Consult your OAuth provider documentation for details."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpReceiverOAuthCredential"
              },
              {
                "title": "Client Credentials"
              }
            ]
          },
          "endpoint_params": {
            "allOf": [
              {
                "type": "object",
                "additionalProperties": {
                  "type": "string"
                },
                "nullable": true,
                "description": "Additional parameters to include in OAuth token request"
              },
              {
                "example": {
                  "audience": "https://api.example.com",
                  "resource": "https://graph.example.com"
                }
              },
              {
                "title": "Endpoint Parameters",
                "description": "Additional parameters to include in OAuth token request"
              }
            ]
          },
          "scopes": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true,
                "description": "OAuth2 scopes to request when fetching access token"
              },
              {
                "example": [
                  "https://api.example.com/.default",
                  "events.write"
                ]
              },
              {
                "title": "Scopes",
                "description": "OAuth2 scopes to request when fetching access token"
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "HttpReceiverOAuthCredential": {
        "title": "Http Receiver OAuth Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "HttpReceiverOAuthCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "HttpReceiverOAuthCredential"
            }
          }
        ]
      },
      "HttpReceiverOAuthStyle": {
        "title": "OAuth Style",
        "type": "string",
        "enum": [
          "in_header",
          "in_params"
        ],
        "description": "How to send client credentials when requesting OAuth access tokens:\n\n- `in_header`: Send client credentials via HTTP Basic authentication. This is the **recommended and most secure method**, used by most modern OAuth 2.0 providers.\n- `in_params`: Send client credentials URL-encoded in the request body as form parameters. Required by some legacy OAuth servers and specific provider implementations. Consult your OAuth provider documentation for details."
      },
      "HttpReceiverSigningCredential": {
        "title": "Payload Signing Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "secret"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "HMAC-SHA256 Signing Secret",
                    "description": "Secret key for signing HTTP request payloads using HMAC-SHA256. The signature is computed over the request body and sent in the `X-Synqly-Signature` header with format `sha256={hex_signature}`."
                  }
                },
                "description": "Configuration when creating new Secret."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "HttpReceiverSigningCredential"
            }
          },
          {
            "description": "Reference to existing Secret.",
            "properties": {
              "type": {
                "enum": [
                  "secret_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `secret`. Must match the `id` of an existing `secret`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "HttpReceiverSigningCredential"
            }
          }
        ]
      },
      "HttpReceiverTokenAuthConfig": {
        "title": "Token Authorization",
        "type": "object",
        "description": "Token-based authentication for API keys, bearer tokens, and custom token schemes. By default, sends token in Authorization header as a Bearer token. Use the **Header Name** and **Template** options to override this behavior.",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpReceiverTokenCredential"
              },
              {
                "title": "Token Credential"
              }
            ]
          },
          "header_name": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "HTTP header name to use when sending the token."
              },
              {
                "default": "Authorization",
                "example": "X-API-Key"
              },
              {
                "title": "Header Name",
                "description": "HTTP header name to use when sending the token."
              }
            ]
          },
          "template": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Template to use when building the HTTP header value. Use `{{token}}` as a placeholder for the secret token value. This will be substituted at runtime. Do not store any secrets in this field."
              },
              {
                "default": "Bearer {{token}}",
                "example": "ApiKey {{token}}"
              },
              {
                "title": "Header Value Template",
                "description": "Template to use when building the HTTP header value. Use `{{token}}` as a placeholder for the secret token value. This will be substituted at runtime. Do not store any secrets in this field."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "HttpReceiverTokenCredential": {
        "title": "Http Receiver Token Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "HttpReceiverTokenCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "HttpReceiverTokenCredential"
            }
          }
        ]
      },
      "HttpRequestBodyFormat": {
        "title": "Body Format",
        "type": "string",
        "enum": [
          "jsonl",
          "json_array"
        ],
        "description": "Format for serializing events in the request body sent to the receiving endpoint."
      },
      "Identity_EntraId": {
        "title": "identity | Microsoft Entra ID",
        "type": "object",
        "description": "Configuration for Microsoft Entra ID.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/entra-id-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/EntraIdCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Azure Directory (tenant) identifier."
              },
              {
                "title": "Tenant ID",
                "description": "Azure Directory (tenant) identifier."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the the Microsoft Graph API."
              },
              {
                "title": "Base URL",
                "description": "Base URL for the the Microsoft Graph API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "tenant_id"
        ]
      },
      "Identity_Google": {
        "title": "identity | Google Workspace",
        "type": "object",
        "description": "Configuration for Google Workspace.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/google-workspace-setup)",
        "properties": {
          "client_email": {
            "allOf": [
              {
                "type": "string",
                "description": "Client email associated with the service account key."
              },
              {
                "example": "{service-account-name}@{project-id}.iam.gserviceaccount.com"
              },
              {
                "title": "Client Email",
                "description": "Client email associated with the service account key."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "delegate": {
            "allOf": [
              {
                "type": "string",
                "description": "Email address of the user that the service account is impersonating for domain-wide delegation. For more information, see [this Google support article](https://support.google.com/a/answer/162106)."
              },
              {
                "title": "Delegate",
                "description": "Email address of the user that the service account is impersonating for domain-wide delegation. For more information, see [this Google support article](https://support.google.com/a/answer/162106)."
              }
            ]
          }
        },
        "required": [
          "client_email",
          "credential",
          "delegate"
        ]
      },
      "Identity_Okta": {
        "title": "identity | Okta Identity",
        "type": "object",
        "description": "Configuration for Okta Identity.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/okta-identity-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OktaCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Okta API."
              },
              {
                "example": "https://{tenant}.okta.com"
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Okta API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Identity_PingOne": {
        "title": "identity | PingOne Cloud Platform",
        "type": "object",
        "description": "Configuration for PingOne Cloud Platform.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/ping-identity-setup)",
        "properties": {
          "auth_url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PingOneAuthURL",
                "description": "Base URL for making authentication requests to PingOne."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://auth.pingone.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Auth URL",
                "description": "Base URL for making authentication requests to PingOne."
              }
            ]
          },
          "client_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Client ID for the application set up as a worker."
              },
              {
                "title": "Client ID",
                "description": "Client ID for the application set up as a worker."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PingOneCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "organization_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The organization ID that the client app is a part of."
              },
              {
                "title": "Organization ID",
                "description": "The organization ID that the client app is a part of."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PingOneAPIURL",
                "description": "Base URL for the PingOne API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.pingone.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the PingOne API."
              }
            ]
          }
        },
        "required": [
          "auth_url",
          "client_id",
          "credential",
          "organization_id",
          "url"
        ]
      },
      "Identity_Workday": {
        "title": "identity | Workday Identity",
        "type": "object",
        "description": "Configuration for Workday Identity.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/workday-identity-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WorkdayCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "tenant": {
            "allOf": [
              {
                "type": "string",
                "description": "Workday tenant identifier."
              },
              {
                "example": "acmecorp_dpt1"
              },
              {
                "title": "Tenant ID",
                "description": "Workday tenant identifier."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Workday API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://impl-services1.wd12.myworkday.com/ccx/service",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Workday API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "tenant",
          "url"
        ]
      },
      "IncidentIOCredential": {
        "title": "Incident IOCredential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "IncidentIOCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "IncidentIOCredential"
            }
          }
        ]
      },
      "IncidentResponse_IncidentIO": {
        "title": "incidentresponse | incident.io",
        "type": "object",
        "description": "Configuration for incident.io as an Incident Response Provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/incident-io-incident-response-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IncidentIOCredential",
                "description": "Credential used for accessing the incident.io API."
              },
              {
                "title": "Credential",
                "description": "Credential used for accessing the incident.io API."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "IncidentResponse_PagerDuty": {
        "title": "incidentresponse | PagerDuty",
        "type": "object",
        "description": "Configuration for PagerDuty as an incident response provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/pagerduty-incident-response-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PagerDutyCredential"
              },
              {
                "title": "Credential"
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "IvantiCredential": {
        "title": "Ivanti Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {
                  "token_url": {
                    "title": "Token URL",
                    "description": "This field is ignored and should not be set.",
                    "readOnly": true
                  }
                },
                "description": "Configuration when creating new Token URL."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token URL",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "IvantiCredential"
            }
          },
          {
            "description": "Reference to existing Token URL.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token URL",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "IvantiCredential"
            }
          }
        ]
      },
      "IvantiCredentialTicketing": {
        "title": "Ivanti ITSM Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "API Key",
                    "description": "The Reference ID (REST API Key) generated for your tenant in Ivanti ITSM.",
                    "example": "abc123def456ghi789"
                  }
                },
                "description": "REST API Key used for authenticating with Ivanti ITSM. This key is static  and does not expire, unlike Session IDs."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New REST API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "IvantiCredentialTicketing"
            }
          },
          {
            "description": "Reference to existing REST API Key.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing REST API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "IvantiCredentialTicketing"
            }
          }
        ]
      },
      "JiraCredential": {
        "title": "Jira Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Basic Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "JiraCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "JiraCredential"
            }
          }
        ]
      },
      "MalwarebytesCredential": {
        "title": "Malwarebytes Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "MalwarebytesCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "MalwarebytesCredential"
            }
          }
        ]
      },
      "Notifications_Jira": {
        "title": "notifications | Atlassian Jira",
        "type": "object",
        "description": "Configuration for Atlassian Jira.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/jira-notification-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Jira API."
              },
              {
                "example": "https://tenant.atlassian.net"
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Jira API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Notifications_Mock": {
        "title": "notifications | Test Provider",
        "type": "object",
        "description": "Configuration for the Synqly mock in-memory SIEM Provider. This provider is for testing purposes only and does not retain noficiations pushed to it.",
        "properties": {
          "channel": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The channel to send notifications to."
              },
              {
                "title": "Channel",
                "description": "The channel to send notifications to."
              }
            ]
          }
        }
      },
      "Notifications_Slack": {
        "title": "notifications | Slack",
        "type": "object",
        "description": "Configuration for Slack.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/slack-notification-setup)",
        "properties": {
          "channel": {
            "allOf": [
              {
                "type": "string",
                "description": "Channel to send notifications to. Must be a valid existing channel."
              },
              {
                "title": "Channel",
                "description": "Channel to send notifications to. Must be a valid existing channel."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SlackCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Slack API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://slack.com/",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Slack API."
              }
            ]
          }
        },
        "required": [
          "channel",
          "credential"
        ]
      },
      "Notifications_Slack_Webhook": {
        "title": "notifications | Slack Incoming Webhook",
        "type": "object",
        "description": "Configuration for the Slack Notification Provider using Incoming Webhooks.\nIncoming Webhooks are a way to post messages from apps into Slack. The can not be used for any other actions, such as reading or deleting messages.",
        "properties": {
          "webhook_url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SlackWebhookCredential"
              },
              {
                "title": "Incoming Webhook URL"
              }
            ]
          }
        },
        "required": [
          "webhook_url"
        ]
      },
      "Notifications_Teams": {
        "title": "notifications | Microsoft Teams",
        "type": "object",
        "description": "Configuration for Microsoft Teams.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/teams-notification-setup)",
        "properties": {
          "channel_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Identifier of the channel to send messages to."
              },
              {
                "title": "Channel ID",
                "description": "Identifier of the channel to send messages to."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TeamsCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "endpoint": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "URL of the endpoint to send messages to. Only required if OAuth Client Credentials are used for authentication."
              },
              {
                "title": "Message Endpoint",
                "description": "URL of the endpoint to send messages to. Only required if OAuth Client Credentials are used for authentication."
              }
            ]
          },
          "team_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Identifier of the team to send messages to."
              },
              {
                "title": "Team ID",
                "description": "Identifier of the team to send messages to."
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Azure Directory (tenant) ID. Only required if OAuth Client Credentials are used for authentication."
              },
              {
                "title": "Tenant ID",
                "description": "Azure Directory (tenant) ID. Only required if OAuth Client Credentials are used for authentication."
              }
            ]
          }
        },
        "required": [
          "channel_id",
          "credential",
          "team_id"
        ]
      },
      "NozomiVantageCredential": {
        "title": "Nozomi Vantage Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "Token Secret"
                  },
                  "username": {
                    "title": "Token Name"
                  }
                },
                "description": "API key name and secret value of your Nozomi Vantage API token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "NozomiVantageCredential"
            }
          },
          {
            "description": "Reference to existing API Token.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "NozomiVantageCredential"
            }
          }
        ]
      },
      "NucleusCredential": {
        "title": "Nucleus Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Key."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "NucleusCredential"
            }
          },
          {
            "description": "Reference to existing API Key.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "NucleusCredential"
            }
          }
        ]
      },
      "OktaCredential": {
        "title": "Okta Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "OAuth 2.0 Token URL, Client ID, and Client Secret for a Synqly Identity Connector API service application."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "OktaCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "OktaCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Token to authenticate with Okta. Follow [this guide to generate an API token](https://developer.okta.com/docs/guides/create-an-api-token). The token must have access to list records in the system audit log. (Not for production use. Use `o_auth_client` instead)"
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "OktaCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "OktaCredential"
            }
          }
        ]
      },
      "OpenSearchCredential": {
        "title": "Open Search Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Basic authentication credentials for OpenSearch.\n"
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "OpenSearchCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "OpenSearchCredential"
            }
          }
        ]
      },
      "OpenTextApplicationSecurityCredential": {
        "title": "Open Text Application Security Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "OpenTextApplicationSecurityCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "OpenTextApplicationSecurityCredential"
            }
          }
        ]
      },
      "OpenTextCoreApplicationSecurityCredential": {
        "title": "Open Text Core Application Security Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "OpenTextCoreApplicationSecurityCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "OpenTextCoreApplicationSecurityCredential"
            }
          }
        ]
      },
      "OpenTextCoreApplicationSecurityUrl": {
        "title": "OpenTextCoreApplicationSecurityUrl",
        "type": "string",
        "enum": [
          "https://api.ams.fortify.com",
          "https://api.emea.fortify.com",
          "https://api.apac.fortify.com",
          "https://api.sgp.fortify.com",
          "https://api.fed.fortifygov.com",
          "https://api.trial.fortify.com"
        ]
      },
      "PagerDutyCredential": {
        "title": "Pager Duty Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Key."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "PagerDutyCredential"
            }
          },
          {
            "description": "Reference to existing API Key.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "PagerDutyCredential"
            }
          }
        ]
      },
      "PaloAltoCredential": {
        "title": "Palo Alto Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "API Key",
                    "description": "API Key for the Palo Alto Networks Cortex Cloud Security API."
                  },
                  "username": {
                    "title": "API Key ID",
                    "description": "API Key ID for the Palo Alto Networks Cortex Cloud Security API."
                  }
                },
                "description": "Configuration when creating new API Key."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "PaloAltoCredential"
            }
          },
          {
            "description": "Reference to existing API Key.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "PaloAltoCredential"
            }
          }
        ]
      },
      "PantherApiCredential": {
        "title": "API Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "API Token",
                    "description": "Your API Token value generated in the Panther console."
                  }
                },
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "PantherApiCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "PantherApiCredential"
            }
          }
        ]
      },
      "PantherIngestionCredential": {
        "title": "Ingestion Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "Bearer Token",
                    "description": "The Bearer Token generated when creating your Panther HTTP Log Source."
                  }
                },
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "PantherIngestionCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "PantherIngestionCredential"
            }
          }
        ]
      },
      "PingOneAPIURL": {
        "title": "PingOneAPIURL",
        "type": "string",
        "enum": [
          "https://api.pingone.com",
          "https://api.pingone.ca",
          "https://api.pingone.eu",
          "https://api.pingone.com.au",
          "https://api.pingone.sg",
          "https://api.pingone.asia"
        ]
      },
      "PingOneAuthURL": {
        "title": "PingOneAuthURL",
        "type": "string",
        "enum": [
          "https://auth.pingone.com",
          "https://auth.pingone.ca",
          "https://auth.pingone.eu",
          "https://auth.pingone.com.au",
          "https://auth.pingone.sg",
          "https://auth.pingone.asia"
        ]
      },
      "PingOneCredential": {
        "title": "Ping One Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "PingOneCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "PingOneCredential"
            }
          }
        ]
      },
      "ProviderConfig": {
        "title": "ProviderConfig",
        "oneOf": [
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_amazon_inspector"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Appsec_amazon_Inspector"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_github"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/appsec_GitHub"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_gitlab"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/appsec_GitLab"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_hcl_appscan_on_cloud"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/appsec_HCLAppScanOnCloud"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_opentext_application_security"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/appsec_OpenTextApplicationSecurity"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_opentext_core_application_security"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/appsec_OpenTextCoreApplicationSecurity"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_opentext_core_application_security_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/appsec_OpenTextCoreApplicationSecurityMock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "appsec_snyk"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/AppSec_Snyk"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_armis_centrix"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_ArmisCentrix"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_armis_centrix_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_ArmisCentrix_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_axonius"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_Axonius"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_axonius_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_Axonius_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_claroty_xdome"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_ClarotyXdome"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_crowdstrike"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_CrowdStrike"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_crowdstrike_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_CrowdStrike_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_defender"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_Defender"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_ivanti_neurons"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_IvantiNeurons"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_ivanti_neurons_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_IvantiNeurons_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_nozomi_vantage"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_NozomiVantage"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_nozomi_vantage_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_NozomiVantage_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_qualys_cloud"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_QualysCloud"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_qualys_cloud_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_QualysCloud_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_servicenow"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_ServiceNow"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_servicenow_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_ServiceNow_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_sevco"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_Sevco"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_sevco_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_Sevco_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_tanium_cloud"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_TaniumCloud"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "assets_tanium_cloud_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Assets_TaniumCloud_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "cloudsecurity_aws"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/CloudSecurity_AWS"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "cloudsecurity_awseventbridgesqs"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/CloudSecurity_AWSEventBridgeSQS"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "cloudsecurity_crowdstrike"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/CloudSecurity_CrowdStrike"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "cloudsecurity_crowdstrike_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/CloudSecurity_CrowdStrike_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "cloudsecurity_defender"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/CloudSecurity_Defender"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "cloudsecurity_paloalto"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/CloudSecurity_PaloAlto"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "custom_synqly"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Custom_Synqly"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_crowdstrike"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_CrowdStrike"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_crowdstrike_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_CrowdStrike_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_defender"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_Defender"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_eset_connect"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_EsetConnect"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_malwarebytes"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_Malwarebytes"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_sentinelone"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_SentinelOne"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_sophos"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_Sophos"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "edr_tanium"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Edr_Tanium"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "identity_entra_id"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Identity_EntraId"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "identity_google"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Identity_Google"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "identity_okta"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Identity_Okta"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "identity_pingone"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Identity_PingOne"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "identity_workday"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Identity_Workday"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "incidentresponse_incidentio"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/IncidentResponse_IncidentIO"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "incidentresponse_pagerduty"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/IncidentResponse_PagerDuty"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "notifications_jira"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Notifications_Jira"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "notifications_mock_notifications"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Notifications_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "notifications_slack"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Notifications_Slack"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "notifications_slack_webhook"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Notifications_Slack_Webhook"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "notifications_teams"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Notifications_Teams"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_crowdstrike"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_Crowdstrike"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_elasticsearch"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_Elasticsearch"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_google_chronicle"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_GoogleChronicle"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_google_security_operations"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_GoogleSecurityOperations"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_mock_siem"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_opensearch"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_OpenSearch"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_panther"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_Panther"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_q_radar"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_QRadar"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_rapid7_insightidr"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_Rapid7InsightIDR"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_sentinel"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_Sentinel"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_splunk"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_Splunk"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "siem_sumo_logic"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/SIEM_SumoLogic"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_aws_s3"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_AwsS3"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_aws_security_lake"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_AwsSecurityLake"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_aws_sqs"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_AwsSQS"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_azure_blob"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_AzureBlob"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_azure_monitor_logs"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_AzureMonitorLogs"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_crowdstrike_hec"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_CrowdstrikeHEC"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_elasticsearch"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_Elasticsearch"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_gcs"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_Gcs"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_google_sec_ops"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_GoogleSecOps"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_google_security_operations"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_GoogleSecurityOperations"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_http"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_Http"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_mock_sink"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_opensearch"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_OpenSearch"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_panther"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_Panther"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_q_radar"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_QRadar"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_splunk"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_Splunk"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_sumo_logic"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_SumoLogic"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sink_trimedx"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Sink_Trimedx"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "storage_aws_s3"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Storage_AwsS3"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "storage_azure_blob"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Storage_AzureBlob"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "storage_gcs"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Storage_GCS"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "storage_mock_storage"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Storage_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_autotask"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Autotask"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_freshdesk"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Freshdesk"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_ivanti"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Ivanti"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_ivanti_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Ivanti_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_jira"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Jira"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_jira_service_management"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_JiraServiceManagement"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_mock_ticketing"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_pagerduty"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_PagerDuty"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_pagerduty_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_PagerDutyMock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_servicenow"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_ServiceNow"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_servicenow_sir"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_ServiceNowSIR"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_torq"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Torq"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ticketing_zendesk"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Ticketing_Zendesk"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_amazon_inspector"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_AmazonInspector"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_crowdstrike"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_CrowdStrike"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_crowdstrike_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_CrowdStrike_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_defender"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_Defender"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_nucleus"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_Nucleus"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_qualys_cloud"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_QualysCloud"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_qualys_cloud_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_QualysCloud_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_rapid7_insight_cloud"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_Rapid7InsightCloud"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_rapid7_insight_cloud_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_Rapid7InsightCloud_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_servicenow_vr"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_ServiceNow"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_tanium_cloud"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_TaniumCloud"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_tanium_cloud_mock"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_TaniumCloud_Mock"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_tenable_cloud"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_TenableCloud"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "vulnerabilities_tenable_sc"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/Vulnerabilities_TenableSc"
              }
            ],
            "required": [
              "type"
            ]
          }
        ]
      },
      "ProviderConfigId": {
        "title": "ProviderConfigId",
        "type": "string",
        "enum": [
          "appsec_amazon_inspector",
          "appsec_github",
          "appsec_gitlab",
          "appsec_hcl_appscan_on_cloud",
          "appsec_opentext_application_security",
          "appsec_opentext_core_application_security",
          "appsec_opentext_core_application_security_mock",
          "appsec_snyk",
          "assets_armis_centrix",
          "assets_armis_centrix_mock",
          "assets_axonius",
          "assets_axonius_mock",
          "assets_claroty_xdome",
          "assets_crowdstrike",
          "assets_crowdstrike_mock",
          "assets_defender",
          "assets_ivanti_neurons",
          "assets_ivanti_neurons_mock",
          "assets_nozomi_vantage",
          "assets_nozomi_vantage_mock",
          "assets_qualys_cloud",
          "assets_qualys_cloud_mock",
          "assets_servicenow",
          "assets_servicenow_mock",
          "assets_sevco",
          "assets_sevco_mock",
          "assets_tanium_cloud",
          "assets_tanium_cloud_mock",
          "cloudsecurity_aws",
          "cloudsecurity_awseventbridgesqs",
          "cloudsecurity_crowdstrike",
          "cloudsecurity_crowdstrike_mock",
          "cloudsecurity_defender",
          "cloudsecurity_paloalto",
          "custom_synqly",
          "edr_crowdstrike",
          "edr_crowdstrike_mock",
          "edr_defender",
          "edr_eset_connect",
          "edr_malwarebytes",
          "edr_sentinelone",
          "edr_sophos",
          "edr_tanium",
          "identity_entra_id",
          "identity_google",
          "identity_okta",
          "identity_pingone",
          "identity_workday",
          "incidentresponse_incidentio",
          "incidentresponse_pagerduty",
          "notifications_jira",
          "notifications_mock_notifications",
          "notifications_slack_webhook",
          "notifications_slack",
          "notifications_teams",
          "siem_crowdstrike",
          "siem_elasticsearch",
          "siem_google_chronicle",
          "siem_google_security_operations",
          "siem_mock_siem",
          "siem_opensearch",
          "siem_panther",
          "siem_q_radar",
          "siem_rapid7_insightidr",
          "siem_sentinel",
          "siem_splunk",
          "siem_sumo_logic",
          "sink_aws_s3",
          "sink_aws_security_lake",
          "sink_aws_sqs",
          "sink_azure_blob",
          "sink_azure_monitor_logs",
          "sink_crowdstrike_hec",
          "sink_elasticsearch",
          "sink_gcs",
          "sink_google_sec_ops",
          "sink_google_security_operations",
          "sink_http",
          "sink_mock_sink",
          "sink_opensearch",
          "sink_panther",
          "sink_q_radar",
          "sink_splunk",
          "sink_sumo_logic",
          "sink_trimedx",
          "storage_aws_s3",
          "storage_azure_blob",
          "storage_gcs",
          "storage_mock_storage",
          "ticketing_autotask",
          "ticketing_freshdesk",
          "ticketing_ivanti",
          "ticketing_ivanti_mock",
          "ticketing_jira",
          "ticketing_jira_service_management",
          "ticketing_mock_ticketing",
          "ticketing_pagerduty",
          "ticketing_pagerduty_mock",
          "ticketing_servicenow",
          "ticketing_servicenow_sir",
          "ticketing_torq",
          "ticketing_zendesk",
          "vulnerabilities_amazon_inspector",
          "vulnerabilities_crowdstrike",
          "vulnerabilities_crowdstrike_mock",
          "vulnerabilities_defender",
          "vulnerabilities_nucleus",
          "vulnerabilities_qualys_cloud",
          "vulnerabilities_qualys_cloud_mock",
          "vulnerabilities_rapid7_insight_cloud",
          "vulnerabilities_rapid7_insight_cloud_mock",
          "vulnerabilities_servicenow_vr",
          "vulnerabilities_tanium_cloud",
          "vulnerabilities_tanium_cloud_mock",
          "vulnerabilities_tenable_cloud",
          "vulnerabilities_tenable_sc",
          "*"
        ],
        "description": "List of supported providers."
      },
      "QRadarCredential": {
        "title": "QRadar Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Authorized service token for QRadar Operations. [Guide to generate a token](https://www.ibm.com/docs/en/qradar-common?topic=app-creating-authorized-service-token-qradar-operations)."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Authorized Service Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "QRadarCredential"
            }
          },
          {
            "description": "Reference to existing Authorized Service Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Authorized Service Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "QRadarCredential"
            }
          }
        ]
      },
      "QualysCloudCredential": {
        "title": "Qualys Cloud Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Username and password used to authenticate with Qualys Cloud."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "QualysCloudCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "QualysCloudCredential"
            }
          }
        ]
      },
      "Rapid7InsightCloudCredential": {
        "title": "Rapid7Insight Cloud Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "Rapid7InsightCloudCredential"
            }
          },
          {
            "description": "Reference to existing API Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "Rapid7InsightCloudCredential"
            }
          }
        ]
      },
      "SIEM_Crowdstrike": {
        "title": "siem | CrowdStrike Next-Gen SIEM",
        "type": "object",
        "description": "Configuration for CrowdStrike Falcon® Next-Gen SIEM.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/crowdstrike-siem-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrowdStrikeCredential",
                "description": "The credential to use for the CrowdStrike Falcon NextGen SIEM tenant."
              },
              {
                "title": "Credential",
                "description": "The credential to use for the CrowdStrike Falcon NextGen SIEM tenant."
              }
            ]
          },
          "hec_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrowdstrikeHECCredential",
                "nullable": true,
                "description": "Token credential to use for connecting to the CrowdStrike HEC service. If not provided, sending events to CrowdStrike is disabled."
              },
              {
                "title": "HEC Credential",
                "description": "Token credential to use for connecting to the CrowdStrike HEC service. If not provided, sending events to CrowdStrike is disabled.\n"
              }
            ]
          },
          "hec_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The generated CrowdStrike HEC URL provided with your token."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://<some-guid>.ingest.us-2.crowdstrike.com/services/collector",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "HEC URL",
                "description": "The generated CrowdStrike HEC URL provided with your token."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the CrowdStrike Falcon® Next-Gen SIEM API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.crowdstrike.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the CrowdStrike Falcon® Next-Gen SIEM API."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "SIEM_Elasticsearch": {
        "title": "siem | Elastic SIEM",
        "type": "object",
        "description": "Configuration for Elastic SIEM.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/elastic-setup)",
        "properties": {
          "auth_options": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ElasticsearchAuthOptions",
                "nullable": true
              },
              {
                "title": "Authentication Options"
              }
            ]
          },
          "create_index": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The index or data stream to use when writing events. Defaults to the `index` setting if not set."
              },
              {
                "title": "Create Index",
                "description": "The index or data stream to use when writing events. Defaults to the `index` setting if not set."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ElasticsearchCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "index": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The index, data stream, or index alias to read events from."
              },
              {
                "default": "_all"
              },
              {
                "title": "Read Index",
                "description": "The index, data stream, or index alias to read events from."
              }
            ]
          },
          "kibana_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Kibana API."
              },
              {
                "example": "https://tenant.elastic.com"
              },
              {
                "title": "Kibana API base URL",
                "description": "Base URL for the Kibana API.\n"
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the Elasticsearch TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the Elasticsearch TLS certificate."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Elasticsearch API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.elastic.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Elasticsearch API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "SIEM_GoogleChronicle": {
        "title": "siem | Google Security Operations (Chronicle Compatibility)",
        "type": "object",
        "description": "Configuration for Google Security Operations (formerly Google Chronicle) as a SIEM Provider connecting via the older Backstory and Malachite APIs.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/google-chronicle-setup)",
        "properties": {
          "customer_id": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The customer ID reported when writing events. This field is required if writing events."
              },
              {
                "title": "Customer Id",
                "description": "The customer ID reported when writing events. This field is required if writing events."
              }
            ]
          },
          "ingestion_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleChronicleCredential",
                "nullable": true,
                "description": "Credentials used for writing events. If not specified then writing events is disabled."
              },
              {
                "title": "Ingestion Credential",
                "description": "Credentials used for writing events. If not specified then writing events is disabled."
              }
            ]
          },
          "ingestion_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Google SecOps Ingestion API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://malachiteingestion-pa.googleapis.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Ingestion API base URL",
                "description": "Base URL for the Google SecOps Ingestion API."
              }
            ]
          },
          "search_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleChronicleCredential",
                "description": "Credentials used for querying and reading events."
              },
              {
                "title": "Search Credential",
                "description": "Credentials used for querying and reading events."
              }
            ]
          },
          "search_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Google SecOps Search API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://backstory.googleapis.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Search API base URL",
                "description": "Base URL for the Google SecOps Search API."
              }
            ]
          }
        },
        "required": [
          "search_credential"
        ]
      },
      "SIEM_GoogleSecurityOperations": {
        "title": "siem | Google Security Operations",
        "type": "object",
        "description": "Configuration for Google Security Operations (formerly Google Chronicle) as a SIEM Provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/google-security-operations-siem-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleServiceAccountCredential",
                "description": "Credentials used for accessing the Google SecOps instance."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the Google SecOps instance."
              }
            ]
          },
          "customer_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The customer ID of the Google SecOps instance."
              },
              {
                "title": "Customer Id",
                "description": "The customer ID of the Google SecOps instance."
              }
            ]
          },
          "project_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The project ID of the Google SecOps instance."
              },
              {
                "title": "Project Id",
                "description": "The project ID of the Google SecOps instance."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The region of the Google SecOps instance. Usually `us` or `eu`."
              },
              {
                "default": "us"
              },
              {
                "title": "Region",
                "description": "The region of the Google SecOps instance. Usually `us` or `eu`."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The base URL for the Google SecOps API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://{region}-chronicle.googleapis.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "The base URL for the Google SecOps API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "customer_id",
          "project_id"
        ]
      },
      "SIEM_Mock": {
        "title": "siem | Test Provider",
        "type": "object",
        "description": "Configuration for the Synqly mock in-memory SIEM Provider. This provider is for testing purposes only and does not retain events pushed to it.",
        "properties": {
          "index": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Name of the index where events are stored."
              },
              {
                "title": "Index",
                "description": "Name of the index where events are stored."
              }
            ]
          }
        }
      },
      "SIEM_OpenSearch": {
        "title": "siem | OpenSearch",
        "type": "object",
        "description": "Configuration for OpenSearch search and analytics engine. Supports both managed and self-hosted OpenSearch deployments",
        "properties": {
          "create_index": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The index or data stream to use when writing events. Defaults to the 'index' setting if not set."
              },
              {
                "title": "Write Index",
                "description": "The index or data stream to use when writing events. Defaults to the 'index' setting if not set.\n"
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OpenSearchCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "index": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The index, data stream, or index alias to read events from."
              },
              {
                "default": "_all"
              },
              {
                "title": "Read Index",
                "description": "The index, data stream, or index alias to read events from.\n"
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the OpenSearch TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the OpenSearch TLS certificate."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the OpenSearch API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.elastic.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the OpenSearch API.\n"
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "SIEM_Panther": {
        "title": "siem | Panther SIEM",
        "type": "object",
        "description": "Configuration for Panther SIEM.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/panther-siem-setup)",
        "properties": {
          "api_config": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ApiConfig",
                "description": "Configuration required to connect to Panther SIEM APIs."
              },
              {
                "title": "API Configuration",
                "description": "Configuration required to connect to Panther SIEM APIs."
              }
            ]
          },
          "http_ingest": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpIngest",
                "nullable": true,
                "description": "Configuration for event ingestion. Only necessary when writing events to Panther."
              },
              {
                "title": "HTTP Ingest",
                "description": "Configuration for event ingestion. Only necessary when writing events to Panther."
              }
            ]
          }
        },
        "required": [
          "api_config"
        ]
      },
      "SIEM_QRadar": {
        "title": "siem | IBM QRadar SIEM",
        "type": "object",
        "description": "Configuration for IBM QRadar SIEM.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/qradar-setup)",
        "properties": {
          "collection_port": {
            "allOf": [
              {
                "type": "integer",
                "description": "Port used by QRadar to accept incoming HTTP Receiver events."
              },
              {
                "title": "Collection Port",
                "description": "Port used by QRadar to accept incoming HTTP Receiver events."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/QRadarCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the QRadar TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the QRadar TLS certificate."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the QRadar API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://qradar.westus2.cloudapp.azure.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the QRadar API."
              }
            ]
          }
        },
        "required": [
          "collection_port",
          "credential",
          "url"
        ]
      },
      "SIEM_Rapid7InsightIDR": {
        "title": "siem | Rapid7 InsightIDR",
        "type": "object",
        "description": "Configuration for Rapid7 InsightIDR.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/rapid7-idr-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Rapid7InsightCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Rapid7 API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://us2.api.insight.rapid7.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Rapid7 API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "SIEM_Sentinel": {
        "title": "siem | Microsoft Sentinel",
        "type": "object",
        "description": "Configuration for Microsoft Sentinel SIEM Product.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/microsoft-sentinel-siem-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SentinelCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "default_tables": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true,
                "description": "The default tables to use for queries. Supply this value if you would like to a subset of the default tables or non-ASIM data tables with Sentinel/Log Analytics queries.\nIf more than one table is specified, a union operator will join them to query all of the tables at once. Supply a single value with `*` if you would like to query all tables without the normalizing ASIM transformations.\n**Note** that a single `*` entry will map to a `union *` query. Relying heavily on these queries is generally discouraged by Sentinel because they are slower and more resource intensive."
              },
              {
                "default": [
                  "_Im_AuditEvent",
                  "_Im_Authentication",
                  "_Im_DhcpEvent",
                  "_Im_Dns",
                  "_Im_DnsBuiltIn",
                  "_Im_FileEvent",
                  "_Im_NetworkSession",
                  "_Im_Process_EmptyV01",
                  "_Im_ProcessCreate",
                  "_Im_ProcessEvent",
                  "_Im_ProcessTerminate",
                  "_Im_RegistryEvent",
                  "_Im_UserManagement",
                  "_Im_WebSession"
                ]
              },
              {
                "title": "Default Tables",
                "description": "The default tables to use for queries. Supply this value if you would like to a subset of the default tables or non-ASIM data tables with Sentinel/Log Analytics queries.\nIf more than one table is specified, a union operator will join them to query all of the tables at once. Supply a single value with `*` if you would like to query all tables without the normalizing ASIM transformations.\n**Note** that a single `*` entry will map to a `union *` query. Relying heavily on these queries is generally discouraged by Sentinel because they are slower and more resource intensive."
              }
            ]
          },
          "ingest_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Either the logs ingestion API url for you Data Collection Rule or your Data Collection Endpoint URL. This value must be supplied to ingest data into Microsoft Sentinel. This should look something like https://mydcr-xxx-westus2.logs.z1.ingest.monitor.azure.com"
              },
              {
                "default": "https://monitor.azure.com"
              },
              {
                "title": "Ingest URL",
                "description": "Either the logs ingestion API url for you Data Collection Rule or your Data Collection Endpoint URL. This value must be supplied to ingest data into Microsoft Sentinel. This should look something like https://mydcr-xxx-westus2.logs.z1.ingest.monitor.azure.com"
              }
            ]
          },
          "logs_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Microsoft Azure Monitor Logs API. Should only be supplied if using an alternate Microsoft cloud, such as GovCloud."
              },
              {
                "title": "Base Logs URL",
                "description": "Base URL for the Microsoft Azure Monitor Logs API. Should only be supplied if using an alternate Microsoft cloud, such as GovCloud."
              }
            ]
          },
          "management_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Microsoft Azure Management API. Should only be supplied if using an alternate Microsoft cloud, such as GovCloud."
              },
              {
                "default": "https://management.azure.com"
              },
              {
                "title": "Base Management URL",
                "description": "Base URL for the Microsoft Azure Management API. Should only be supplied if using an alternate Microsoft cloud, such as GovCloud."
              }
            ]
          },
          "resource_group": {
            "allOf": [
              {
                "type": "string",
                "description": "Azure resource group name that contains the Microsoft Sentinel workspace."
              },
              {
                "title": "Resource Group",
                "description": "Azure resource group name that contains the Microsoft Sentinel workspace."
              }
            ]
          },
          "rule_id": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Immutable ID of the Data Collection Rule. This value must be supplied to ingest data into Microsoft Sentinel."
              },
              {
                "title": "Data Collection Rule ID",
                "description": "Immutable ID of the Data Collection Rule. This value must be supplied to ingest data into Microsoft Sentinel."
              }
            ]
          },
          "stream_name": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Name of the Data Collection Rule stream. This value must be supplied to ingest data into Microsoft Sentinel."
              },
              {
                "title": "Data Collection Rule stream",
                "description": "Name of the Data Collection Rule stream. This value must be supplied to ingest data into Microsoft Sentinel."
              }
            ]
          },
          "subscription_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Azure subscription ID that contains the Microsoft Sentinel workspace."
              },
              {
                "title": "Subscription ID",
                "description": "Azure subscription ID that contains the Microsoft Sentinel workspace."
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Azure Active Directory tenant ID that contains the Microsoft Sentinel workspace."
              },
              {
                "title": "Tenant ID",
                "description": "Azure Active Directory tenant ID that contains the Microsoft Sentinel workspace."
              }
            ]
          },
          "workspace_id": {
            "allOf": [
              {
                "type": "string",
                "description": "ID of the Microsoft Sentinel Log Analytics workspace."
              },
              {
                "title": "Workspace ID",
                "description": "ID of the Microsoft Sentinel Log Analytics workspace."
              }
            ]
          },
          "workspace_name": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the Microsoft Sentinel Log Analytics workspace."
              },
              {
                "title": "Workspace Name",
                "description": "Name of the Microsoft Sentinel Log Analytics workspace."
              }
            ]
          }
        },
        "required": [
          "credential",
          "resource_group",
          "subscription_id",
          "tenant_id",
          "workspace_id",
          "workspace_name"
        ]
      },
      "SIEM_Splunk": {
        "title": "siem | Splunk Enterprise Security",
        "type": "object",
        "description": "Configuration for Splunk Enterprise Security.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/splunk-setup)",
        "properties": {
          "hec_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SplunkHECToken",
                "nullable": true,
                "description": "Credential to use when connecting to the Splunk HEC service. If not provided, sending events to Splunk is disabled."
              },
              {
                "title": "HEC Token",
                "description": "Credential to use when connecting to the Splunk HEC service. If not provided, sending events to Splunk is disabled."
              }
            ]
          },
          "hec_url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "URL for the Splunk HEC endpoint. Must include the full path to the HEC endpoint."
              },
              {
                "example": "https://tenant.cloud.splunk.com:8088/services_collector_event"
              },
              {
                "title": "HEC URL",
                "description": "URL for the Splunk HEC endpoint. Must include the full path to the HEC endpoint."
              }
            ]
          },
          "index": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Splunk index to send events to. If not provided, will use the default index for the Splunk collector."
              },
              {
                "title": "Index",
                "description": "Splunk index to send events to. If not provided, will use the default index for the Splunk collector."
              }
            ]
          },
          "search_service_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SplunkSearchCredential",
                "description": "Credential used when authenticating with the Splunk Search Service."
              },
              {
                "title": "Search Service Token",
                "description": "Credential used when authenticating with the Splunk Search Service."
              }
            ]
          },
          "search_service_url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL used when connecting to the Splunk Search Service."
              },
              {
                "example": "https://splunk-service.com/services/collector/event"
              },
              {
                "title": "Search Service URL",
                "description": "URL used when connecting to the Splunk Search Service."
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the Splunk TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the Splunk TLS certificate."
              }
            ]
          },
          "source": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Splunk source to send events to. If not provided the default source for the Splunk collector is used."
              },
              {
                "title": "Source",
                "description": "Splunk source to send events to. If not provided the default source for the Splunk collector is used."
              }
            ]
          },
          "source_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Splunk source type to send events to. If not provided the default source type for the Splunk collector is used."
              },
              {
                "title": "Source Type",
                "description": "Splunk source type to send events to. If not provided the default source type for the Splunk collector is used."
              }
            ]
          }
        },
        "required": [
          "search_service_credential",
          "search_service_url"
        ]
      },
      "SIEM_SumoLogic": {
        "title": "siem | Sumo Logic Cloud SIEM",
        "type": "object",
        "description": "Configuration for Sumo Logic Cloud SIEM.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/sumo-logic-setup)",
        "properties": {
          "auto_parse_logs": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "Automatically parse logs as JSON when running log queries."
              },
              {
                "default": true
              },
              {
                "title": "Auto Parse Logs",
                "description": "Automatically parse logs as JSON when running log queries."
              }
            ]
          },
          "collection_url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SumoLogicCollectionUrl",
                "nullable": true,
                "description": "Secure Sumo Logic Collection URL for writing events. If not provided, sending events to Sumo Logic is disabled."
              },
              {
                "title": "Collection URL",
                "description": "Secure Sumo Logic Collection URL for writing events. If not provided, sending events to Sumo Logic is disabled."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SumoLogicCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "siem_logs_only": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "Only query for logs that have been processed into the Sumo Logic Cloud SIEM app."
              },
              {
                "default": false
              },
              {
                "title": "SIEM Logs Only",
                "description": "Only query for logs that have been processed into the Sumo Logic Cloud SIEM app."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Sumo Logic API.\n[Sumo Logic endpoints by deployment and firewall security](https://help.sumologic.com/docs/api/getting-started/#sumo-logic-endpoints-by-deployment-and-firewall-security)."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Sumo Logic API.\n[Sumo Logic endpoints by deployment and firewall security](https://help.sumologic.com/docs/api/getting-started/#sumo-logic-endpoints-by-deployment-and-firewall-security)."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "SentinelCredential": {
        "title": "Sentinel Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Client credentials for authenticating with Microsoft Sentinel.\nThe application registration must have appropriate permissions to read\nand write to Microsoft Sentinel. Required permissions:\n\n- `Microsoft.OperationalInsights/workspaces/read`\n- `Microsoft.OperationalInsights/workspaces/write`\n- `Microsoft.SecurityInsights/dataConnectors/*`\n"
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "SentinelCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "SentinelCredential"
            }
          }
        ]
      },
      "SentinelOneCredential": {
        "title": "Sentinel One Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "SentinelOneCredential"
            }
          },
          {
            "description": "Reference to existing API Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "SentinelOneCredential"
            }
          }
        ]
      },
      "SentinelOneEdrEventsCredential": {
        "title": "Sentinel One Edr Events Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "SentinelOneEdrEventsCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "SentinelOneEdrEventsCredential"
            }
          }
        ]
      },
      "ServiceNowCredential": {
        "title": "Service Now Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Username and secret used to authenticate with ServiceNow. The password can be a [generated token](https://docs.servicenow.com/bundle/vancouver-platform-administration/page/administer/users-and-groups/task/t_CreateAUser.html). The token receives the same permissions as the user that generated it, so they must have access to the necessary projects."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "ServiceNowCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "ServiceNowCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Token used to authenticate with ServiceNow. This token will be used with the authentication header `x-sn-apikey`. To use token authentication, the version of ServiceNow must be `Washington D.C.` or later."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "ServiceNowCredential"
            }
          },
          {
            "description": "Reference to existing Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "ServiceNowCredential"
            }
          }
        ]
      },
      "SevcoCredential": {
        "title": "Sevco Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "This credential must be an API Secret Key. Generate this key in the UI console. For more details, see the [Creating an API Key](https://docs.sev.co/docs/using-the-api#creating-an-api-key)."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Sevco API Secret Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "SevcoCredential"
            }
          },
          {
            "description": "Reference to existing Sevco API Secret Key.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Sevco API Secret Key",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "SevcoCredential"
            }
          }
        ]
      },
      "Sink_AwsS3": {
        "title": "sink | Amazon S3",
        "type": "object",
        "description": "Configuration for Amazon S3 as a Sink provider. Events are written directly to an AWS S3 bucket in compressed JSON format.",
        "properties": {
          "bucket": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the Amazon S3 bucket"
              },
              {
                "title": "Bucket",
                "description": "Name of the Amazon S3 bucket"
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with write access to the configured S3 bucket."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with write access to the configured S3 bucket."
              }
            ]
          },
          "path": {
            "allOf": [
              {
                "type": "string",
                "description": "Files will be written under this path."
              },
              {
                "title": "Path",
                "description": "Files will be written under this path."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsRegion",
                "description": "AWS Region where the S3 bucket is located."
              },
              {
                "title": "AWS Region",
                "description": "AWS Region where the S3 bucket is located."
              }
            ]
          }
        },
        "required": [
          "bucket",
          "credential",
          "path",
          "region"
        ]
      },
      "Sink_AwsSQS": {
        "title": "sink | Amazon SQS",
        "type": "object",
        "description": "Configuration for Amazon Simple Queue Service (SQS).\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/aws-sqs-sink-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with write access to the configured SQS queue."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with write access to the configured SQS queue."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Overrides the default AWS region. If not present, the region will be inferred from the URL."
              },
              {
                "title": "Region",
                "description": "Overrides the default AWS region. If not present, the region will be inferred from the URL."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL of the SQS queue where events are sent."
              },
              {
                "pattern": "https://sqs..+?.amazonaws.com_.+?/.+?",
                "x-validation-message": {
                  "patternMismatch": "Must match the format `https://sqs.{region}.amazonaws.com_{account_id}/{queue_name}`."
                }
              },
              {
                "title": "Queue URL",
                "description": "URL of the SQS queue where events are sent."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Sink_AwsSecurityLake": {
        "title": "sink | Amazon Security Lake",
        "type": "object",
        "description": "Configuration for Amazon Security Lake as a Sink provider. Events are written directly to an AWS S3 bucket in Apache Parquet format.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/amazon-security-lake-sink-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with write access to the configured S3 bucket."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with write access to the configured S3 bucket."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Override the default AWS region for this integration. If not present, the region will be inferred from the URL."
              },
              {
                "title": "Region",
                "description": "Override the default AWS region for this integration. If not present, the region will be inferred from the URL."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL of the S3 bucket where the Amazon Security Lake events are stored."
              },
              {
                "format": "uri"
              },
              {
                "title": "URL",
                "description": "URL of the S3 bucket where the Amazon Security Lake events are stored."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Sink_AzureBlob": {
        "title": "sink | Microsoft Azure Blob Storage",
        "type": "object",
        "description": "Configuration for Azure Blob Storage as a Sink provider. Events are written directly to an Azure Blob Storage container in compressed JSON format.",
        "properties": {
          "bucket": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the Azure Blob Storage container"
              },
              {
                "title": "Container",
                "description": "Name of the Azure Blob Storage container"
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AzureBlobCredential",
                "description": "Azure token with write access to the configured blob container."
              },
              {
                "title": "Credential",
                "description": "Azure token with write access to the configured blob container."
              }
            ]
          },
          "path": {
            "allOf": [
              {
                "type": "string",
                "description": "Files will be written under this path."
              },
              {
                "title": "Path",
                "description": "Files will be written under this path."
              }
            ]
          }
        },
        "required": [
          "bucket",
          "credential",
          "path"
        ]
      },
      "Sink_AzureMonitorLogs": {
        "title": "sink | Microsoft Azure Monitor Logs",
        "type": "object",
        "description": "Configuration for Azure Monitor Logs as a Sink Provider. Azure Monitor Logs is a feature of Azure Monitor that collects and organizes log and performance data from monitored resources.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/azure-monitor-logs)",
        "properties": {
          "client_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Azure Client (Application) ID."
              },
              {
                "title": "Client ID",
                "description": "Azure Client (Application) ID."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AzureMonitorLogsCredential",
                "description": "Credential with access to the configured data collection endpoint."
              },
              {
                "title": "Credential",
                "description": "Credential with access to the configured data collection endpoint."
              }
            ]
          },
          "rule_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Data collection rule immutable ID."
              },
              {
                "title": "Rule ID",
                "description": "Data collection rule immutable ID."
              }
            ]
          },
          "stream_name": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the data collection rule stream."
              },
              {
                "title": "Stream Name",
                "description": "Name of the data collection rule stream."
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Azure Directory (tenant) ID."
              },
              {
                "title": "Tenant ID",
                "description": "Azure Directory (tenant) ID."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL of the Azure data collection endpoint."
              },
              {
                "title": "Collection URL",
                "description": "URL of the Azure data collection endpoint."
              }
            ]
          }
        },
        "required": [
          "client_id",
          "credential",
          "rule_id",
          "stream_name",
          "tenant_id",
          "url"
        ]
      },
      "Sink_CrowdstrikeHEC": {
        "title": "sink | CrowdStrike Next-Gen SIEM (HEC)",
        "type": "object",
        "description": "Configuration for CrowdStrike Falcon® Next-Gen SIEM (HEC).\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/crowdstrike-sink-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrowdstrikeHECCredential"
              },
              {
                "title": "API Key"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "HTTPS URL for the CrowdStrike HTTP Event Collector (HEC) API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://<some-guid>.ingest.us-2.crowdstrike.com/services/collector",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "HEC URL",
                "description": "HTTPS URL for the CrowdStrike HTTP Event Collector (HEC) API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Sink_Elasticsearch": {
        "title": "sink | Elasticsearch",
        "type": "object",
        "description": "Configuration for Elasticsearch.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/elastic-setup)",
        "properties": {
          "auth_options": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ElasticsearchAuthOptions",
                "nullable": true
              },
              {
                "title": "Authentication Options"
              }
            ]
          },
          "create_index": {
            "allOf": [
              {
                "type": "string",
                "description": "The index or data stream to use when writing events."
              },
              {
                "title": "Create Index",
                "description": "The index or data stream to use when writing events."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ElasticsearchCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the Elasticsearch TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the Elasticsearch TLS certificate."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Elasticsearch API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.elastic.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Elasticsearch API."
              }
            ]
          }
        },
        "required": [
          "create_index",
          "credential",
          "url"
        ]
      },
      "Sink_Gcs": {
        "title": "sink | Google Cloud Storage",
        "type": "object",
        "description": "Configuration for Google Cloud Storage as a Sink provider. Events are written directly to a GCS bucket in compressed JSON format.",
        "properties": {
          "bucket": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the GCS bucket"
              },
              {
                "title": "Bucket",
                "description": "Name of the GCS bucket"
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GCSJsonCredential",
                "description": "Google Cloud Service Account JSON key with write access to the configured GCS bucket"
              },
              {
                "title": "Credential",
                "description": "Google Cloud Service Account JSON key with write access to the configured GCS bucket"
              }
            ]
          },
          "path": {
            "allOf": [
              {
                "type": "string",
                "description": "Files will be written under this path."
              },
              {
                "title": "Path",
                "description": "Files will be written under this path."
              }
            ]
          }
        },
        "required": [
          "bucket",
          "credential",
          "path"
        ]
      },
      "Sink_GoogleSecOps": {
        "title": "sink | Google Security Operations",
        "type": "object",
        "description": "Configuration for Google Security Operations (formerly Google Chronicle) as a Sink Provider connecting via the older Malachite API.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/google-chronicle-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleChronicleCredential",
                "description": "Credentials used when writing events."
              },
              {
                "title": "Credential",
                "description": "Credentials used when writing events."
              }
            ]
          },
          "customer_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The customer ID reported when writing events."
              },
              {
                "title": "Customer Id",
                "description": "The customer ID reported when writing events."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Google SecOps Ingestion API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://malachiteingestion-pa.googleapis.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Ingestion API base URL",
                "description": "Base URL for the Google SecOps Ingestion API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "customer_id"
        ]
      },
      "Sink_GoogleSecurityOperations": {
        "title": "sink | Google Security Operations",
        "type": "object",
        "description": "Configuration for Google Security Operations (formerly Google Chronicle) as a Sink Provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/google-security-operations-sink-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleServiceAccountCredential",
                "description": "Credentials used for accessing the Google SecOps instance."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the Google SecOps instance."
              }
            ]
          },
          "customer_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The customer ID of the Google SecOps instance"
              },
              {
                "title": "Customer Id",
                "description": "The customer ID of the Google SecOps instance"
              }
            ]
          },
          "project_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The project ID of the Google SecOps instance."
              },
              {
                "title": "Project Id",
                "description": "The project ID of the Google SecOps instance."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The region of the Google SecOps instance. Usually `us` or `eu`."
              },
              {
                "default": "us"
              },
              {
                "title": "Region",
                "description": "The region of the Google SecOps instance. Usually `us` or `eu`."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "The base URL for the Google SecOps API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://{region}-chronicle.googleapis.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "The base URL for the Google SecOps API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "customer_id",
          "project_id"
        ]
      },
      "Sink_Http": {
        "title": "sink | Generic HTTP Receiver",
        "type": "object",
        "description": "Generic Sink provider for sending events to any HTTP endpoint. Ideal for integrating with log aggregators, SIEM platforms, custom webhooks, data lakes, and any HTTP-based event ingestion system.",
        "properties": {
          "accepted_response_codes": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "type": "integer"
                },
                "nullable": true,
                "description": "HTTP status codes that indicate successful event delivery. Defaults to standard success codes. Configure if receiving endpoint uses different response codes (e.g. `207 Multi-Status`)."
              },
              {
                "default": [
                  200,
                  201,
                  202,
                  204
                ]
              },
              {
                "title": "Accepted Response Codes",
                "description": "HTTP status codes that indicate successful event delivery. Defaults to standard success codes. Configure if receiving endpoint uses different response codes (e.g. `207 Multi-Status`)."
              }
            ]
          },
          "authorization": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpReceiverAuthConfig",
                "nullable": true,
                "description": "Configuration for authorizing requests with the receiving endpoint. Must be specified if the endpoint requires it. Can be combined with **Payload Signing** for defense-in-depth security."
              },
              {
                "title": "Authorization",
                "description": "Configuration for authorizing requests with the receiving endpoint. Must be specified if the endpoint requires it. Can be combined with **Payload Signing** for defense-in-depth security."
              }
            ]
          },
          "http_method": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpReceiverMethod",
                "nullable": true,
                "description": "HTTP method to use for sending events."
              },
              {
                "default": "POST"
              },
              {
                "title": "HTTP Method",
                "description": "HTTP method to use for sending events."
              }
            ]
          },
          "request_body_format": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpRequestBodyFormat",
                "nullable": true,
                "description": "Format for serializing events in the HTTP request body. Choose based on receiving endpoint requirements and performance needs.\n\n- `jsonl` - JSON Lines (newline-delimited JSON) where each event is a separate JSON object on its own line. Memory efficient for large batches, supports streaming.\n- `json_array` - Standard JSON array format - events wrapped in `[{...}, {...}]`. Simpler structure, easier debugging and testing."
              },
              {
                "default": "jsonl"
              },
              {
                "title": "Request Body Format",
                "description": "Format for serializing events in the HTTP request body. Choose based on receiving endpoint requirements and performance needs.\n- `jsonl` - JSON Lines (newline-delimited JSON) where each event is a separate JSON object on its own line. Memory efficient for large batches, supports streaming.\n- `json_array` - Standard JSON array format - events wrapped in `[{...}, {...}]`. Simpler structure, easier debugging and testing."
              }
            ]
          },
          "signing_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HttpReceiverSigningCredential",
                "nullable": true,
                "description": "Enables payload signing, allowing the receiving endpoint to verify payload integrity and authenticity."
              },
              {
                "title": "Payload Signing",
                "description": "Enables payload signing, allowing the receiving endpoint to verify payload integrity and authenticity."
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "Disables TLS certification verification.\n**Warning:** this disables security checks and makes connections vulnerable to man-in-the-middle attacks."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "Disables TLS certification verification.\n**Warning:** this disables security checks and makes connections vulnerable to man-in-the-middle attacks."
              }
            ]
          },
          "static_headers": {
            "allOf": [
              {
                "type": "object",
                "additionalProperties": {
                  "type": "string"
                },
                "nullable": true,
                "description": "Additional HTTP headers to include on every request. Use for non-sensitive metadata like source system identifiers, API versioning, or custom routing headers that don't change per request."
              },
              {
                "title": "Static Headers",
                "description": "Additional HTTP headers to include on every request. Use for non-sensitive metadata like source system identifiers, API versioning, or custom routing headers that don't change per request."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Receiving endpoint where events will be sent."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://logs.example.com/api/v1/events",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Target URL",
                "description": "Receiving endpoint where events will be sent."
              }
            ]
          }
        },
        "required": [
          "url"
        ]
      },
      "Sink_Mock": {
        "title": "sink | Test Provider",
        "type": "object",
        "description": "Configuration for the Synqly mock in-memory Sink Provider. This provider is for testing purposes only and does not retain events pushed to it.",
        "properties": {
          "destination": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Name of the destination where events are stored. This field is unused and only used to demonstrate Provider configuration."
              },
              {
                "title": "Destination",
                "description": "Name of the destination where events are stored. This field is unused and only used to demonstrate Provider configuration."
              }
            ]
          }
        }
      },
      "Sink_OpenSearch": {
        "title": "sink | OpenSearch",
        "type": "object",
        "description": "Configuration for OpenSearch search and analytics engine. Supports both managed and self-hosted OpenSearch deployments",
        "properties": {
          "create_index": {
            "allOf": [
              {
                "type": "string",
                "description": "The index or data stream to use when writing events."
              },
              {
                "title": "Write Index",
                "description": "The index or data stream to use when writing events.\n"
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OpenSearchCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the OpenSearch TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the OpenSearch TLS certificate."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the OpenSearch API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.elastic.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the OpenSearch API.\n"
              }
            ]
          }
        },
        "required": [
          "create_index",
          "credential",
          "url"
        ]
      },
      "Sink_Panther": {
        "title": "sink | Panther Sink",
        "type": "object",
        "description": "Configuration for Panther Sink.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/panther-sink-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PantherIngestionCredential",
                "description": "Authenticates calls to your HTTP Ingest log source."
              },
              {
                "title": "Credential",
                "description": "Authenticates calls to your HTTP Ingest log source."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "The URL for your HTTP Log Source."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://logs.instance-id.runpanther.net/http/log-source-id",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Ingest URL",
                "description": "The URL for your HTTP Log Source."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Sink_QRadar": {
        "title": "sink | IBM QRadar Sink",
        "type": "object",
        "description": "Configuration for IBM QRadar Sink.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/qradar-sink-setup)",
        "properties": {
          "collection_port": {
            "allOf": [
              {
                "type": "integer",
                "description": "Port used by QRadar to accept incoming HTTP Receiver events."
              },
              {
                "title": "Collection Port",
                "description": "Port used by QRadar to accept incoming HTTP Receiver events."
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the QRadar TLS certificate. This should only be used for testing purposes and is not recommended in production environments."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the QRadar TLS certificate. This should only be used for testing purposes and is not recommended in production environments."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the QRadar API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://qradar.westus2.cloudapp.azure.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the QRadar API."
              }
            ]
          }
        },
        "required": [
          "collection_port",
          "url"
        ]
      },
      "Sink_Splunk": {
        "title": "sink | Splunk Enterprise Security",
        "type": "object",
        "description": "Configuration for Splunk as a Sink provider. Allows sending data to Splunk using an HTTP Event Collector (HEC).\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/splunk-setup)",
        "properties": {
          "hec_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SplunkHECToken",
                "description": "Credential to use when connecting to the Splunk HEC service. If not provided, sending events to Splunk is disabled."
              },
              {
                "title": "HEC Token",
                "description": "Credential to use when connecting to the Splunk HEC service. If not provided, sending events to Splunk is disabled."
              }
            ]
          },
          "hec_url": {
            "allOf": [
              {
                "type": "string",
                "description": "URL for the Splunk HEC endpoint. Must include the full path to the HEC endpoint."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.cloud.splunk.com:8088/services_collector_event",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "HEC URL",
                "description": "URL for the Splunk HEC endpoint. Must include the full path to the HEC endpoint."
              }
            ]
          },
          "index": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Splunk index to send events to. If not provided, will use the default index for the Splunk collector."
              },
              {
                "title": "Index",
                "description": "Splunk index to send events to. If not provided, will use the default index for the Splunk collector."
              }
            ]
          },
          "skip_tls_verify": {
            "allOf": [
              {
                "type": "boolean",
                "nullable": true,
                "description": "When true, skips verification of the Splunk TLS certificate."
              },
              {
                "default": false
              },
              {
                "title": "Skip TLS Verification",
                "description": "When true, skips verification of the Splunk TLS certificate."
              }
            ]
          },
          "source": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Splunk source to send events to. If not provided the default source for the Splunk collector is used."
              },
              {
                "title": "Source",
                "description": "Splunk source to send events to. If not provided the default source for the Splunk collector is used."
              }
            ]
          },
          "source_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Splunk source type to send events to. If not provided the default source type for the Splunk collector is used."
              },
              {
                "title": "Source Type",
                "description": "Splunk source type to send events to. If not provided the default source type for the Splunk collector is used."
              }
            ]
          }
        },
        "required": [
          "hec_credential",
          "hec_url"
        ]
      },
      "Sink_SumoLogic": {
        "title": "sink | Sumo Logic Sink",
        "type": "object",
        "description": "Configuration for Sumo Logic as a Sink provider. Allows sending data to Sumo Logic using a collection URL.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/sumo-logic-sink-setup)",
        "properties": {
          "collection_url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SumoLogicCollectionUrl",
                "description": "Sumo Logic Collection URL for writing events."
              },
              {
                "title": "Collection URL",
                "description": "Sumo Logic Collection URL for writing events."
              }
            ]
          }
        },
        "required": [
          "collection_url"
        ]
      },
      "Sink_Trimedx": {
        "title": "sink | Trimedx",
        "type": "object",
        "description": "Configuration for Trimedx Sink.",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TrimedxCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "customer_id": {
            "allOf": [
              {
                "type": "string",
                "description": "The customer ID for the Trimedx instance."
              },
              {
                "title": "Customer ID",
                "description": "The customer ID for the Trimedx instance."
              }
            ]
          },
          "subscription_key": {
            "allOf": [
              {
                "type": "string",
                "description": "The subscription key for the Trimedx instance."
              },
              {
                "title": "Subscription Key",
                "description": "The subscription key for the Trimedx instance."
              }
            ]
          },
          "username": {
            "allOf": [
              {
                "type": "string"
              },
              {
                "title": "Username"
              }
            ]
          }
        },
        "required": [
          "credential",
          "customer_id",
          "subscription_key",
          "username"
        ]
      },
      "SlackCredential": {
        "title": "Slack Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "Token",
                    "pattern": "^xoxb-.+$",
                    "x-validation-message": {
                      "patternMismatch": "Bot token must start with `xoxb-`."
                    }
                  }
                },
                "description": "Follow [this guide to generate a bot token](https://api.slack.com/concepts/token-types#bot). The token must have access to the configured channel."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Bot Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "SlackCredential"
            }
          },
          {
            "description": "Reference to existing Bot Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Bot Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "SlackCredential"
            }
          }
        ]
      },
      "SlackWebhookCredential": {
        "title": "Slack Webhook Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "secret"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "Secret",
                    "pattern": "^https?:.+$",
                    "format": "uri",
                    "x-validation-message": {
                      "patternMismatch": "Must be a valid HTTP(S) URL."
                    }
                  }
                },
                "description": "Slack Incoming Webhook URL. Use a Slack app with Incoming Webhooks enabled to generate the URL. See [configuration guide on Incoming Webhooks](https://api.slack.com/messaging/webhooks) for more detail."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Incoming Webhook URL",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "SlackWebhookCredential"
            }
          },
          {
            "description": "Reference to existing Incoming Webhook URL.",
            "properties": {
              "type": {
                "enum": [
                  "secret_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `secret`. Must match the `id` of an existing `secret`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Incoming Webhook URL",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "SlackWebhookCredential"
            }
          }
        ]
      },
      "SnykCredential": {
        "title": "Snyk Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "SnykCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "SnykCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Key Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Key Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "SnykCredential"
            }
          },
          {
            "description": "Reference to existing API Key Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Key Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "SnykCredential"
            }
          }
        ]
      },
      "SnykRegion": {
        "title": "SnykRegion",
        "type": "string",
        "enum": [
          "SNYK-US-01",
          "SNYK-US-02",
          "SNYK-EU-01",
          "SNYK-AU-01"
        ]
      },
      "SophosCredential": {
        "title": "Sophos Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "SophosCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "SophosCredential"
            }
          }
        ]
      },
      "SplunkHECToken": {
        "title": "HEC Token",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Token used when connecting to the Splunk HEC Service."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New HEC Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "SplunkHECToken"
            }
          },
          {
            "description": "Reference to existing HEC Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing HEC Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "SplunkHECToken"
            }
          }
        ]
      },
      "SplunkSearchCredential": {
        "title": "Search Service Token",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Token used when connecting to the Splunk Search Service."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Search Service Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "SplunkSearchCredential"
            }
          },
          {
            "description": "Reference to existing Search Service Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Search Service Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "SplunkSearchCredential"
            }
          }
        ]
      },
      "Storage_AwsS3": {
        "title": "storage | Amazon S3",
        "type": "object",
        "description": "Configuration for Amazon S3.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/aws-s3-storage-setup)",
        "properties": {
          "bucket": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the Amazon S3 bucket where files are stored."
              },
              {
                "title": "Bucket",
                "description": "Name of the Amazon S3 bucket where files are stored."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with write access to the configured S3 bucket."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with write access to the configured S3 bucket."
              }
            ]
          },
          "endpoint": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Endpoint used for connecting to Amazon S3 the external service. If not provided, the default Amazon S3 endpoint will be used."
              },
              {
                "title": "Endpoint",
                "description": "Endpoint used for connecting to Amazon S3 the external service. If not provided, the default Amazon S3 endpoint will be used."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "type": "string",
                "description": "AWS region where the Amazon S3 bucket is located."
              },
              {
                "title": "Region",
                "description": "AWS region where the Amazon S3 bucket is located."
              }
            ]
          }
        },
        "required": [
          "bucket",
          "credential",
          "region"
        ]
      },
      "Storage_AzureBlob": {
        "title": "storage | Azure Blob Storage",
        "type": "object",
        "description": "Configuration for Azure Blob Storage as a Storage Provider",
        "properties": {
          "bucket": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the blob container where files are stored."
              },
              {
                "title": "Bucket",
                "description": "Name of the blob container where files are stored."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AzureBlobCredential"
              },
              {
                "title": "Credential"
              }
            ]
          }
        },
        "required": [
          "bucket",
          "credential"
        ]
      },
      "Storage_GCS": {
        "title": "storage | Google Cloud Storage",
        "type": "object",
        "description": "Configuration for Google Cloud Storage for storing unstructured data\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/google-gcs-storage-setup)",
        "properties": {
          "bucket": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the bucket where files are stored."
              },
              {
                "title": "Bucket",
                "description": "Name of the bucket where files are stored."
              }
            ]
          },
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GCSCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "type": "string",
                "description": "Google Cloud region where the bucket is located."
              },
              {
                "title": "Region",
                "description": "Google Cloud region where the bucket is located."
              }
            ]
          }
        },
        "required": [
          "bucket",
          "credential",
          "region"
        ]
      },
      "Storage_Mock": {
        "title": "storage | Test Provider",
        "type": "object",
        "description": "Configuration for the Synqly mock in-memory storage Provider. This provider is for testing purposes only and does not retain files pushed to it.",
        "properties": {
          "bucket": {
            "allOf": [
              {
                "type": "string",
                "description": "Name of the bucket where files are stored."
              },
              {
                "title": "Bucket",
                "description": "Name of the bucket where files are stored."
              }
            ]
          }
        },
        "required": [
          "bucket"
        ]
      },
      "SumoLogicCollectionUrl": {
        "title": "Sumo Logic Collection Url",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "secret"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "Collection URL",
                    "pattern": "^https?:.+$",
                    "format": "uri",
                    "x-validation-message": {
                      "patternMismatch": "Must be a valid HTTP(S) URL."
                    }
                  }
                },
                "description": "Sumo Logic HTTP collection URL used to write events."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "SumoLogicCollectionUrl"
            }
          },
          {
            "description": "Reference to existing Secret.",
            "properties": {
              "type": {
                "enum": [
                  "secret_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `secret`. Must match the `id` of an existing `secret`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Secret",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "SumoLogicCollectionUrl"
            }
          }
        ]
      },
      "SumoLogicCredential": {
        "title": "Sumo Logic Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "Access Key",
                    "description": "Access key secret."
                  },
                  "username": {
                    "title": "Access ID",
                    "description": "Access key identifier."
                  }
                },
                "description": "Access ID and Access Key used to authenticate with Sumo Logic."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "SumoLogicCredential"
            }
          },
          {
            "description": "Reference to existing Access Keys.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Access Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "SumoLogicCredential"
            }
          }
        ]
      },
      "TaniumCloudCredential": {
        "title": "Tanium Cloud Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new API Token."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "TaniumCloudCredential"
            }
          },
          {
            "description": "Reference to existing API Token.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Token",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "TaniumCloudCredential"
            }
          }
        ]
      },
      "TeamsCredential": {
        "title": "Teams Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "OAuth 2.0 Client Credentials for an Azure App Registration. The application must be configured with permissions to access Microsoft Power Automate with user delegation."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "TeamsCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "TeamsCredential"
            }
          },
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "webhook_url"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/SecretCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Public Webhook URL used to authenticate with Teams."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Webhook URL",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredential",
              "type": "TeamsCredential"
            }
          },
          {
            "description": "Reference to existing Webhook URL.",
            "properties": {
              "type": {
                "enum": [
                  "webhook_url_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `webhook_url`. Must match the `id` of an existing `webhook_url`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Webhook URL",
            "type": "object",
            "x-synqly-credential": {
              "extends": "SecretCredentialId",
              "reference": true,
              "type": "TeamsCredential"
            }
          }
        ]
      },
      "TenableCloudCredential": {
        "title": "Tenable Cloud Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "API Keys",
                    "pattern": "^accessKey=.+?;secretKey=.+?$",
                    "description": "API Keys in the format `accessKey=<key>;secretKey=<secret>`.",
                    "x-validation-message": {
                      "patternMismatch": "Input must match the pattern: `accessKey=<key>;secretKey=<secret>`"
                    }
                  }
                },
                "description": "Configuration when creating new API Keys."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "TenableCloudCredential"
            }
          },
          {
            "description": "Reference to existing API Keys.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "TenableCloudCredential"
            }
          }
        ]
      },
      "TenableScCredential": {
        "title": "Tenable Sc Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "token"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/TokenCredential"
              },
              {
                "type": "object",
                "properties": {
                  "secret": {
                    "title": "API Keys",
                    "pattern": "^accesskey=.+?;\\s*secretkey=.+?;$",
                    "description": "API Keys in the format `accesskey=<key>; secretkey=<secret>;`.",
                    "x-validation-message": {
                      "patternMismatch": "Input must match the pattern: `accesskey=<key>; secretkey=<secret>;`"
                    }
                  }
                },
                "description": "Configuration when creating new API Keys."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New API Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredential",
              "type": "TenableScCredential"
            }
          },
          {
            "description": "Reference to existing API Keys.",
            "properties": {
              "type": {
                "enum": [
                  "token_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `token`. Must match the `id` of an existing `token`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing API Keys",
            "type": "object",
            "x-synqly-credential": {
              "extends": "TokenCredentialId",
              "reference": true,
              "type": "TenableScCredential"
            }
          }
        ]
      },
      "Ticketing_Autotask": {
        "title": "ticketing | Autotask Operations Cloud",
        "type": "object",
        "description": "Configuration for Autotask Operations Cloud.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/autotask-ticketing-setup)",
        "properties": {
          "api_integration_code_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutotaskApiIntegrationCodeCredential"
              },
              {
                "title": "API Tracking ID"
              }
            ]
          },
          "default_issue_type": {
            "allOf": [
              {
                "type": "integer",
                "nullable": true,
                "description": "Default Issue Type (Ticket Category) for the integration. If provided, the issue_type field becomes optional in ticket creation requests. In Autotask, this corresponds to the Ticket Category ID."
              },
              {
                "title": "Default Issue Type",
                "description": "Default Issue Type (Ticket Category) for the integration. If provided, the issue_type field becomes optional in ticket creation requests. In Autotask, this corresponds to the Ticket Category ID."
              }
            ]
          },
          "default_project": {
            "allOf": [
              {
                "type": "integer",
                "nullable": true,
                "description": "Default Project (Company ID) for the integration. If provided, the project field becomes optional in ticket creation requests. In Autotask, this corresponds to the Company ID associated with tickets."
              },
              {
                "title": "Default Project",
                "description": "Default Project (Company ID) for the integration. If provided, the project field becomes optional in ticket creation requests. In Autotask, this corresponds to the Company ID associated with tickets."
              }
            ]
          },
          "secret_credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutotaskSecretCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "user_name": {
            "allOf": [
              {
                "type": "string",
                "description": "User name of the API User created to authenticate with the Autotask API."
              },
              {
                "title": "User Name",
                "description": "User name of the API User created to authenticate with the Autotask API."
              }
            ]
          },
          "zone_path": {
            "allOf": [
              {
                "type": "string",
                "description": "Zone for the Autotask API."
              },
              {
                "title": "API Zone",
                "description": "Zone for the Autotask API."
              }
            ]
          }
        },
        "required": [
          "api_integration_code_credential",
          "secret_credential",
          "user_name",
          "zone_path"
        ]
      },
      "Ticketing_Freshdesk": {
        "title": "ticketing | Freshdesk",
        "type": "object",
        "description": "Configuration for Freshdesk.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/freshdesk-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/FreshdeskCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "default_contact": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default contact email for ticket creation. If provided, the contact field becomes optional in ticket creation requests. If not provided, the contact field is required."
              },
              {
                "title": "Default Contact Email",
                "description": "Default contact email for ticket creation. If provided, the contact field becomes optional in ticket creation requests. If not provided, the contact field is required."
              }
            ]
          },
          "default_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default issue type for ticket creation (e.g., \"Incident\", \"Problem\", \"Question\"). If provided, the type field becomes optional. If not provided, the type field is required."
              },
              {
                "title": "Default Issue Type",
                "description": "Default issue type for ticket creation (e.g., \"Incident\", \"Problem\", \"Question\"). If provided, the type field becomes optional. If not provided, the type field is required."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL to your Freshdesk tenant."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.freshdesk.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL to your Freshdesk tenant."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Ticketing_Ivanti": {
        "title": "ticketing | Ivanti Neurons Ticketing",
        "type": "object",
        "description": "Configuration for the Ivanti Neurons Ticketing Provider\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/ivanti-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/IvantiCredentialTicketing"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Ivanti ITSM API. This should be the base URL for your Ivanti instance, without any path components."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://your-instance.ivanticloud.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Ivanti ITSM API. This should be the base URL for your Ivanti instance,  without any path components."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Ticketing_Ivanti_Mock": {
        "title": "ticketing | [MOCK] Ivanti Neurons Ticketing",
        "type": "object",
        "description": "Configuration for a mocked Ivanti Neurons Ticketing Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TicketingIvantiDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Ticketing_Jira": {
        "title": "ticketing | Atlassian Jira",
        "type": "object",
        "description": "Configuration for Atlassian Jira.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/jira-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "custom_field_mappings": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomFieldMapping"
                },
                "nullable": true,
                "description": "Custom field mappings for this provider."
              },
              {
                "title": "Custom Field Mappings",
                "description": "Custom field mappings for this provider."
              }
            ]
          },
          "default_issue_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              },
              {
                "title": "Default Issue Type",
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              }
            ]
          },
          "default_project": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Project for the integration."
              },
              {
                "title": "Default Project",
                "description": "Default Project for the integration."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Jira API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://tenant.atlassian.net",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Jira API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Ticketing_JiraServiceManagement": {
        "title": "ticketing | Jira Service Management Configuration",
        "type": "object",
        "description": "Configuration for Jira Service Management.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/jira-service-management-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "custom_field_mappings": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomFieldMapping"
                },
                "nullable": true,
                "description": "Custom field mappings for this provider."
              },
              {
                "title": "Custom Field Mappings",
                "description": "Custom field mappings for this provider."
              }
            ]
          },
          "default_issue_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default issue type when creating tickets."
              },
              {
                "title": "Default Issue Type",
                "description": "Default issue type when creating tickets."
              }
            ]
          },
          "default_project": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default project when listing, creating, or editing tickets."
              },
              {
                "title": "Default Project",
                "description": "Default project when listing, creating, or editing tickets."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Jira Service Management API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.atlassian.net",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Jira Service Management API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Ticketing_Mock": {
        "title": "ticketing | Test Provider",
        "type": "object",
        "description": "Configuration for the Synqly mock in-memory ticketing Provider. This provider is for testing purposes only. It retains tickets for a limited time and does not persist them for long-term usage.",
        "properties": {
          "custom_field_mappings": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomFieldMapping"
                },
                "nullable": true,
                "description": "Custom field mappings for this provider."
              },
              {
                "title": "Custom Field Mappings",
                "description": "Custom field mappings for this provider."
              }
            ]
          },
          "name": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Optional name of the mock provider. This value is unused."
              },
              {
                "title": "Name",
                "description": "Optional name of the mock provider. This value is unused."
              }
            ]
          }
        }
      },
      "Ticketing_PagerDuty": {
        "title": "ticketing | PagerDuty Operations Cloud",
        "type": "object",
        "description": "Configuration for PagerDuty Operations Cloud.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/pagerduty-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PagerDutyCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "default_creator": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default email address for the creator field. If provided, the creator field becomes optional for ticket and comment creation. If not provided, the creator field is required."
              },
              {
                "format": "email"
              },
              {
                "title": "Default Creator Email",
                "description": "Default email address for the creator field. If provided, the creator field becomes optional for ticket and comment creation. If not provided, the creator field is required."
              }
            ]
          },
          "default_project": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default PagerDuty service ID for ticket creation. If provided, the project field becomes optional in ticket creation requests. If not provided, the project field is required."
              },
              {
                "title": "Default Service/Project ID",
                "description": "Default PagerDuty service ID for ticket creation. If provided, the project field becomes optional in ticket creation requests. If not provided, the project field is required."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the PagerDuty API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.pagerduty.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the PagerDuty API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Ticketing_PagerDutyMock": {
        "title": "ticketing | [MOCK] PagerDuty Operations Cloud",
        "type": "object",
        "description": "Configuration for [MOCK] PagerDuty Operations Cloud.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/pagerduty-ticketing-setup)",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TicketingPagerdutyDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Ticketing_ServiceNow": {
        "title": "ticketing | ServiceNow ITSM",
        "type": "object",
        "description": "Configuration for ServiceNow IT Service Management (ITSM).\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/servicenow-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ServiceNowCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "custom_field_mappings": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomFieldMapping"
                },
                "nullable": true,
                "description": "Custom field mappings for this provider."
              },
              {
                "title": "Custom Field Mappings",
                "description": "Custom field mappings for this provider."
              }
            ]
          },
          "default_issue_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              },
              {
                "title": "Default Issue Type",
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              }
            ]
          },
          "default_project": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Project for the integration. This maps to the custom table for tickets. This table should be derived from Incident table. Defaults to the incident table if not specified."
              },
              {
                "title": "Default Project",
                "description": "Default Project for the integration. This maps to the custom table for tickets. This table should be derived from Incident table. Defaults to the incident table if not specified."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the ServiceNow API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.service-now.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the ServiceNow API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Ticketing_ServiceNowSIR": {
        "title": "ticketing | ServiceNow SIR",
        "type": "object",
        "description": "Configuration for ServiceNow Security Incident Response (SIR).\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/servicenow-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ServiceNowCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "custom_field_mappings": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomFieldMapping"
                },
                "nullable": true,
                "description": "Custom field mappings for this provider."
              },
              {
                "title": "Custom Field Mappings",
                "description": "Custom field mappings for this provider."
              }
            ]
          },
          "default_creator": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Creator (email) for the integration. If provided, the creator field becomes optional in ticket creation requests."
              },
              {
                "title": "Default Creator",
                "description": "Default Creator (email) for the integration. If provided, the creator field becomes optional in ticket creation requests."
              }
            ]
          },
          "default_issue_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              },
              {
                "title": "Default Issue Type",
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              }
            ]
          },
          "default_project": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Project for the integration. This maps to the custom table for tickets. This table should be derived from Security Incident table. Defaults to the security incident table if not specified."
              },
              {
                "title": "Default Project",
                "description": "Default Project for the integration. This maps to the custom table for tickets. This table should be derived from Security Incident table. Defaults to the security incident table if not specified."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the ServiceNow API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.service-now.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the ServiceNow API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Ticketing_Torq": {
        "title": "ticketing | Torq",
        "type": "object",
        "description": "Configuration for Torq.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/torq-ticketing-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TorqCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "custom_field_mappings": {
            "allOf": [
              {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomFieldMapping"
                },
                "nullable": true,
                "description": "Custom field mappings for this provider."
              },
              {
                "title": "Custom Field Mappings",
                "description": "Custom field mappings for this provider."
              }
            ]
          },
          "default_creator": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Creator (email) for the integration. If provided, the creator field becomes optional in ticket creation requests."
              },
              {
                "title": "Default Creator",
                "description": "Default Creator (email) for the integration. If provided, the creator field becomes optional in ticket creation requests."
              }
            ]
          },
          "default_issue_type": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              },
              {
                "title": "Default Issue Type",
                "description": "Default Issue Type for the integration. If provided, the issue_type field becomes optional in ticket creation requests."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "Ticketing_Zendesk": {
        "title": "ticketing | Zendesk",
        "type": "object",
        "description": "Configuration for Zendesk as a Ticketing Provider",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ZendeskCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for your Zendesk tenant."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.zendesk.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for your Zendesk tenant."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "TicketingIvantiDataset": {
        "title": "TicketingIvantiDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "TicketingPagerdutyDataset": {
        "title": "TicketingPagerdutyDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "TorqCredential": {
        "title": "Torq Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "TorqCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "TorqCredential"
            }
          }
        ]
      },
      "TrimedxCredential": {
        "title": "Trimedx Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "type": "object",
                "properties": {
                  "token_url": {
                    "title": "Token URL",
                    "description": "This field is ignored and should not be set.",
                    "readOnly": true
                  }
                },
                "description": "Configuration when creating new Client Credentials."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "TrimedxCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "TrimedxCredential"
            }
          }
        ]
      },
      "Vulnerabilities_AmazonInspector": {
        "title": "vulnerabilities | Amazon Inspector",
        "type": "object",
        "description": "Configuration for Amazon Inspector as a vulnerabilities provider.",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsProviderCredential",
                "description": "AWS credentials with access to [Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/what-is-inspector.html)."
              },
              {
                "title": "Credential",
                "description": "AWS credentials with access to [Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/what-is-inspector.html)."
              }
            ]
          },
          "region": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AwsRegion",
                "description": "The [AWS region](https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html) to use when connecting to Amazon Inspector."
              },
              {
                "title": "Region",
                "description": "The [AWS region](https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html) to use when connecting to Amazon Inspector."
              }
            ]
          }
        },
        "required": [
          "credential",
          "region"
        ]
      },
      "Vulnerabilities_CrowdStrike": {
        "title": "vulnerabilities | CrowdStrike Falcon® Spotlight",
        "type": "object",
        "description": "Configuration for CrowdStrike Falcon® Spotlight.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/crowdstrike-vulns-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CrowdStrikeCredential",
                "description": "The credential to use for the CrowdStrike Falcon tenant."
              },
              {
                "title": "Credential",
                "description": "The credential to use for the CrowdStrike Falcon tenant."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the CrowdStrike Falcon® Spotlight API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://api.crowdstrike.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the CrowdStrike Falcon® Spotlight API."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "Vulnerabilities_CrowdStrike_Mock": {
        "title": "vulnerabilities | [Mock] CrowdStrike Falcon® Spotlight",
        "type": "object",
        "description": "Configuration for [MOCK] CrowdStrike Falcon® Spotlight.",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VulnerabilitiesCrowdStrikeDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Vulnerabilities_Defender": {
        "title": "vulnerabilities | Microsoft Defender for Endpoint",
        "type": "object",
        "description": "Configuration for Microsoft Defender for Endpoint.",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DefenderCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "tenant_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Tenant ID for the Microsoft Defender Management Console."
              },
              {
                "title": "Tenant ID",
                "description": "Tenant ID for the Microsoft Defender Management Console."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Microsoft Defender API."
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Microsoft Defender API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "tenant_id",
          "url"
        ]
      },
      "Vulnerabilities_Nucleus": {
        "title": "vulnerabilities | Nucleus VM",
        "type": "object",
        "description": "Configuration for Nucleus Vulnerability Management.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/nucleus-vulns-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NucleusCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "project_id": {
            "allOf": [
              {
                "type": "string",
                "description": "Numeric identifier for a Nucleus project."
              },
              {
                "pattern": "^\\d+$",
                "x-validation-message": {
                  "patternMismatch": "Must be a numeric project identifier."
                }
              },
              {
                "title": "Project ID",
                "description": "Numeric identifier for a Nucleus project."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Nucleus API."
              },
              {
                "example": "https://{sandbox}.nucleussec.com"
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Nucleus API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "project_id",
          "url"
        ]
      },
      "Vulnerabilities_QualysCloud": {
        "title": "vulnerabilities | Qualys VMDR",
        "type": "object",
        "description": "Configuration for Qualys Vulnerability Management, Detection & Response (VMDR).\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/qualys-vulns-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/QualysCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Qualys Cloud API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://qualysguard.qg4.apps.qualys.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Qualys Cloud API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Vulnerabilities_QualysCloud_Mock": {
        "title": "vulnerabilities | [MOCK] Qualys VMDR",
        "type": "object",
        "description": "Configuration for a mocked Qualys Cloud Platform as a Vulnerabilities Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VulnerabilitiesQualysCloudDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Vulnerabilities_Rapid7InsightCloud": {
        "title": "vulnerabilities | Rapid7 InsightVM",
        "type": "object",
        "description": "Configuration for Rapid7 InsightVM.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/rapid7-vulns-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Rapid7InsightCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Rapid7 InsightVM API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://us2.api.insight.rapid7.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Rapid7 InsightVM API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Vulnerabilities_Rapid7InsightCloud_Mock": {
        "title": "vulnerabilities | [MOCK] Rapid7 InsightVM Cloud",
        "type": "object",
        "description": "Configuration for a mocked Rapid7 Insight Cloud as a Vulnerabilities Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VulnerabilitiesRapid7InsightCloudDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Vulnerabilities_ServiceNow": {
        "title": "vulnerabilities | ServiceNow Vulnerability Response",
        "type": "object",
        "description": "Configuration for ServiceNow Vulnerability Response.",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ServiceNowCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the ServiceNow API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenant.service-now.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the ServiceNow API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Vulnerabilities_TaniumCloud": {
        "title": "vulnerabilities | Tanium VM",
        "type": "object",
        "description": "Configuration for Tanium Vulnerability Management.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/tanium-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TaniumCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Tanium Cloud API"
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://{customername}-api.cloud.tanium.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Tanium Cloud API"
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "Vulnerabilities_TaniumCloud_Mock": {
        "title": "vulnerabilities | [MOCK] Tanium Vulnerability Management",
        "type": "object",
        "description": "Configuration for a mock Tanium Cloud as a Vulnerabilities Provider",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VulnerabilitiesTaniumCloudDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "Vulnerabilities_TenableCloud": {
        "title": "vulnerabilities | Tenable VM",
        "type": "object",
        "description": "Configuration for Tenable Vulnerability Management.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/tenable-vulns-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TenableCloudCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "nullable": true,
                "description": "Base URL for the Tenable Cloud API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://cloud.tenable.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Tenable Cloud API."
              }
            ]
          }
        },
        "required": [
          "credential"
        ]
      },
      "Vulnerabilities_TenableSc": {
        "title": "vulnerabilities | Tenable SC",
        "type": "object",
        "description": "Configuration for Tenable Security Center.",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TenableScCredential"
              },
              {
                "title": "Credential"
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the Tenable Security Center API."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "example": "https://tenablesc.example.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the Tenable Security Center API."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "VulnerabilitiesCrowdStrikeDataset": {
        "title": "VulnerabilitiesCrowdStrikeDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "VulnerabilitiesQualysCloudDataset": {
        "title": "VulnerabilitiesQualysCloudDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "VulnerabilitiesRapid7InsightCloudDataset": {
        "title": "VulnerabilitiesRapid7InsightCloudDataset",
        "type": "string",
        "enum": [
          "basic_v0",
          "basic_v0_1"
        ]
      },
      "VulnerabilitiesTaniumCloudDataset": {
        "title": "VulnerabilitiesTaniumCloudDataset",
        "type": "string",
        "enum": [
          "basic_v0"
        ]
      },
      "WorkdayCredential": {
        "title": "Workday Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "o_auth_client"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/OAuthClientCredential"
              },
              {
                "required": [
                  "extra",
                  "token_url"
                ],
                "type": "object",
                "properties": {
                  "extra": {
                    "title": "Extra",
                    "required": [
                      "refresh_token"
                    ],
                    "properties": {
                      "refresh_token": {
                        "title": "Refresh Token",
                        "type": "string"
                      }
                    },
                    "description": "Connection specific JSON map, must include the field `refresh_token`."
                  },
                  "token_url": {
                    "title": "Token URL",
                    "pattern": "^https?:.+$",
                    "description": "Workday token OAuth token URL.",
                    "format": "uri",
                    "example": "https://impl-services1.wd12.myworkday.com/ccx/oauth2/{tenant}/token",
                    "x-validation-message": {
                      "patternMismatch": "Must be a valid HTTP(S) URL."
                    }
                  }
                },
                "description": "OAuth 2.0 Client ID, Client Secret, Refresh Token, and Token URL for Workday API access."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredential",
              "type": "WorkdayCredential"
            }
          },
          {
            "description": "Reference to existing Client Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "o_auth_client_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `o_auth_client`. Must match the `id` of an existing `o_auth_client`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Client Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "OAuthClientCredentialId",
              "reference": true,
              "type": "WorkdayCredential"
            }
          }
        ]
      },
      "ZendeskCredential": {
        "title": "Zendesk Credential",
        "oneOf": [
          {
            "allOf": [
              {
                "properties": {
                  "type": {
                    "enum": [
                      "basic"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              {
                "$ref": "#/components/schemas/BasicCredential"
              },
              {
                "type": "object",
                "properties": {},
                "description": "E-mail address and API Token for use with the Zendesk API. Use the e-mail address for the `username` field and API Token for the `secret` field. See [Zendesk API token generation documentation](https://developer.zendesk.com/api-reference/introduction/security-and-auth/#api-token) for more detail."
              }
            ],
            "required": [
              "type"
            ],
            "title": "New Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredential",
              "type": "ZendeskCredential"
            }
          },
          {
            "description": "Reference to existing Basic Credentials.",
            "properties": {
              "type": {
                "enum": [
                  "basic_id"
                ],
                "type": "string"
              },
              "value": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Id"
                  },
                  {
                    "description": "Unique identifier of an existing Credential of type `basic`. Must match the `id` of an existing `basic`, referencing by `name` is not allowed."
                  }
                ]
              }
            },
            "required": [
              "type"
            ],
            "title": "Existing Basic Credentials",
            "type": "object",
            "x-synqly-credential": {
              "extends": "BasicCredentialId",
              "reference": true,
              "type": "ZendeskCredential"
            }
          }
        ]
      },
      "appsec_GitHub": {
        "title": "appsec | GitHub",
        "type": "object",
        "description": "Configuration for GitHub as an application security provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/github-appsec-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GitHubCredential",
                "description": "Credentials used for accessing the GitHub API."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the GitHub API."
              }
            ]
          },
          "organization_slug": {
            "allOf": [
              {
                "type": "string",
                "description": "GitHub organization slug. This value can be found in the URL of the organization's GitHub page or by converting the organization display name to a slug. For example, if the organization display name is \"My GitHub Organization\" and the URL is \"https://github.com/organizations/my-github-organization\", the slug would be \"my-github-organization\"."
              },
              {
                "title": "Organization Slug",
                "description": "GitHub organization slug. This value can be found in the URL of the organization's GitHub page or by converting the organization display name to a slug. For example, if the organization display name is \"My GitHub Organization\" and the URL is \"https://github.com/organizations/my-github-organization\", the slug would be \"my-github-organization\"."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the GitHub environment. Only necessary with GitHub Enterprise Server deployments."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://github.com",
                "example": "https://your-github-instance.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the GitHub environment. Only necessary with GitHub Enterprise Server deployments."
              }
            ]
          }
        },
        "required": [
          "credential",
          "organization_slug",
          "url"
        ]
      },
      "appsec_GitLab": {
        "title": "appsec | GitLab",
        "type": "object",
        "description": "Configuration for GitLab as an application security provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/gitlab-appsec-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GitLabCredential",
                "description": "Credentials used for accessing the GitLab API."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the GitLab API."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the GitLab API. This URL should be the same as the URL used to access your GitLab instance."
              },
              {
                "pattern": "^https?:.+$",
                "format": "uri",
                "default": "https://gitlab.com",
                "example": "https://your-gitlab-instance.com",
                "x-validation-message": {
                  "patternMismatch": "Must be a valid HTTP(S) URL."
                }
              },
              {
                "title": "Base URL",
                "description": "Base URL for the GitLab API. This URL should be the same as the URL used to access your GitLab instance."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "appsec_HCLAppScanOnCloud": {
        "title": "appsec | HCL AppScan on Cloud",
        "type": "object",
        "description": "Configuration for HCL AppScan on Cloud as an application security provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/hcl-appscan-appsec-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HCLAppScanOnCloudCredential",
                "description": "Credentials used for accessing the HCL AppScan on Cloud API."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the HCL AppScan on Cloud API."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/HCLAppScanOnCloudUrl",
                "description": "Base URL for the HCL AppScan on Cloud API. This URL should be the same as the URL used to access the HCL AppScan on Cloud web interface."
              },
              {
                "title": "Base URL",
                "description": "Base URL for the HCL AppScan on Cloud API. This URL should be the same as the URL used to access the HCL AppScan on Cloud web interface."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "appsec_OpenTextApplicationSecurity": {
        "title": "appsec | OpenText Application Security (On-Premise)",
        "type": "object",
        "description": "Configuration for OpenText Application Security (formerly Fortify Software Security Center) as an application security provider.\n\n**This provider is for on-premise installations of OpenText Application Security. For the SaaS product, please use the OpenText Core Application Security provider.**\n\nAs this provider is for an on-premise only product, either a Synqly Bridge Agent must be used or the OpenText Application Security installation must be accessible from a public URL.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/opentext-applicationsecurity-appsec-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OpenTextApplicationSecurityCredential",
                "description": "Credentials used for accessing the OpenText Application Security API."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the OpenText Application Security API."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "type": "string",
                "description": "Base URL for the OpenText Application Security API. This URL should\nbe the same as the URL used to access the OpenText Application\nSecurity web interface.\n\n**If a Synqly Bridge Agent is not used, this URL must be a publically accessible**\n\nFor more information on using a Synqly Bridge Agent, see the [Synqly Bridge Agent documentation](https://docs.synqly.com/bridge/agent-setup)."
              },
              {
                "title": "Base URL",
                "description": "Base URL for the OpenText Application Security API. This URL should\nbe the same as the URL used to access the OpenText Application\nSecurity web interface. \n\n**If a Synqly Bridge Agent is not used, this URL must be a publically accessible**  \n\nFor more information on using a Synqly Bridge Agent, see the [Synqly Bridge Agent documentation](https://docs.synqly.com/bridge/agent-setup).\n"
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "appsec_OpenTextCoreApplicationSecurity": {
        "title": "appsec | OpenText Core Application Security",
        "type": "object",
        "description": "Configuration for OpenText Core Application Security (formerly Fortify On Demand) as an application security provider.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/opentext-core-applicationsecurity-appsec-setup)",
        "properties": {
          "credential": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OpenTextCoreApplicationSecurityCredential",
                "description": "Credentials used for accessing the OpenText Core Application Security API."
              },
              {
                "title": "Credential",
                "description": "Credentials used for accessing the OpenText Core Application Security API."
              }
            ]
          },
          "url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OpenTextCoreApplicationSecurityUrl",
                "description": "Base URL for the OpenText Core Application Security API. This URL should be the same as the URL used to access the OpenText Core Application Security web interface."
              },
              {
                "title": "Base URL",
                "description": "Base URL for the OpenText Core Application Security API. This URL should be the same as the URL used to access the OpenText Core Application Security web interface."
              }
            ]
          }
        },
        "required": [
          "credential",
          "url"
        ]
      },
      "appsec_OpenTextCoreApplicationSecurityMock": {
        "title": "appsec | [MOCK] OpenText Core Application Security",
        "type": "object",
        "description": "Configuration for [MOCK] OpenText Core Application Security.\n\n[Configuration guide](https://docs.synqly.com/guides/provider-configuration/opentext-core-applicationsecurity-appsec-setup)",
        "properties": {
          "dataset": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AppsecOpentextCoreApplicationSecurityDataset"
              },
              {
                "title": "Dataset"
              }
            ]
          }
        },
        "required": [
          "dataset"
        ]
      },
      "RoleId": {
        "title": "RoleId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Role"
      },
      "RoleName": {
        "title": "RoleName",
        "type": "string",
        "description": "Unique identifier for this Role"
      },
      "AdhocRole": {
        "title": "AdhocRole",
        "type": "object",
        "properties": {
          "resources": {
            "$ref": "#/components/schemas/Resources"
          },
          "permission_set": {
            "$ref": "#/components/schemas/Permissions"
          }
        },
        "required": [
          "resources",
          "permission_set"
        ]
      },
      "RoleAccounts": {
        "title": "RoleAccounts",
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Id"
            },
            "description": "List of account ids that this role definition grants access to. Use \"\\*\" to grant access to all account ids."
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "List of account labels this role definition grants access to. If both labels and environments are specified both must pass"
          },
          "environments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Environment"
            },
            "nullable": true,
            "description": "Account environments this role definition grants access to. If both labels and environments are specified both must pass"
          }
        },
        "required": [
          "ids"
        ]
      },
      "RoleIntegrations": {
        "title": "RoleIntegrations",
        "type": "object",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CategoryId"
            },
            "description": "List of categories ids that this role definition grants access to. Use \"\\*\" to grant access to all category ids."
          }
        },
        "required": [
          "categories"
        ]
      },
      "RoleOrganizations": {
        "title": "RoleOrganizations",
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Id"
            },
            "description": "List of organization ids that this role definition grants access to. Use \"\\*\" to grant access to all organization ids."
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true,
            "description": "List of organization labels this role definition grants access to."
          }
        },
        "required": [
          "ids"
        ]
      },
      "Resources": {
        "title": "Resources",
        "type": "object",
        "properties": {
          "organizations": {
            "$ref": "#/components/schemas/RoleOrganizations",
            "nullable": true
          },
          "accounts": {
            "$ref": "#/components/schemas/RoleAccounts",
            "nullable": true
          },
          "integrations": {
            "$ref": "#/components/schemas/RoleIntegrations",
            "nullable": true
          }
        }
      },
      "RoleDefinition": {
        "title": "RoleDefinition",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Full name of role"
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Description of the resources included in the role and permissions granted on those resources. Includes details of when to use this role along with the intended personas."
          },
          "resources": {
            "$ref": "#/components/schemas/Resources",
            "nullable": true,
            "description": "Selects the resources the permission set applies to."
          },
          "permission_set": {
            "$ref": "#/components/schemas/Permissions",
            "description": "Permission set for this role."
          }
        },
        "required": [
          "id",
          "fullname",
          "permission_set"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "ListRolesResponse": {
        "title": "ListRolesResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RoleDefinition"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetRoleResponse": {
        "title": "GetRoleResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RoleDefinition"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateRoleRequest": {
        "title": "CreateRoleRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this Role (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to RoleId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Role, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "description": {
            "type": "string",
            "nullable": true,
            "description": "Description of the resources included in the role and permissions granted on those resources. Includes details of when to use this role along with the intended personas."
          },
          "resources": {
            "$ref": "#/components/schemas/Resources",
            "nullable": true,
            "description": "Selects the resources the permission set applies to."
          },
          "permission_set": {
            "$ref": "#/components/schemas/Permissions",
            "description": "Permission set for this role."
          }
        },
        "required": [
          "permission_set"
        ]
      },
      "CreateRoleResponse": {
        "title": "CreateRoleResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RoleDefinition"
          }
        },
        "required": [
          "result"
        ]
      },
      "UpdateRoleRequest": {
        "title": "UpdateRoleRequest",
        "$ref": "#/components/schemas/RoleDefinition"
      },
      "UpdateRoleResponse": {
        "title": "UpdateRoleResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RoleDefinition"
          }
        },
        "required": [
          "result"
        ]
      },
      "PatchRoleResponse": {
        "title": "PatchRoleResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RoleDefinition"
          }
        },
        "required": [
          "result"
        ]
      },
      "ListStatusOptions": {
        "title": "ListStatusOptions",
        "type": "string",
        "enum": [
          "account",
          "accounts",
          "integration",
          "integrations",
          "all"
        ]
      },
      "Status": {
        "title": "Status",
        "type": "object",
        "description": "Status object",
        "properties": {
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Time object was originally created"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "description": "Last time object was updated"
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Account associated with this status. Use the expand=accounts parameter with the List API to expand the Account to the full object"
          },
          "account": {
            "$ref": "#/components/schemas/Account",
            "nullable": true,
            "description": "When using the expand option on the List API, the full account object is included in the response"
          },
          "integration_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Integration associated with this status. Use the expand=integrations parameter with the List API to expand the Integration to the full object"
          },
          "integration": {
            "$ref": "#/components/schemas/Integration",
            "nullable": true,
            "description": "When using the expand option on the List API, the full integration object is included in the response"
          },
          "status": {
            "type": "string",
            "description": "The current status of the notification."
          },
          "requests": {
            "type": "integer",
            "format": "int64",
            "description": "Request count"
          },
          "failed": {
            "type": "integer",
            "format": "int64",
            "description": "Failed count"
          },
          "cpu_time": {
            "type": "integer",
            "format": "int64",
            "description": "Cpu time in microseconds"
          },
          "db_ops": {
            "type": "integer",
            "format": "int64",
            "description": "Database operations count"
          },
          "api_ops": {
            "type": "integer",
            "format": "int64",
            "description": "API operations count"
          },
          "in_bytes": {
            "type": "integer",
            "format": "int64",
            "description": "API input byte count"
          },
          "out_bytes": {
            "type": "integer",
            "format": "int64",
            "description": "API output byte count"
          }
        },
        "required": [
          "created_at",
          "updated_at",
          "account_id",
          "integration_id",
          "status",
          "requests",
          "failed",
          "cpu_time",
          "db_ops",
          "api_ops",
          "in_bytes",
          "out_bytes"
        ]
      },
      "ListStatusResponse": {
        "title": "ListStatusResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Status"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetStatusResponse": {
        "title": "GetStatusResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Status"
          }
        },
        "required": [
          "result"
        ]
      },
      "StatusEvent": {
        "title": "StatusEvent",
        "type": "object",
        "description": "Status event object",
        "properties": {
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Account owner"
          },
          "integration_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Integration object"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Time created"
          },
          "status": {
            "type": "string",
            "description": "The current status of the notification."
          },
          "error": {
            "type": "string",
            "nullable": true,
            "description": "Error message"
          },
          "request": {
            "type": "integer",
            "format": "int64",
            "description": "Request number"
          }
        },
        "required": [
          "account_id",
          "integration_id",
          "created_at",
          "status",
          "request"
        ]
      },
      "ListStatusEventsResponse": {
        "title": "ListStatusEventsResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StatusEvent"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "TimeseriesResult": {
        "title": "TimeseriesResult",
        "type": "object",
        "description": "Status timeseries object",
        "properties": {
          "created_at": {
            "type": "string",
            "format": "date-time",
            "description": "Interval time"
          },
          "succeeded": {
            "type": "integer",
            "format": "int64",
            "description": "Succeeded count"
          },
          "failed": {
            "type": "integer",
            "format": "int64",
            "description": "Failed count"
          },
          "cpu_time": {
            "type": "integer",
            "format": "int64",
            "description": "Cpu time in microseconds"
          },
          "in_bytes": {
            "type": "integer",
            "format": "int64",
            "description": "API input byte count"
          },
          "out_bytes": {
            "type": "integer",
            "format": "int64",
            "description": "API output byte count"
          }
        },
        "required": [
          "created_at",
          "succeeded",
          "failed",
          "cpu_time",
          "in_bytes",
          "out_bytes"
        ]
      },
      "GetStatusTimeseriesResult": {
        "title": "GetStatusTimeseriesResult",
        "type": "object",
        "description": "Status timeseries object",
        "properties": {
          "start_time": {
            "type": "string",
            "format": "date-time",
            "description": "start time"
          },
          "end_time": {
            "type": "string",
            "format": "date-time",
            "description": "end time"
          },
          "interval": {
            "type": "string",
            "description": "interval duration"
          },
          "series": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TimeseriesResult"
            }
          }
        },
        "required": [
          "start_time",
          "end_time",
          "interval",
          "series"
        ]
      },
      "GetStatusTimeseries": {
        "title": "GetStatusTimeseries",
        "type": "object",
        "description": "Get status last hour timeseries",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/GetStatusTimeseriesResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "GetIntegrationTimeseriesResult": {
        "title": "GetIntegrationTimeseriesResult",
        "$ref": "#/components/schemas/GetStatusTimeseriesResult"
      },
      "GetIntegrationTimeseries": {
        "title": "GetIntegrationTimeseries",
        "type": "object",
        "description": "Get integration timeseries",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/GetStatusTimeseriesResult"
          }
        },
        "required": [
          "result"
        ]
      },
      "TokenId": {
        "title": "TokenId",
        "$ref": "#/components/schemas/Id",
        "description": "Unique identifier for this Token"
      },
      "TokenPair": {
        "title": "TokenPair",
        "type": "object",
        "properties": {
          "access": {
            "$ref": "#/components/schemas/Token",
            "description": "Access token contains the bearer secret"
          },
          "refresh": {
            "$ref": "#/components/schemas/Token",
            "description": "Refresh token used for RefreshToken API"
          }
        },
        "required": [
          "access",
          "refresh"
        ]
      },
      "Token": {
        "title": "Token",
        "type": "object",
        "properties": {
          "secret": {
            "type": "string",
            "description": "Secret value for the token; used for authentication when making requests."
          },
          "expires": {
            "type": "string",
            "format": "date-time",
            "description": "Time when this token expires and can no longer be used again."
          },
          "permissions": {
            "$ref": "#/components/schemas/Permission",
            "description": "Permissions granted to this token."
          },
          "claims": {
            "type": "object",
            "additionalProperties": true,
            "nullable": true,
            "description": "Additional claims added to the token."
          }
        },
        "required": [
          "secret",
          "expires",
          "permissions"
        ]
      },
      "TokenOwnerType": {
        "title": "TokenOwnerType",
        "type": "string",
        "enum": [
          "organization",
          "integration"
        ]
      },
      "TokenType": {
        "title": "TokenType",
        "type": "string",
        "enum": [
          "adhoc",
          "logon",
          "default"
        ]
      },
      "RefreshToken": {
        "title": "RefreshToken",
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Id"
          },
          "fullname": {
            "type": "string",
            "description": "Human friendly display name for this account."
          },
          "member_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Member Id"
          },
          "owner_id": {
            "$ref": "#/components/schemas/Id",
            "description": "ID of the entity that owns this token"
          },
          "owner_type": {
            "$ref": "#/components/schemas/TokenOwnerType",
            "description": "Type of the entity that owns this token"
          },
          "expires": {
            "type": "string",
            "format": "date-time",
            "description": "Time when this token expires and can no longer be used again."
          },
          "token_ttl": {
            "type": "string",
            "description": "Token time-to-live"
          },
          "token_type": {
            "$ref": "#/components/schemas/TokenType",
            "description": "Type of token created"
          },
          "primary": {
            "$ref": "#/components/schemas/TokenPair",
            "description": "Primary running access and refresh tokens"
          },
          "secondary": {
            "$ref": "#/components/schemas/TokenPair",
            "nullable": true,
            "description": "Temporary secondary TokenPair created after a RefreshToken operation"
          }
        },
        "required": [
          "id",
          "fullname",
          "owner_id",
          "owner_type",
          "expires",
          "token_ttl",
          "token_type",
          "primary"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Base"
          }
        ]
      },
      "CreateTokenRequest": {
        "title": "CreateTokenRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique short name for this token (lowercase [a-z0-9_-], can be used in URLs). Also used for case insensitive duplicate name detection and default sort order. Defaults to TokenId if both name and fullname are not specified."
          },
          "fullname": {
            "type": "string",
            "nullable": true,
            "description": "Human friendly display name for this Token, will auto-generate 'name' field (if 'name' is not specified). Defaults to the same value as the 'name' field if not specified."
          },
          "resources": {
            "$ref": "#/components/schemas/Resources",
            "description": "Limit access to supplied resources"
          },
          "permission_set": {
            "$ref": "#/components/schemas/Permissions",
            "description": "Limit access to supplied permissions"
          },
          "token_ttl": {
            "type": "string",
            "nullable": true,
            "description": "Token time-to-live. If not provided, defaults to 24 hours. Use the format \"1h\", \"1m\", \"1s\" for hours, minutes, and seconds respectively, e.g., \"24h\" for 24 hours."
          }
        },
        "required": [
          "resources",
          "permission_set"
        ]
      },
      "CreateTokenResponse": {
        "title": "CreateTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RefreshToken"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateIntegrationTokenRequest": {
        "title": "CreateIntegrationTokenRequest",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Unique name token. If not provided, defaults to generated newly created refresh token id."
          },
          "token_ttl": {
            "type": "string",
            "nullable": true,
            "description": "Token time-to-live. If not provided, defaults to 10 minutes. Use the format \"1h\", \"1m\", \"1s\" for hours, minutes, and seconds respectively, e.g., \"2h\" for 2 hours."
          }
        }
      },
      "CreateMCPTokenRequest": {
        "title": "CreateMCPTokenRequest",
        "type": "object",
        "properties": {
          "token_ttl": {
            "type": "string",
            "nullable": true,
            "description": "Token time-to-live. If not provided, defaults to 1 hour. May be set to a maximum of 24 hours. Use the format \"1h\", \"1m\", \"1s\" for hours, minutes, and seconds respectively, e.g., \"2h\" for 2 hours."
          },
          "scope": {
            "$ref": "#/components/schemas/MCPTokenScope",
            "description": "Controls the tools that are available to the MCP server,\nand the APIs that can be accessed by the MCP server."
          }
        },
        "required": [
          "scope"
        ]
      },
      "MCPTokenScope": {
        "title": "MCPTokenScope",
        "oneOf": [
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "management"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/MCPManagementScopeOptions"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "integration-usage"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/MCPIntegrationUsageScopeOptions"
              }
            ],
            "required": [
              "type"
            ]
          },
          {
            "type": "object",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "developer"
                    ]
                  }
                }
              },
              {
                "$ref": "#/components/schemas/MCPDeveloperUsageScopeOptions"
              }
            ],
            "required": [
              "type"
            ]
          }
        ]
      },
      "MCPManagementScopeOptions": {
        "title": "MCPManagementScopeOptions",
        "type": "object",
        "properties": {
          "environment": {
            "$ref": "#/components/schemas/Environment",
            "nullable": true,
            "description": "Optionally restrict access to a specific environment."
          },
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "nullable": true,
            "description": "Optionally restrict access to a specific account. This is recommended for production use cases. If provided, this overrides any `environment` restriction."
          }
        }
      },
      "MCPIntegrationUsageScopeOptions": {
        "title": "MCPIntegrationUsageScopeOptions",
        "type": "object",
        "properties": {
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Restrict integration usage to this account. By default, the MCP server\nwill have access to all integrations within this account; this may be\nrestricted to a specific set of tools using the\n`restrict_to_connector_operations` property."
          },
          "restrict_to_connector_operations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OperationId"
            },
            "nullable": true,
            "description": "Optionally restrict access to the tools associated with the specified\nconnector operations. If not specified, the MCP server will advertise\nall tools for this scope."
          }
        },
        "required": [
          "account_id"
        ]
      },
      "MCPDeveloperUsageScopeOptions": {
        "title": "MCPDeveloperUsageScopeOptions",
        "type": "object",
        "properties": {
          "account_id": {
            "$ref": "#/components/schemas/Id",
            "description": "Restrict integration creation and usage to this account. The MCP\nwill be given account-owner permissions for this account."
          }
        },
        "required": [
          "account_id"
        ]
      },
      "CreateMCPTokenResponse": {
        "title": "CreateMCPTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Token"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateIntegrationTokenResponse": {
        "title": "CreateIntegrationTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/Token"
          }
        },
        "required": [
          "result"
        ]
      },
      "CreateSynqlyIntegrationsTokenRequest": {
        "title": "CreateSynqlyIntegrationsTokenRequest",
        "type": "object",
        "properties": {
          "token_ttl": {
            "type": "string",
            "nullable": true,
            "description": "Token time-to-live. If not provided, defaults to 24 hours. Use the format \"1h\", \"1m\", \"1s\" for hours, minutes, and seconds respectively, e.g., \"24h\" for 24 hours."
          }
        }
      },
      "CreateSynqlyIntegrationsTokenResponse": {
        "title": "CreateSynqlyIntegrationsTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/SynqlyIntegrationsTokenResponse"
          }
        },
        "required": [
          "result"
        ]
      },
      "SynqlyIntegrationsTokenResponse": {
        "title": "SynqlyIntegrationsTokenResponse",
        "type": "object",
        "properties": {
          "account_id": {
            "$ref": "#/components/schemas/Id"
          },
          "token": {
            "$ref": "#/components/schemas/RefreshToken"
          }
        },
        "required": [
          "account_id",
          "token"
        ]
      },
      "ListTokensResponse": {
        "title": "ListTokensResponse",
        "type": "object",
        "properties": {
          "result": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RefreshToken"
            }
          }
        },
        "required": [
          "result"
        ]
      },
      "GetTokenResponse": {
        "title": "GetTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RefreshToken"
          }
        },
        "required": [
          "result"
        ]
      },
      "ResetTokenResponse": {
        "title": "ResetTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RefreshToken"
          }
        },
        "required": [
          "result"
        ]
      },
      "RotateTokenResponse": {
        "title": "RotateTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RefreshToken"
          }
        },
        "required": [
          "result"
        ]
      },
      "RefreshTokenResponse": {
        "title": "RefreshTokenResponse",
        "type": "object",
        "properties": {
          "result": {
            "$ref": "#/components/schemas/RefreshToken"
          }
        },
        "required": [
          "result"
        ]
      }
    },
    "securitySchemes": {
      "BearerAuth": {
        "type": "http",
        "scheme": "bearer"
      }
    }
  },
  "servers": [
    {
      "url": "https://api.synqly.com",
      "description": "Synqly"
    }
  ],
  "x-readme": {
    "explorer-enabled": false,
    "samples-languages": [
      "shell",
      "go"
    ]
  },
  "tags": [
    {
      "name": "Accounts",
      "x-displayName": "Accounts",
      "description": "Accounts under your Organization are used to manage Integrations, Credentials, and other account specific resources. Accounts are secure containers and may be used to represent tenants in your system. Data is never shared across accounts.\n\nFor more information on Accounts, see the [Synqly Overview](/guides/getting-started/overview).\n",
      "x-synqly-availability": {
        "status": "generally-available"
      }
    },
    {
      "name": "Audit",
      "x-displayName": "Audit"
    },
    {
      "name": "Auth",
      "x-displayName": "Auth"
    },
    {
      "name": "Bridges",
      "x-displayName": "Bridges"
    },
    {
      "name": "Capabilities",
      "x-displayName": "Capabilities"
    },
    {
      "name": "Credentials",
      "x-displayName": "Credentials"
    },
    {
      "name": "IntegrationPoints",
      "x-displayName": "Integration Points",
      "description": "An Integration Point describes a class of Integrations, and lets you describe names, allowed providers and other configuration that should apply to integrations associated with the Integration Point.\n\nWhile an Integration can be created without associating it with an Integration Point, some Synqly features require the use of Integration Points, such as:\n\n* [Connect UI](https://synqly.com/synqly-connector-ui/)\n* Validating allowed providers\n* Custom data mapping (coming soon)\n\nIntegration Points belong to the Organization, and can be associated with Integrations belonging to different Accounts.\n\nFor more information on Integration Points, see the [Synqly Overview](/guides/getting-started/overview).\n",
      "x-synqly-availability": {
        "status": "generally-available"
      }
    },
    {
      "name": "Integrations",
      "x-displayName": "Integrations",
      "description": "An Integration represents the connection to a specific Provider. Once configured, an Integration enables interaction with the target Provider via our unified and normalized [Connector APIs](/api-reference/connectors).\n\nEach Integration belongs to an [Account](/api-reference/management/accounts) and may be associated with an [Integration Point](/api-reference/management/integrationpoints) to provide additional features and configuration.\n\nFor more information on Integrations, see the [Synqly Overview](/guides/getting-started/overview).\n",
      "x-synqly-availability": {
        "status": "generally-available"
      }
    },
    {
      "name": "Mappings",
      "x-displayName": "Mappings (In Development)",
      "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis feature is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this feature.\n{% /admonition %}\n",
      "x-synqly-availability": {
        "status": "in-development"
      }
    },
    {
      "name": "Members",
      "x-displayName": "Members"
    },
    {
      "name": "Meta",
      "x-displayName": "Meta"
    },
    {
      "name": "Operations",
      "x-displayName": "Operations (In Development)",
      "description": "{% admonition type=\"warning\" name=\"In Development\" %}\nThis feature is actively being developed. Breaking changes should be\nexpected.\n\nPlease contact us before using this feature.\n{% /admonition %}\n",
      "x-synqly-availability": {
        "status": "in-development"
      }
    },
    {
      "name": "OrganizationWebhooks",
      "x-displayName": "Organization Webhooks"
    },
    {
      "name": "Organization",
      "x-displayName": "Organization"
    },
    {
      "name": "Permissionset",
      "x-displayName": "Permissionset"
    },
    {
      "name": "Roles",
      "x-displayName": "Roles"
    },
    {
      "name": "Status",
      "x-displayName": "Status"
    },
    {
      "name": "SubOrgs",
      "x-displayName": "Sub Orgs"
    },
    {
      "name": "Tokens",
      "x-displayName": "Tokens",
      "description": "",
      "x-synqly-availability": {
        "status": "generally-available",
        "operations": {
          "tokens_create_synqly_integrations_token": "in-development"
        }
      }
    }
  ]
}