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

# addConnectorToTenant

> POST /api/connectors
Add a connector to this workspace with initial configuration



## OpenAPI

````yaml /api-reference/openapi.json post /api/connectors
openapi: 3.0.3
info:
  title: Parable API
  description: >-
    The REST API for your Parable workspace: manage connectors and taps, explore
    your data catalog, upload artifacts, and administer users and roles.
  version: v1
servers:
  - url: https://api.askparable.com
    description: Production
security: []
paths:
  /api/connectors:
    post:
      tags:
        - connectors
      summary: addConnectorToTenant
      description: |-
        POST /api/connectors
        Add a connector to this workspace with initial configuration
      operationId: ConnectorsAddConnectorToTenantHandler
      parameters:
        - description: >-
            Workspace slug. Overrides subdomain-based workspace resolution when
            provided.
          in: header
          name: X-Tenant
          required: false
          schema:
            example: acme
            type: string
        - description: Optional request correlation ID echoed back in the response.
          in: header
          name: X-Request-ID
          required: false
          schema:
            example: 550e8400-e29b-41d4-a716-446655440000
            format: uuid
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddConnectorToTenantInput'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/AddConnectorToTenantPayload'
                  links:
                    $ref: '#/components/schemas/ResponseLinks'
                  meta:
                    $ref: '#/components/schemas/ResponseMeta'
                required:
                  - data
                  - meta
                type: object
          description: Successful response
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Bad request
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal server error
      security:
        - bearerAuth: []
