> ## Documentation Index
> Fetch the complete documentation index at: https://docs.threetone.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Workspace Auth Connection

> Store a manual auth connection for the workspace. This does not test the remote provider.



## OpenAPI

````yaml /api-reference/openapi.json post /v1/workspace/auth-connections
openapi: 3.1.0
info:
  title: Threetone API Documentation
  description: >-
    This is the documentation for the Threetone API. You can use this API to use
    our service programmatically with API keys sent in the x-api-key header. You
    can create and manage API keys in the dashboard at
    https://threetone.in/app/developers/api-keys.
  version: '1.0'
servers:
  - url: https://api.threetone.in
    description: Production
security: []
paths:
  /v1/workspace/auth-connections:
    post:
      tags:
        - workspace
      summary: Create Workspace Auth Connection
      description: >-
        Store a manual auth connection for the workspace. This does not test the
        remote provider.
      operationId: create_auth_connection
      parameters:
        - name: Idempotency-Key
          in: header
          required: false
          schema:
            anyOf:
              - type: string
                minLength: 8
                maxLength: 128
              - type: 'null'
            title: Idempotency-Key
        - name: x-api-key
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Your API key for programmatic access. Send it in the x-api-key
              header; you can create and manage keys from the Developers page.
            title: X-Api-Key
          description: >-
            Your API key for programmatic access. Send it in the x-api-key
            header; you can create and manage keys from the Developers page.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              anyOf:
                - $ref: '#/components/schemas/CreateOAuth2ClientCredsRequest'
                - $ref: '#/components/schemas/CreateCustomHeaderAuthRequest'
                - $ref: '#/components/schemas/CreateBasicAuthRequest'
                - $ref: '#/components/schemas/CreateBearerAuthRequest'
                - $ref: '#/components/schemas/CreateOAuth2JWTRequest'
                - $ref: '#/components/schemas/CreatePrivateKeyJWTRequest'
                - $ref: '#/components/schemas/CreateMTLSAuthRequest'
              description: Auth connection to create
              title: Request Body
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/OAuth2ClientCredsResponse'
                  - $ref: '#/components/schemas/RefreshTokenAuthResponse'
                  - $ref: '#/components/schemas/BasicAuthResponse'
                  - $ref: '#/components/schemas/BearerAuthResponse'
                  - $ref: '#/components/schemas/OAuth2JWTResponse'
                  - $ref: '#/components/schemas/PrivateKeyJWTResponse'
                  - $ref: '#/components/schemas/MTLSAuthResponse'
                  - $ref: '#/components/schemas/CustomHeaderAuthResponse'
                  - $ref: '#/components/schemas/ApiIntegrationOAuth2AuthCodeResponse'
                  - $ref: '#/components/schemas/ApiIntegrationOAuth2CustomAppResponse'
                  - $ref: '#/components/schemas/WhatsAppAuthResponse'
                  - $ref: '#/components/schemas/SlackBotAuthResponse'
                  - $ref: '#/components/schemas/UrlSecretAuthResponse'
                discriminator:
                  propertyName: auth_type
                  mapping:
                    oauth2_client_credentials:
                      $ref: '#/components/schemas/OAuth2ClientCredsResponse'
                    refresh_token_auth:
                      $ref: '#/components/schemas/RefreshTokenAuthResponse'
                    basic_auth:
                      $ref: '#/components/schemas/BasicAuthResponse'
                    bearer_auth:
                      $ref: '#/components/schemas/BearerAuthResponse'
                    oauth2_jwt:
                      $ref: '#/components/schemas/OAuth2JWTResponse'
                    private_key_jwt:
                      $ref: '#/components/schemas/PrivateKeyJWTResponse'
                    mtls:
                      $ref: '#/components/schemas/MTLSAuthResponse'
                    custom_header_auth:
                      $ref: '#/components/schemas/CustomHeaderAuthResponse'
                    api_integration_oauth2_auth_code:
                      $ref: >-
                        #/components/schemas/ApiIntegrationOAuth2AuthCodeResponse
                    api_integration_oauth2_custom_app:
                      $ref: >-
                        #/components/schemas/ApiIntegrationOAuth2CustomAppResponse
                    whatsapp_auth:
                      $ref: '#/components/schemas/WhatsAppAuthResponse'
                    slack_bot_auth:
                      $ref: '#/components/schemas/SlackBotAuthResponse'
                    url_secret:
                      $ref: '#/components/schemas/UrlSecretAuthResponse'
                description: The type of auth connection config
                title: >-
                  Response Create Workspace Auth Connection V1 Workspace Auth
                  Connections Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    CreateOAuth2ClientCredsRequest:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: oauth2_client_credentials
          title: Auth Type
          default: oauth2_client_credentials
        provider:
          type: string
          title: Provider
        client_id:
          type: string
          title: Client Id
        token_url:
          type: string
          title: Token Url
        scopes:
          items:
            type: string
          type: array
          title: Scopes
          default: []
        extra_params:
          additionalProperties:
            type: string
          type: object
          title: Extra Params
          default: {}
        basic_auth_in_header:
          type: boolean
          title: Basic Auth In Header
          description: >-
            If True, send client credentials in Authorization header as Basic
            Auth instead of request body
          default: false
        client_secret:
          type: string
          title: Client Secret
        custom_headers:
          additionalProperties:
            type: string
          type: object
          title: Custom Headers
          default: {}
      type: object
      required:
        - name
        - provider
        - client_id
        - token_url
        - client_secret
      title: CreateOAuth2ClientCredsRequest
      description: >-
        Request model for creating auth connections - inherits common settings
        and includes sensitive fields
    CreateCustomHeaderAuthRequest:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: custom_header_auth
          title: Auth Type
          default: custom_header_auth
        provider:
          type: string
          title: Provider
        header_name:
          type: string
          title: Header Name
          description: The name of the header to use for authentication (e.g., 'x-api-key')
        token:
          type: string
          title: Token
      type: object
      required:
        - name
        - provider
        - header_name
        - token
      title: CreateCustomHeaderAuthRequest
    CreateBasicAuthRequest:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: basic_auth
          title: Auth Type
          default: basic_auth
        provider:
          type: string
          title: Provider
        username:
          type: string
          title: Username
        password:
          type: string
          title: Password
      type: object
      required:
        - name
        - provider
        - username
        - password
      title: CreateBasicAuthRequest
      description: >-
        Request model for creating Basic Auth connections - inherits common
        settings and includes sensitive fields
    CreateBearerAuthRequest:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: bearer_auth
          title: Auth Type
          default: bearer_auth
        provider:
          type: string
          title: Provider
        token:
          type: string
          title: Token
      type: object
      required:
        - name
        - provider
        - token
      title: CreateBearerAuthRequest
      description: >-
        Request model for creating Bearer Auth connections - inherits common
        settings and includes sensitive fields
    CreateOAuth2JWTRequest:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: oauth2_jwt
          title: Auth Type
          default: oauth2_jwt
        provider:
          type: string
          title: Provider
        algorithm:
          type: string
          enum:
            - HS256
            - HS384
            - HS512
            - RS256
            - RS384
            - RS512
          title: Algorithm
          description: JWT signing algorithm
          default: HS256
        key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Key Id
          description: Key ID (kid) for JWT header - useful for key rotation
        issuer:
          type: string
          title: Issuer
          description: JWT issuer (iss claim)
        audience:
          type: string
          title: Audience
          description: JWT audience (aud claim)
        subject:
          type: string
          title: Subject
          description: JWT subject (sub claim)
        expiration_seconds:
          type: integer
          maximum: 86400
          minimum: 60
          title: Expiration Seconds
          description: Token expiration time in seconds
          default: 3600
        extra_params:
          additionalProperties:
            type: string
          type: object
          title: Extra Params
          description: Additional custom claims to include in the JWT
          default: {}
        token_url:
          type: string
          title: Token Url
          description: Token endpoint URL for exchanging JWT for access token
        scopes:
          items:
            type: string
          type: array
          title: Scopes
          description: OAuth2 scopes to request when exchanging JWT for access token
          default: []
        token_response_field:
          type: string
          enum:
            - access_token
            - id_token
          title: Token Response Field
          description: Token field to extract from the token endpoint response.
          default: access_token
        secret_key:
          type: string
          title: Secret Key
      type: object
      required:
        - name
        - provider
        - issuer
        - audience
        - subject
        - token_url
        - secret_key
      title: CreateOAuth2JWTRequest
      description: >-
        Request model for creating OAuth2 JWT auth connections - inherits common
        settings and includes sensitive fields
    CreatePrivateKeyJWTRequest:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: private_key_jwt
          title: Auth Type
          default: private_key_jwt
        provider:
          type: string
          title: Provider
        algorithm:
          type: string
          enum:
            - HS256
            - HS384
            - HS512
            - RS256
            - RS384
            - RS512
          title: Algorithm
          description: JWT signing algorithm
          default: HS256
        key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Key Id
          description: Key ID (kid) for JWT header - useful for key rotation
        issuer:
          type: string
          title: Issuer
          description: JWT issuer (iss claim)
        audience:
          type: string
          title: Audience
          description: JWT audience (aud claim)
        subject:
          type: string
          title: Subject
          description: JWT subject (sub claim)
        expiration_seconds:
          type: integer
          maximum: 86400
          minimum: 60
          title: Expiration Seconds
          description: Token expiration time in seconds
          default: 3600
        extra_params:
          additionalProperties:
            type: string
          type: object
          title: Extra Params
          description: Additional custom claims to include in the JWT
          default: {}
        secret_key:
          type: string
          title: Secret Key
      type: object
      required:
        - name
        - provider
        - issuer
        - audience
        - subject
        - secret_key
      title: CreatePrivateKeyJWTRequest
      description: >-
        Request model for creating Private Key JWT auth connections - inherits
        common settings and includes sensitive fields
    CreateMTLSAuthRequest:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: mtls
          title: Auth Type
          default: mtls
        provider:
          type: string
          title: Provider
        client_certificate:
          type: string
          title: Client Certificate
        client_key:
          type: string
          title: Client Key
        ca_certificate:
          anyOf:
            - type: string
            - type: 'null'
          title: Ca Certificate
        key_passphrase:
          anyOf:
            - type: string
            - type: 'null'
          title: Key Passphrase
      type: object
      required:
        - name
        - provider
        - client_certificate
        - client_key
      title: CreateMTLSAuthRequest
      description: Request model for creating mTLS auth connections.
    OAuth2ClientCredsResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: oauth2_client_credentials
          title: Auth Type
          default: oauth2_client_credentials
        provider:
          type: string
          title: Provider
        client_id:
          type: string
          title: Client Id
        token_url:
          type: string
          title: Token Url
        scopes:
          items:
            type: string
          type: array
          title: Scopes
          default: []
        extra_params:
          additionalProperties:
            type: string
          type: object
          title: Extra Params
          default: {}
        basic_auth_in_header:
          type: boolean
          title: Basic Auth In Header
          description: >-
            If True, send client credentials in Authorization header as Basic
            Auth instead of request body
          default: false
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
        custom_headers:
          additionalProperties:
            type: string
          type: object
          title: Custom Headers
          description: Custom headers configured for OAuth2 token requests
      type: object
      required:
        - name
        - provider
        - client_id
        - token_url
        - id
      title: OAuth2ClientCredsResponse
      description: Response model for oauth2 client creds
    RefreshTokenAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: refresh_token_auth
          title: Auth Type
          default: refresh_token_auth
        provider:
          type: string
          title: Provider
        client_id:
          type: string
          title: Client Id
        token_url:
          type: string
          title: Token Url
        scopes:
          items:
            type: string
          type: array
          title: Scopes
          default: []
        extra_params:
          additionalProperties:
            type: string
          type: object
          title: Extra Params
          default: {}
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - client_id
        - token_url
        - id
      title: RefreshTokenAuthResponse
      description: Response model for OAuth2 refresh-token-grant auth connections
    BasicAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: basic_auth
          title: Auth Type
          default: basic_auth
        provider:
          type: string
          title: Provider
        username:
          type: string
          title: Username
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - username
        - id
      title: BasicAuthResponse
      description: Response model for basic auth
    BearerAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: bearer_auth
          title: Auth Type
          default: bearer_auth
        provider:
          type: string
          title: Provider
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - id
      title: BearerAuthResponse
      description: Response model for bearer auth
    OAuth2JWTResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: oauth2_jwt
          title: Auth Type
          default: oauth2_jwt
        provider:
          type: string
          title: Provider
        algorithm:
          type: string
          enum:
            - HS256
            - HS384
            - HS512
            - RS256
            - RS384
            - RS512
          title: Algorithm
          description: JWT signing algorithm
          default: HS256
        key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Key Id
          description: Key ID (kid) for JWT header - useful for key rotation
        issuer:
          type: string
          title: Issuer
          description: JWT issuer (iss claim)
        audience:
          type: string
          title: Audience
          description: JWT audience (aud claim)
        subject:
          type: string
          title: Subject
          description: JWT subject (sub claim)
        expiration_seconds:
          type: integer
          maximum: 86400
          minimum: 60
          title: Expiration Seconds
          description: Token expiration time in seconds
          default: 3600
        extra_params:
          additionalProperties:
            type: string
          type: object
          title: Extra Params
          description: Additional custom claims to include in the JWT
          default: {}
        token_url:
          type: string
          title: Token Url
          description: Token endpoint URL for exchanging JWT for access token
        scopes:
          items:
            type: string
          type: array
          title: Scopes
          description: OAuth2 scopes to request when exchanging JWT for access token
          default: []
        token_response_field:
          type: string
          enum:
            - access_token
            - id_token
          title: Token Response Field
          description: Token field to extract from the token endpoint response.
          default: access_token
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - issuer
        - audience
        - subject
        - token_url
        - id
      title: OAuth2JWTResponse
      description: Response model for OAuth2 JWT auth connections
    PrivateKeyJWTResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: private_key_jwt
          title: Auth Type
          default: private_key_jwt
        provider:
          type: string
          title: Provider
        algorithm:
          type: string
          enum:
            - HS256
            - HS384
            - HS512
            - RS256
            - RS384
            - RS512
          title: Algorithm
          description: JWT signing algorithm
          default: HS256
        key_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Key Id
          description: Key ID (kid) for JWT header - useful for key rotation
        issuer:
          type: string
          title: Issuer
          description: JWT issuer (iss claim)
        audience:
          type: string
          title: Audience
          description: JWT audience (aud claim)
        subject:
          type: string
          title: Subject
          description: JWT subject (sub claim)
        expiration_seconds:
          type: integer
          maximum: 86400
          minimum: 60
          title: Expiration Seconds
          description: Token expiration time in seconds
          default: 3600
        extra_params:
          additionalProperties:
            type: string
          type: object
          title: Extra Params
          description: Additional custom claims to include in the JWT
          default: {}
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - issuer
        - audience
        - subject
        - id
      title: PrivateKeyJWTResponse
      description: Response model for Private Key JWT auth connections
    MTLSAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: mtls
          title: Auth Type
          default: mtls
        provider:
          type: string
          title: Provider
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - id
      title: MTLSAuthResponse
      description: Response model for mTLS auth connections.
    CustomHeaderAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: custom_header_auth
          title: Auth Type
          default: custom_header_auth
        provider:
          type: string
          title: Provider
        header_name:
          type: string
          title: Header Name
          description: The name of the header to use for authentication (e.g., 'x-api-key')
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - header_name
        - id
      title: CustomHeaderAuthResponse
      description: Response model for Custom Header Auth auth connections
    ApiIntegrationOAuth2AuthCodeResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: api_integration_oauth2_auth_code
          title: Auth Type
          default: api_integration_oauth2_auth_code
        provider:
          type: string
          title: Provider
        token_url:
          type: string
          title: Token Url
        scopes:
          items:
            type: string
          type: array
          title: Scopes
        scope_separator:
          type: string
          enum:
            - ' '
            - ','
          title: Scope Separator
          description: Separator for scopes
          default: ' '
        expires_at:
          type: string
          title: Expires At
          description: ISO 8601 timestamp of when the access token expires
        integration_id:
          type: string
          title: Integration Id
        credential_id:
          type: string
          title: Credential Id
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - token_url
        - expires_at
        - integration_id
        - credential_id
        - id
      title: ApiIntegrationOAuth2AuthCodeResponse
      description: Response model for integration-managed OAuth2 Auth Code auth connections
    ApiIntegrationOAuth2CustomAppResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: api_integration_oauth2_custom_app
          title: Auth Type
          default: api_integration_oauth2_custom_app
        provider:
          type: string
          title: Provider
        token_url:
          type: string
          title: Token Url
        scopes:
          items:
            type: string
          type: array
          title: Scopes
        scope_separator:
          type: string
          enum:
            - ' '
            - ','
          title: Scope Separator
          description: Separator for scopes
          default: ' '
        expires_at:
          type: string
          title: Expires At
          description: ISO 8601 timestamp of when the access token expires
        integration_id:
          type: string
          title: Integration Id
        credential_id:
          type: string
          title: Credential Id
        client_id:
          type: string
          title: Client Id
          description: >-
            OAuth client ID (rendered from template if credential uses templated
            credentials, None for legacy connections)
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - token_url
        - expires_at
        - integration_id
        - credential_id
        - client_id
        - id
      title: ApiIntegrationOAuth2CustomAppResponse
      description: Response model for user-owned OAuth2 Custom App auth connections
    WhatsAppAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: whatsapp_auth
          title: Auth Type
          default: whatsapp_auth
        provider:
          type: string
          const: whatsapp
          title: Provider
          default: whatsapp
        phone_number_id:
          type: string
          title: Phone Number Id
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - phone_number_id
        - id
      title: WhatsAppAuthResponse
    SlackBotAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: slack_bot_auth
          title: Auth Type
          default: slack_bot_auth
        provider:
          type: string
          const: Slack
          title: Provider
          default: Slack
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - id
      title: SlackBotAuthResponse
      description: Response model for the internal Slack BYO bot auth connection.
    UrlSecretAuthResponse:
      properties:
        name:
          type: string
          title: Name
        auth_type:
          type: string
          const: url_secret
          title: Auth Type
          default: url_secret
        provider:
          type: string
          title: Provider
        id:
          type: string
          title: Id
        used_by:
          anyOf:
            - $ref: '#/components/schemas/AuthConnectionDependencies'
            - type: 'null'
        status:
          $ref: '#/components/schemas/AuthConnectionStatus'
          default: active
        status_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Detail
        status_updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Status Updated At
      type: object
      required:
        - name
        - provider
        - id
      title: UrlSecretAuthResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    AuthConnectionDependencies:
      properties:
        tools:
          items:
            oneOf:
              - $ref: '#/components/schemas/DependentAvailableToolIdentifier'
              - $ref: '#/components/schemas/DependentUnknownToolIdentifier'
            discriminator:
              propertyName: type
              mapping:
                available:
                  $ref: '#/components/schemas/DependentAvailableToolIdentifier'
                unknown:
                  $ref: '#/components/schemas/DependentUnknownToolIdentifier'
          type: array
          title: Tools
          default: []
        mcp_servers:
          items:
            oneOf:
              - $ref: '#/components/schemas/DependentAvailableMCPServerIdentifier'
              - $ref: '#/components/schemas/DependentUnknownMCPServerIdentifier'
            discriminator:
              propertyName: type
              mapping:
                available:
                  $ref: '#/components/schemas/DependentAvailableMCPServerIdentifier'
                unknown:
                  $ref: '#/components/schemas/DependentUnknownMCPServerIdentifier'
          type: array
          title: Mcp Servers
          default: []
        integration_connections:
          items:
            $ref: '#/components/schemas/DependentIntegrationConnectionIdentifier'
          type: array
          title: Integration Connections
          default: []
      type: object
      title: AuthConnectionDependencies
      description: Dependencies that use an auth connection
    AuthConnectionStatus:
      type: string
      enum:
        - active
        - refresh_failed
        - revoked
        - credential_invalid
      title: AuthConnectionStatus
      description: |-
        Single status field shared by every auth type's stored credential.

        OAuth values (``REFRESH_FAILED``, ``REVOKED``) are written by the OAuth
        token-manager refresh path. ``CREDENTIAL_INVALID`` is written by the
        tool execution path when an upstream response matches a credential's
        ``failure_signatures`` entry (Bearer, Basic auth, etc.).
      default: active
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    DependentAvailableToolIdentifier:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        type:
          type: string
          const: available
          title: Type
          default: available
        created_at_unix_secs:
          type: integer
          title: Created At Unix Secs
        access_level:
          type: string
          enum:
            - admin
            - editor
            - commenter
            - viewer
          title: Access Level
      type: object
      required:
        - id
        - name
        - created_at_unix_secs
        - access_level
      title: DependentAvailableToolIdentifier
    DependentUnknownToolIdentifier:
      properties:
        type:
          type: string
          const: unknown
          title: Type
          default: unknown
        id:
          type: string
          title: Id
      type: object
      required:
        - id
      title: DependentUnknownToolIdentifier
      description: |-
        A model that represents an tool dependent on a knowledge base/tools
        to which the user has no direct access.
    DependentAvailableMCPServerIdentifier:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        type:
          type: string
          const: available
          title: Type
          default: available
        created_at_unix_secs:
          type: integer
          title: Created At Unix Secs
        access_level:
          type: string
          enum:
            - admin
            - editor
            - commenter
            - viewer
          title: Access Level
      type: object
      required:
        - id
        - name
        - created_at_unix_secs
        - access_level
      title: DependentAvailableMCPServerIdentifier
    DependentUnknownMCPServerIdentifier:
      properties:
        id:
          type: string
          title: Id
        type:
          type: string
          const: unknown
          title: Type
          default: unknown
      type: object
      required:
        - id
      title: DependentUnknownMCPServerIdentifier
    DependentIntegrationConnectionIdentifier:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
      type: object
      required:
        - id
        - name
      title: DependentIntegrationConnectionIdentifier
      description: >-
        Identifier for an integration connection that depends on an auth
        connection

````