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

# Connect an integration

> Create/update an integration



## OpenAPI

````yaml /api-reference/openapi.json post /api/v1/orgs/{orgSlug}/integrations/{provider}
openapi: 3.0.3
info:
  title: Tolmo API
  version: 1.0.0
  description: >-
    The Tolmo REST API. Every endpoint is scoped to one organization and
    authenticated with an API token.
servers:
  - url: https://api.tolmo.com
    description: Production
security:
  - bearerAuth: []
paths:
  /api/v1/orgs/{orgSlug}/integrations/{provider}:
    post:
      tags:
        - integrations
      summary: Connect an integration
      description: Create/update an integration
      operationId: apiConnectIntegration
      parameters:
        - schema:
            type: string
          in: path
          name: orgSlug
          required: true
        - schema:
            type: string
          in: path
          name: provider
          required: true
      requestBody:
        required: true
        content:
          application/json:
            schema:
              anyOf:
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        roleArn: {}
                        externalId: {}
                      required:
                        - roleArn
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        scopeType: {}
                        projectId: {}
                        folderId: {}
                        organizationId: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        serviceAccountKey: {}
                      required:
                        - serviceAccountKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        accountId: {}
                        zoneId: {}
                      required:
                        - accountId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        scopeType: {}
                        tenantId: {}
                        clientId: {}
                        subscriptionId: {}
                        managementGroupId: {}
                      required:
                        - scopeType
                        - tenantId
                        - clientId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientSecret: {}
                      required:
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        region: {}
                      required:
                        - region
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        applicationKey: {}
                        applicationSecret: {}
                        consumerKey: {}
                      required:
                        - applicationKey
                        - applicationSecret
                        - consumerKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        serverUrl:
                          type: string
                          format: uri
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        token: {}
                      required:
                        - token
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        organizationId: {}
                      required:
                        - organizationId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        keyId: {}
                        keySecret: {}
                      required:
                        - keyId
                        - keySecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        organizationSlug: {}
                      required:
                        - organizationSlug
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        accessToken: {}
                      required:
                        - accessToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        deployment: {}
                        app: {}
                      required:
                        - deployment
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        credentials:
                          type: object
                          properties:
                            token: {}
                            url: {}
                          required:
                            - token
                            - url
                          additionalProperties: {}
                      required:
                        - credentials
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        site: {}
                        organizationName: {}
                        apiKeyId: {}
                      required:
                        - site
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                        appKey: {}
                      required:
                        - apiKey
                        - appKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        region: {}
                        accountId: {}
                      required:
                        - region
                        - accountId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        projectName: {}
                        organization: {}
                      required:
                        - projectName
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        oktaDomain: {}
                        authMethod: {}
                        clientId: {}
                      required:
                        - oktaDomain
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                        privateKey: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        organization: {}
                        hostname: {}
                      required:
                        - organization
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                        auditToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        organization: {}
                        apiUrl:
                          type: string
                          format: uri
                      required:
                        - organization
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        accessToken: {}
                      required:
                        - accessToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        workspace: {}
                      required:
                        - workspace
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        teamId: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        cluster: {}
                        namespace: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        kubeconfig:
                          type: object
                          properties:
                            kubeconfig: {}
                          required:
                            - kubeconfig
                          additionalProperties: {}
                      required:
                        - kubeconfig
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        orgSlug: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        orgId: {}
                      required:
                        - orgId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        orgId: {}
                      required:
                        - orgId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        publicKey: {}
                        privateKey: {}
                      required:
                        - publicKey
                        - privateKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        tailnet: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientId: {}
                        clientSecret: {}
                      required:
                        - clientId
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        cloud: {}
                      required:
                        - cloud
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientId: {}
                        clientSecret: {}
                      required:
                        - clientId
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        tenantId: {}
                        clientId: {}
                      required:
                        - tenantId
                        - clientId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientSecret: {}
                      required:
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        consoleUrl: {}
                        siteIds: {}
                      required:
                        - consoleUrl
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        kibanaUrl: {}
                        elasticsearchUrl: {}
                      required:
                        - kibanaUrl
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                        basicAuth:
                          type: object
                          properties:
                            username: {}
                            password: {}
                          required:
                            - username
                            - password
                          additionalProperties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        fqdn: {}
                        apiKeyId: {}
                      required:
                        - fqdn
                        - apiKeyId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        hostname: {}
                        orgKey: {}
                      required:
                        - hostname
                        - orgKey
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        credentials:
                          type: object
                          properties:
                            apiId: {}
                            apiSecretKey: {}
                          required:
                            - apiId
                            - apiSecretKey
                          additionalProperties: {}
                      required:
                        - credentials
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        managerUrl: {}
                        indexerUrl: {}
                      required:
                        - managerUrl
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        managerCredentials:
                          type: object
                          properties:
                            username: {}
                            password: {}
                          required:
                            - username
                            - password
                          additionalProperties: {}
                        indexerCredentials:
                          type: object
                          properties:
                            username: {}
                            password: {}
                          required:
                            - username
                            - password
                          additionalProperties: {}
                      required:
                        - managerCredentials
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        credentials:
                          type: object
                          properties:
                            clientId: {}
                            clientSecret: {}
                          required:
                            - clientId
                            - clientSecret
                          additionalProperties: {}
                      required:
                        - credentials
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        tenantId: {}
                        clientId: {}
                      required:
                        - tenantId
                        - clientId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientSecret: {}
                      required:
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        serverUrl: {}
                      required:
                        - serverUrl
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        credentials:
                          type: object
                          properties:
                            clientId: {}
                            clientSecret: {}
                          required:
                            - clientId
                            - clientSecret
                          additionalProperties: {}
                      required:
                        - credentials
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        serverUrl: {}
                        groupId: {}
                      required:
                        - serverUrl
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                        credentials:
                          type: object
                          properties:
                            username: {}
                            password: {}
                          required:
                            - username
                            - password
                          additionalProperties: {}
                      required:
                        - apiKey
                        - credentials
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        subdomain: {}
                      required:
                        - subdomain
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        customerId: {}
                        adminEmail: {}
                      required:
                        - customerId
                        - adminEmail
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        serviceAccountKey: {}
                      required:
                        - serviceAccountKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        serverUrl: {}
                      required:
                        - serverUrl
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        oid: {}
                      required:
                        - oid
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        workspaceSlug: {}
                        databaseType: {}
                      required:
                        - workspaceSlug
                        - databaseType
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientId: {}
                        clientSecret: {}
                      required:
                        - clientId
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        region: {}
                      required:
                        - region
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiKey: {}
                      required:
                        - apiKey
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        organizationSlug: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        region: {}
                        organizationId: {}
                      required:
                        - region
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        apiToken: {}
                      required:
                        - apiToken
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        clientId: {}
                      required:
                        - clientId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientSecret: {}
                      required:
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        tenantRegion: {}
                        clientId: {}
                        projectId: {}
                      required:
                        - tenantRegion
                        - clientId
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties:
                        clientSecret: {}
                      required:
                        - clientSecret
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties:
                        url:
                          type: string
                          format: uri
                        description: {}
                      required:
                        - url
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
                - type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                    alias:
                      type: string
                      minLength: 1
                    config:
                      type: object
                      properties: {}
                      additionalProperties: {}
                    metadata:
                      nullable: true
                      type: object
                      additionalProperties: {}
                    secrets:
                      type: object
                      properties: {}
                      additionalProperties: {}
                  required:
                    - alias
                    - config
                    - secrets
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  provider:
                    type: string
                  providerLabel:
                    type: string
                  alias:
                    type: string
                  config:
                    type: object
                    additionalProperties: {}
                  metadata:
                    nullable: true
                    type: object
                    additionalProperties: {}
                  docsUrl:
                    type: string
                  secrets:
                    type: array
                    items: {}
                  isNew:
                    type: boolean
                required:
                  - id
                  - provider
                  - providerLabel
                  - alias
                  - config
                  - docsUrl
                  - secrets
                additionalProperties: false
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
        '403':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
        '409':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
        '412':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HttpError'
components:
  schemas:
    HttpError:
      type: object
      properties:
        statusCode:
          type: number
        code:
          type: string
        error:
          type: string
        message:
          type: string
      title: HttpError
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        A Tolmo API token, sent as `Authorization: Bearer <token>`. Either a
        user token (`usr_tok.*`, minted by `tolmo auth login`, scoped to your
        own permissions) or an org API token created in the Tolmo app, for CI
        and automation.

````