components:
  schemas:
    AddConnectorToTenantInput:
      properties:
        authenticationConfig:
          description: A Parable Schema in JSON
          type: object
        authenticationStrategyId:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        connectorId:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        groupingId:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        idempotencyKey:
          type: string
        ingestionConfig:
          description: A Parable Schema in JSON
          type: object
        name:
          description: An objects name
          type: string
      required:
        - connectorId
        - groupingId
        - authenticationStrategyId
        - authenticationConfig
        - ingestionConfig
      type: object
    AddConnectorToTenantPayload:
      description: Payload returned when adding a connector to a workspace
      properties:
        authenticationConfig:
          description: A Parable Schema in JSON
          type: object
        authenticationStrategy:
          $ref: '#/components/schemas/ConnectorAuthStrategy'
        createdAt:
          description: ISO8601 datetime string
          type: string
        credentialMetadataId:
          description: the result of setting the connector config
          type: string
        id:
          description: The id of the newly created workspace connector instance
          type: string
        ingestionConfig:
          description: A Parable Schema in JSON
          type: object
        message:
          description: a message related to setting the connector config
          type: string
        name:
          description: An objects name
          type: string
        success:
          description: was setting the connector config successful
          type: boolean
        tenant:
          $ref: '#/components/schemas/Tenant'
      required:
        - id
        - tenant
        - authenticationStrategy
        - authenticationConfig
        - ingestionConfig
        - createdAt
        - success
        - credentialMetadataId
        - message
      type: object
    ResponseLinks:
      properties:
        first:
          nullable: true
          type: string
        last:
          nullable: true
          type: string
        next:
          nullable: true
          type: string
        prev:
          nullable: true
          type: string
      type: object
    ResponseMeta:
      properties:
        requestId:
          description: Unique identifier for the request
          type: string
        totalCount:
          description: Total count of items for paginated responses
          nullable: true
          type: integer
      required:
        - requestId
      type: object
    Error:
      properties:
        error:
          type: string
      type: object
    ConnectorAuthStrategy:
      description: |-
        Authentication strategy row for a connector.
        Each strategy is persisted as its own record to support stable identity.
      properties:
        addressingConfig:
          $ref: '#/components/schemas/AddressingConfig'
          description: >-
            Per-strategy API addressing configuration. Overrides the
            connector-level

            addressingConfig when this strategy is active. Variables with
            source=user_input

            must resolve from configSchema, this strategy's
            ingestionConfigSchema, or the

            connector's ingestionConfigSchema.
        apiKeyConfig:
          $ref: '#/components/schemas/ApiKeyAuthConfig'
          description: API key settings (when type = API_KEY_HEADER or API_KEY_QUERY)
        basicConfig:
          $ref: '#/components/schemas/BasicAuthConfig'
          description: Basic auth settings (when type = BASIC)
        bearerConfig:
          $ref: '#/components/schemas/BearerAuthConfig'
          description: Bearer token settings (when type = BEARER)
        configSchema:
          description: Strategy-specific customer config schema
          type: object
        createdAt:
          description: ISO8601 datetime string
          type: string
        createdBy:
          description: UUID v4 string as base62
          type: string
        defaultBaseUrl:
          description: >-
            Per-strategy base URL override. Takes precedence over the
            connector-level

            defaultBaseUrl when this strategy is active.
          type: string
        defaultScopes:
          description: Default OAuth2 scopes for this auth strategy
          items:
            type: string
          type: array
        delegatedUserField:
          description: Ingestion config field name for delegated user email (DWD)
          type: string
        docs:
          description: >-
            Per-strategy setup documentation (Markdown). When set, the web-app
            docs pane

            prefers this over the vendor-grouping docs for the selected auth
            method.
          type: string
        extraHeaders:
          description: Additional headers to include in all authenticated requests
          type: object
        hook:
          description: Optional hook reference executed for auth strategy behavior
          type: string
        id:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        ingestionConfigSchema:
          description: >-
            Per-strategy ingestion config schema. When set, overrides the
            connector-level

            ingestionConfigSchema for workspace connectors using this auth
            strategy.
          type: object
        label:
          description: Display label for this strategy in setup flows
          type: string
        oauth2Config:
          $ref: '#/components/schemas/OAuth2AuthConfig'
          description: >-
            OAuth2 settings (when type = OAUTH2_CLIENT_CREDENTIALS or
            OAUTH2_REFRESH)
        preEncodedBasicConfig:
          $ref: '#/components/schemas/PreEncodedBasicAuthConfig'
          description: >-
            Pre-encoded basic auth settings (when type = BASIC with pre-encoded
            token)
        type:
          $ref: '#/components/schemas/AuthMethodEnum'
          description: Authentication method
        updatedAt:
          description: ISO8601 datetime string
          type: string
        updatedBy:
          description: UUID v4 string as base62
          type: string
      required:
        - id
        - createdAt
        - createdBy
        - updatedAt
        - updatedBy
        - type
      type: object
    Tenant:
      properties:
        createdAt:
          description: ISO8601 datetime string
          type: string
        createdBy:
          description: UUID v4 string as base62
          type: string
        id:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        logo:
          description: Workspace logo for branding.
          type: object
        name:
          description: An objects name
          type: string
        slug:
          description: A URL friendly version of a string
          type: string
        updatedAt:
          description: ISO8601 datetime string
          type: string
        updatedBy:
          description: UUID v4 string as base62
          type: string
      required:
        - id
        - createdAt
        - createdBy
        - updatedAt
        - updatedBy
        - name
        - slug
      type: object
    AddressingConfig:
      description: >-
        API addressing configuration for a connector or auth strategy.

        Defines the URL template and how each template variable is resolved at
        runtime.
      properties:
        basePath:
          description: >-
            Base path appended to host (e.g. /ex/jira/{cloudId}). Must start
            with /.
          type: string
        host:
          description: >-
            API hostname. May contain {var} placeholders resolved from typed
            variables.
          type: string
        scheme:
          description: URL scheme. Defaults to https when omitted by runtime consumers.
          type: string
        variables:
          description: Typed declarations for {var} placeholders in host and basePath.
          items:
            $ref: '#/components/schemas/AddressingVariable'
          type: array
      type: object
    ApiKeyAuthConfig:
      description: Configuration for API key authentication.
      properties:
        headerName:
          description: Header name for API_KEY_HEADER (e.g., 'X-API-Key')
          type: string
        queryParam:
          description: Query parameter name for API_KEY_QUERY
          type: string
      type: object
    BasicAuthConfig:
      description: Configuration for HTTP basic authentication.
      properties:
        passwordField:
          description: Config field path for password (e.g., 'auth.apiToken')
          type: string
        passwordValue:
          description: >-
            Static password when the API expects a fixed value (e.g. BambooHR
            HTTP Basic uses x).

            Applied when decrypted credentials omit the password field.
          type: string
        usernameField:
          description: Config field path for username (e.g., 'auth.email')
          type: string
      required:
        - usernameField
        - passwordField
      type: object
    BearerAuthConfig:
      description: Configuration for bearer token authentication.
      properties:
        headerName:
          description: 'Header name (default: ''Authorization'')'
          type: string
        tokenField:
          description: 'Token Field (defaults to: ''token'')'
          type: string
        tokenPrefix:
          description: 'Token prefix (default: ''Bearer'')'
          type: string
      type: object
    OAuth2AuthConfig:
      description: Configuration for OAuth 2.0 authentication flows.
      properties:
        audienceParam:
          description: Audience parameter (for APIs that require it)
          type: string
        authorizeUrl:
          description: Authorization URL (for authorization code flow)
          type: string
        grantType:
          $ref: '#/components/schemas/OAuthGrantType'
          description: OAuth2 grant type (e.g. client_credentials, account_credentials)
        passwordField:
          description: Credential field name for password (basic_credentials auth method)
          type: string
        scopes:
          description: >-
            OAuth scopes for the token request (space-joined in the token POST
            body per RFC 6749)
          items:
            type: string
          type: array
        tokenEndpoint:
          description: Token endpoint URL
          type: string
        tokenEndpointAuthMethod:
          $ref: '#/components/schemas/TokenEndpointAuthMethod'
          description: How credentials are sent to the token endpoint
        tokenEndpointExtraParams:
          description: Maps token request param names to credential field names
          type: object
        tokenPrefix:
          description: 'Authorization header prefix (default: Bearer)'
          type: string
        tokenRefreshCodes:
          description: >-
            HTTP status codes on API responses that trigger an OAuth2
            access-token

            refresh and a single retry of the same request (client-credentials
            flow).

            When this field is omitted, ingestion defaults to HTTP 401 as the
            only

            refresh trigger (equivalent to a list containing 401), so long
            paginated

            syncs can recover after token TTL (for example Microsoft Graph).

            Pass an explicit empty list to disable HTTP-triggered refresh;
            proactive

            refresh near local token expiry may still apply.
          items:
            format: double
            type: number
          type: array
        tokenResponsePath:
          description: 'Dot-separated path to token in response JSON (default: access_token)'
          type: string
        usernameField:
          description: Credential field name for username (basic_credentials auth method)
          type: string
      required:
        - tokenEndpoint
      type: object
    PreEncodedBasicAuthConfig:
      description: |-
        Configuration for pre-encoded HTTP basic authentication.
        Uses an already-encoded Base64 token instead of username:password.
      properties:
        tokenField:
          description: Credential field name for the pre-encoded Base64 token
          type: string
      required:
        - tokenField
      type: object
    AuthMethodEnum:
      description: Authentication method for API calls.
      enum:
        - bearer
        - basic
        - api_key_header
        - api_key_query
        - oauth2_client_credentials
        - oauth2_refresh
        - google_domain_wide_delegation
        - oauth2_jwt_bearer
        - oauth2_auth_code_pkce
        - session_exchange
        - session_exchange_jwt
        - session_exchange_password
        - custom
      type: string
    AddressingVariable:
      description: A single template variable in an AddressingConfig.
      properties:
        name:
          description: Name of the {var} placeholder in host or basePath.
          type: string
        oauthResponsePath:
          description: |-
            Dot-separated path into the OAuth token response body.
            Required when source = oauth_response.
          type: string
        required:
          description: Whether a missing value for this variable should halt the sync.
          type: boolean
        source:
          description: 'Resolution source: user_input, oauth_response, or static.'
          type: string
      required:
        - name
        - source
      type: object
    OAuthGrantType:
      description: OAuth 2.0 grant type for token requests.
      enum:
        - client_credentials
        - authorization_code
        - refresh_token
        - account_credentials
      type: string
    TokenEndpointAuthMethod:
      description: How client credentials are sent to the OAuth2 token endpoint.
      enum:
        - client_secret_basic
        - client_secret_post
        - none
        - basic_credentials
      type: string
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http

````