---
title: "Create Connection"
method: POST
path: "/v1/connection"
---

# Create Connection

`POST /v1/connection`

Import an existing connection after validation

## Request body

- object
  - `connector_config_id` string, required — The id of the connector config, starts with `ccfg_`
  - `metadata` object
  - `customer_id` string, required — The id of the customer in your application. Ensure it is unique for that customer.
  - `data` union, required — Connector specific data
    - ConnectorAcceloDiscriminatedConnectionSettings
      - `connector_name` 'accelo', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Accelo account (e.g., https://domain.api.accelo.com)
    - ConnectorAcmeApikeyDiscriminatedConnectionSettings
      - `connector_name` 'acme-apikey', required
      - `settings` object
        - `api_key` string, required
    - ConnectorAcmeOauth2DiscriminatedConnectionSettings
      - `connector_name` 'acme-oauth2', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorAdobeDiscriminatedConnectionSettings
      - `connector_name` 'adobe', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorAdyenDiscriminatedConnectionSettings
      - `connector_name` 'adyen', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `environment` string, required — The environment to use (e.g., live|test)
        - `resource` string, required — The resource to use for your various requests (e.g., https://kyc-(live|test).adyen.com)
    - ConnectorAircallDiscriminatedConnectionSettings
      - `connector_name` 'aircall', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorAmazonDiscriminatedConnectionSettings
      - `connector_name` 'amazon', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `extension` string, required — The domain extension for your Amazon account (e.g., com)
    - ConnectorApaleoDiscriminatedConnectionSettings
      - `connector_name` 'apaleo', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorAsanaDiscriminatedConnectionSettings
      - `connector_name` 'asana', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorAttioDiscriminatedConnectionSettings
      - `connector_name` 'attio', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorAuth0DiscriminatedConnectionSettings
      - `connector_name` 'auth0', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Auth0 account (e.g., https://domain.auth0.com)
    - ConnectorAutodeskDiscriminatedConnectionSettings
      - `connector_name` 'autodesk', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorAwsDiscriminatedConnectionSettings
      - `connector_name` 'aws', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your AWS account (e.g., https://domain.amazoncognito.com)
        - `extension` string, required — The domain extension of your AWS account (e.g., com)
        - `apiSubdomain` string, required — The API subdomain to the API you want to connect to (e.g., https://cognito-idp.us-east-2.amazonaws.com)
    - ConnectorBamboohrDiscriminatedConnectionSettings
      - `connector_name` 'bamboohr', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your BambooHR account (e.g., https://domain.bamboohr.com)
    - ConnectorBasecampDiscriminatedConnectionSettings
      - `connector_name` 'basecamp', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `appDetails` string, required — The details of your app (e.g., example-subdomain)
        - `accountId` string, required — Your Account ID (e.g., 5899981)
    - ConnectorBattlenetDiscriminatedConnectionSettings
      - `connector_name` 'battlenet', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `extension` string, required — The domain extension of your Battle.net account (e.g., com)
        - `apiDomain` string, required — The domain to where you will access your API (e.g., https://us.api.blizzard.com)
    - ConnectorBigcommerceDiscriminatedConnectionSettings
      - `connector_name` 'bigcommerce', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `storeHash` string, required — The store hash of your BigCommerce account (e.g., Example123)
        - `accountUuid` string, required — The account UUID of your BigCommerce account (e.g., 123e4567-e89b-12d3-a456-426614174000)
    - ConnectorBitbucketDiscriminatedConnectionSettings
      - `connector_name` 'bitbucket', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorBitlyDiscriminatedConnectionSettings
      - `connector_name` 'bitly', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorBlackbaudDiscriminatedConnectionSettings
      - `connector_name` 'blackbaud', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorBoldsignDiscriminatedConnectionSettings
      - `connector_name` 'boldsign', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorBoxDiscriminatedConnectionSettings
      - `connector_name` 'box', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorBraintreeDiscriminatedConnectionSettings
      - `connector_name` 'braintree', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorCalendlyDiscriminatedConnectionSettings
      - `connector_name` 'calendly', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorClickupDiscriminatedConnectionSettings
      - `connector_name` 'clickup', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorCloseDiscriminatedConnectionSettings
      - `connector_name` 'close', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorConfluenceDiscriminatedConnectionSettings
      - `connector_name` 'confluence', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorContentfulDiscriminatedConnectionSettings
      - `connector_name` 'contentful', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Contentful account (e.g., https://domain.contentful.com)
    - ConnectorContentstackDiscriminatedConnectionSettings
      - `connector_name` 'contentstack', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Contentstack account (e.g., https://domain.contentstack.com)
        - `appId` string, required — The app ID of your Contentstack account (e.g., example-subdomain)
        - `apiDomain` string, required — The domain to where you will access your API (e.g., https://eu-api.contentstack.com)
    - ConnectorCopperDiscriminatedConnectionSettings
      - `connector_name` 'copper', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorCorosDiscriminatedConnectionSettings
      - `connector_name` 'coros', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorDatevDiscriminatedConnectionSettings
      - `connector_name` 'datev', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorDeelDiscriminatedConnectionSettings
      - `connector_name` 'deel', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorDialpadDiscriminatedConnectionSettings
      - `connector_name` 'dialpad', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorDigitaloceanDiscriminatedConnectionSettings
      - `connector_name` 'digitalocean', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorDiscordDiscriminatedConnectionSettings
      - `connector_name` 'discord', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorDocusignDiscriminatedConnectionSettings
      - `connector_name` 'docusign', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorDropboxDiscriminatedConnectionSettings
      - `connector_name` 'dropbox', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorEbayDiscriminatedConnectionSettings
      - `connector_name` 'ebay', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorEgnyteDiscriminatedConnectionSettings
      - `connector_name` 'egnyte', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Egnyte account (e.g., https://domain.egnyte.com)
    - ConnectorEnvoyDiscriminatedConnectionSettings
      - `connector_name` 'envoy', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorEventbriteDiscriminatedConnectionSettings
      - `connector_name` 'eventbrite', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorExistDiscriminatedConnectionSettings
      - `connector_name` 'exist', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorFacebookDiscriminatedConnectionSettings
      - `connector_name` 'facebook', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorFactorialDiscriminatedConnectionSettings
      - `connector_name` 'factorial', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorFigmaDiscriminatedConnectionSettings
      - `connector_name` 'figma', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorFitbitDiscriminatedConnectionSettings
      - `connector_name` 'fitbit', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorFortnoxDiscriminatedConnectionSettings
      - `connector_name` 'fortnox', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorFreshbooksDiscriminatedConnectionSettings
      - `connector_name` 'freshbooks', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorFrontDiscriminatedConnectionSettings
      - `connector_name` 'front', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGithubDiscriminatedConnectionSettings
      - `connector_name` 'github', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGitlabDiscriminatedConnectionSettings
      - `connector_name` 'gitlab', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGongDiscriminatedConnectionSettings
      - `connector_name` 'gong', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `api_base_url_for_customer` string, required — The base URL of your Gong account (e.g., example)
    - ConnectorGoogleCalendarDiscriminatedConnectionSettings
      - `connector_name` 'google-calendar', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGoogleDocsDiscriminatedConnectionSettings
      - `connector_name` 'google-docs', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGoogleDriveDiscriminatedConnectionSettings
      - `connector_name` 'google-drive', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGoogleMailDiscriminatedConnectionSettings
      - `connector_name` 'google-mail', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGoogleSheetDiscriminatedConnectionSettings
      - `connector_name` 'google-sheet', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGorgiasDiscriminatedConnectionSettings
      - `connector_name` 'gorgias', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Gorgias account (e.g., https://domain.gorgias.com)
    - ConnectorGrainDiscriminatedConnectionSettings
      - `connector_name` 'grain', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGumroadDiscriminatedConnectionSettings
      - `connector_name` 'gumroad', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorGustoDiscriminatedConnectionSettings
      - `connector_name` 'gusto', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorHarvestDiscriminatedConnectionSettings
      - `connector_name` 'harvest', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `appDetails` string, required — The details of your app (e.g., example-subdomain)
    - ConnectorHighlevelDiscriminatedConnectionSettings
      - `connector_name` 'highlevel', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorHubspotDiscriminatedConnectionSettings
      - `connector_name` 'hubspot', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorInstagramDiscriminatedConnectionSettings
      - `connector_name` 'instagram', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorIntercomDiscriminatedConnectionSettings
      - `connector_name` 'intercom', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorJiraDiscriminatedConnectionSettings
      - `connector_name` 'jira', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorKeapDiscriminatedConnectionSettings
      - `connector_name` 'keap', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorLeverDiscriminatedConnectionSettings
      - `connector_name` 'lever', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorLinearDiscriminatedConnectionSettings
      - `connector_name` 'linear', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorLinkedinDiscriminatedConnectionSettings
      - `connector_name` 'linkedin', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorLinkhutDiscriminatedConnectionSettings
      - `connector_name` 'linkhut', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorMailchimpDiscriminatedConnectionSettings
      - `connector_name` 'mailchimp', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `dc` string, required — The data center for your account (e.g., us6)
    - ConnectorMiroDiscriminatedConnectionSettings
      - `connector_name` 'miro', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorMondayDiscriminatedConnectionSettings
      - `connector_name` 'monday', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorMuralDiscriminatedConnectionSettings
      - `connector_name` 'mural', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorNamelyDiscriminatedConnectionSettings
      - `connector_name` 'namely', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `company` string, required — The name of your Namely company (e.g., example)
    - ConnectorNationbuilderDiscriminatedConnectionSettings
      - `connector_name` 'nationbuilder', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `accountId` string, required — The account ID of your NationBuilder account (e.g., example-subdomain)
    - ConnectorNetsuiteDiscriminatedConnectionSettings
      - `connector_name` 'netsuite', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `accountId` string, required — The account ID of your NetSuite account (e.g., tstdrv231585)
    - ConnectorNotionDiscriminatedConnectionSettings
      - `connector_name` 'notion', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorOdooDiscriminatedConnectionSettings
      - `connector_name` 'odoo', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `serverUrl` string, required — The domain of your Odoo account (e.g., https://example-subdomain)
    - ConnectorOktaDiscriminatedConnectionSettings
      - `connector_name` 'okta', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Okta account (e.g., https://domain.okta.com)
    - ConnectorOsuDiscriminatedConnectionSettings
      - `connector_name` 'osu', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorOuraDiscriminatedConnectionSettings
      - `connector_name` 'oura', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorOutreachDiscriminatedConnectionSettings
      - `connector_name` 'outreach', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorPagerdutyDiscriminatedConnectionSettings
      - `connector_name` 'pagerduty', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorPandadocDiscriminatedConnectionSettings
      - `connector_name` 'pandadoc', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorPayfitDiscriminatedConnectionSettings
      - `connector_name` 'payfit', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorPaypalDiscriminatedConnectionSettings
      - `connector_name` 'paypal', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorPennylaneDiscriminatedConnectionSettings
      - `connector_name` 'pennylane', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorPinterestDiscriminatedConnectionSettings
      - `connector_name` 'pinterest', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorPipedriveDiscriminatedConnectionSettings
      - `connector_name` 'pipedrive', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `api_domain` string, required — The API URL of your Pipedrive account (e.g., example)
    - ConnectorPodiumDiscriminatedConnectionSettings
      - `connector_name` 'podium', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `apiVersion` string, required — The API version of your Podium account (e.g., example-subdomain)
    - ConnectorProductboardDiscriminatedConnectionSettings
      - `connector_name` 'productboard', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorQualtricsDiscriminatedConnectionSettings
      - `connector_name` 'qualtrics', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `subdomain` string, required — The subdomain of your Qualtrics account (e.g., https://domain.qualtrics.com)
    - ConnectorQuickbooksDiscriminatedConnectionSettings
      - `connector_name` 'quickbooks', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorRedditDiscriminatedConnectionSettings
      - `connector_name` 'reddit', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorSageDiscriminatedConnectionSettings
      - `connector_name` 'sage', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorSalesforceDiscriminatedConnectionSettings
      - `connector_name` 'salesforce', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
        - `instance_url` string, required — The instance URL of your Salesforce account (e.g., example)
    - ConnectorSalesloftDiscriminatedConnectionSettings
      - `connector_name` 'salesloft', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorSegmentDiscriminatedConnectionSettings
      - `connector_name` 'segment', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorServicem8DiscriminatedConnectionSettings
      - `connector_name` 'servicem8', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
    - ConnectorServicenowDiscriminatedConnectionSettings
      - `connector_name` 'servicenow', required
      - `settings` object
        - `oauth` object, required
          - `credentials` object — Output of the postConnect hook for oauth2 connectors
            - `access_token` string, required
            - `client_id` string — Client ID used for the connection
            - `scope` string
            - `refresh_token` string
            - `expires_in` number
            - `expires_at` string
            - `token_type` string
            - `raw` object
          - `created_at` string
          - `updated_at` string
          - `last_fetched_at` string
          - `metadata` object, nullable
        - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
- … truncated; see the full OpenAPI document linked below

## Response `200`

Successful response

- union
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'accelo', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your Accelo account (e.g., https://domain.api.accelo.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'acme-apikey', required
    - `settings` object
      - `api_key` string, required
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'acme-oauth2', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'adobe', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'adyen', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `environment` string, required — The environment to use (e.g., live|test)
      - `resource` string, required — The resource to use for your various requests (e.g., https://kyc-(live|test).adyen.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'aircall', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'amazon', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `extension` string, required — The domain extension for your Amazon account (e.g., com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'apaleo', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'asana', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'attio', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'auth0', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your Auth0 account (e.g., https://domain.auth0.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'autodesk', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'aws', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your AWS account (e.g., https://domain.amazoncognito.com)
      - `extension` string, required — The domain extension of your AWS account (e.g., com)
      - `apiSubdomain` string, required — The API subdomain to the API you want to connect to (e.g., https://cognito-idp.us-east-2.amazonaws.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'bamboohr', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your BambooHR account (e.g., https://domain.bamboohr.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'basecamp', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `appDetails` string, required — The details of your app (e.g., example-subdomain)
      - `accountId` string, required — Your Account ID (e.g., 5899981)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'battlenet', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `extension` string, required — The domain extension of your Battle.net account (e.g., com)
      - `apiDomain` string, required — The domain to where you will access your API (e.g., https://us.api.blizzard.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'bigcommerce', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `storeHash` string, required — The store hash of your BigCommerce account (e.g., Example123)
      - `accountUuid` string, required — The account UUID of your BigCommerce account (e.g., 123e4567-e89b-12d3-a456-426614174000)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'bitbucket', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'bitly', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'blackbaud', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'boldsign', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'box', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'braintree', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'calendly', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'clickup', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'close', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'confluence', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'contentful', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your Contentful account (e.g., https://domain.contentful.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'contentstack', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your Contentstack account (e.g., https://domain.contentstack.com)
      - `appId` string, required — The app ID of your Contentstack account (e.g., example-subdomain)
      - `apiDomain` string, required — The domain to where you will access your API (e.g., https://eu-api.contentstack.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'copper', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'coros', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'datev', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'deel', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'dialpad', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'digitalocean', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'discord', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'docusign', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'dropbox', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'ebay', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'egnyte', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your Egnyte account (e.g., https://domain.egnyte.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'envoy', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'eventbrite', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'exist', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'facebook', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'factorial', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'figma', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'fitbit', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'fortnox', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'freshbooks', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'front', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'github', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'gitlab', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'gong', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `api_base_url_for_customer` string, required — The base URL of your Gong account (e.g., example)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'google-calendar', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'google-docs', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'google-drive', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'google-mail', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'google-sheet', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'gorgias', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `subdomain` string, required — The subdomain of your Gorgias account (e.g., https://domain.gorgias.com)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'grain', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'gumroad', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'gusto', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'harvest', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
      - `appDetails` string, required — The details of your app (e.g., example-subdomain)
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'highlevel', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'hubspot', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'instagram', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'intercom', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'jira', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
          - `client_id` string — Client ID used for the connection
          - `scope` string
          - `refresh_token` string
          - `expires_in` number
          - `expires_at` string
          - `token_type` string
          - `raw` object
        - `created_at` string
        - `updated_at` string
        - `last_fetched_at` string
        - `metadata` object, nullable
      - `access_token` string — Same as oauth.credentials.access_token, but more convenient to access. Optional for backward compatibility until we remove the oauth field
  - object
    - `id` string, required
    - `customer_id` string, nullable, required
    - `connector_config_id` string, nullable, required
    - `integration_id` string, nullable, required
    - `status_message` string, nullable
    - `created_at` string, required
    - `updated_at` string, required
    - `display_name` string, nullable, required
    - `disabled` boolean, nullable, required
    - `status` 'healthy' | 'disconnected' | 'error' | 'manual' | 'unknown' | 'null', nullable
    - `metadata` object, nullable — JSON object can can be used to associate arbitrary metadata to avoid needing a separate 1-1 table just for simple key values in your application. During updates this object will be shallowly merged
    - `connector_name` 'keap', required
    - `settings` object
      - `oauth` object, required
        - `credentials` object — Output of the postConnect hook for oauth2 connectors
          - `access_token` string, required
- … truncated; see the full OpenAPI document linked below

## Other responses

- `400` — Invalid input data
- `401` — Authorization not provided
- `403` — Insufficient access
- `500` — Internal server error

## Changes

- **2025-08-27** `d1701d4f03bd` — 1 breaking, 3 info
  - added `#/components/schemas/connector.slack-agent.discriminated_connection_settings` to the `allOf[subschema #2]/` response property `oneOf` list for the response status `200`
  - added `slack-agent` discriminator mapping keys to the `data` request property
  - added `#/components/schemas/connector.slack-agent.discriminated_connection_settings` to the `data` request property `oneOf` list
  - added `slack-agent` discriminator mapping keys to the `allOf[subschema #2]/` response property for the response status `200`
- **2025-08-26** `8939526af685` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/openintegrations/apis/openint-api/changes/v1/connection/post.md)

---

[API](https://skmtc.dev/openintegrations/apis/openint-api.md) · [All operations](https://skmtc.dev/openintegrations/apis/openint-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/openintegrations/openint-api/revisions/d1701d4f03bd/schema)
