> ## 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.

# parableVendors

> List vendors with pagination and optional search.
Case-insensitive search on name, slug, and description.
Default limit: 50, max limit: 250.
Default ordering: sort_order, name.



## OpenAPI

````yaml /api-reference/openapi.json get /api/vendors/parable-vendors
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/vendors/parable-vendors:
    get:
      tags:
        - vendors
      summary: parableVendors
      description: |-
        List vendors with pagination and optional search.
        Case-insensitive search on name, slug, and description.
        Default limit: 50, max limit: 250.
        Default ordering: sort_order, name.
      operationId: VendorsParableVendorsHandler
      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
        - in: query
          name: search
          required: false
          schema:
            type: string
        - in: query
          name: limit
          required: false
          schema:
            format: double
            type: number
        - in: query
          name: offset
          required: false
          schema:
            format: double
            type: number
        - in: query
          name: excludeConnected
          required: false
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/VendorsPaginatedResponse'
                  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
components:
  schemas:
    VendorsPaginatedResponse:
      description: |-
        ParableVendor API Types
        These types are used for the connector catalog browsing experience.
        They wrap the DB types with computed fields for frontend display.
        Paginated response for listing parable vendors.
      properties:
        items:
          description: The paginated vendor records
          items:
            $ref: '#/components/schemas/ParableVendor'
          type: array
        limit:
          description: The limit used for this request
          format: int64
          type: integer
        offset:
          description: The offset used for this request
          format: int64
          type: integer
        total:
          description: Total count of all matching records (for pagination UI)
          format: int64
          type: integer
      required:
        - items
        - total
        - limit
        - offset
      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
    ParableVendor:
      description: |-
        Vendor for API responses - includes computed fields.
        Represents a top-level company/product family in the connector catalog.
      properties:
        description:
          type: string
        groupings:
          description: Top-level groupings under this vendor
          items:
            $ref: '#/components/schemas/ParableVendorGrouping'
          type: array
        id:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        logo:
          description: Logo metadata for display.
          type: object
        name:
          description: An objects name
          type: string
        slug:
          description: A URL friendly version of a string
          type: string
        sortOrder:
          description: >-
            Signed 64-bit integer; range bounded by JavaScript's safe-integer
            ceiling.
          format: int64
          type: integer
      required:
        - id
        - slug
        - name
        - sortOrder
        - groupings
      type: object
    ParableVendorGrouping:
      description: >-
        Grouping for API responses - includes computed fields.

        Represents a node in the connector hierarchy (can be organizational or a
        leaf connector).
      properties:
        breadcrumbs:
          description: >-
            Full path for breadcrumbs (e.g., ['Atlassian', 'Jira', 'Jira
            Cloud'])
          items:
            type: string
          type: array
        connectorId:
          description: |-
            Reference to Connector entity for leaf groupings.
            Null for organizational groupings (folders).
          type: string
        description:
          type: string
        docs:
          description: |-
            Documentation content (Markdown).
            Loaded from docsPath if set.
          type: string
        externalVersion:
          type: string
        groupingPath:
          description: >-
            Slug path from vendor root to this grouping (e.g.
            'jira/jira-cloud').

            Used to build config URLs on the frontend. Null when not needed.
          type: string
        groupings:
          description: Child groupings
          items:
            $ref: '#/components/schemas/ParableVendorGrouping'
          type: array
        id:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        ingestionConfigSchema:
          description: |-
            If connector ID is set, then this value will be set to the ingestion
            config schema required for that connector
          type: object
        integrationClass:
          $ref: '#/components/schemas/IntegrationClassEnum'
          description: >-
            High-level integration class of the connector for leaf groupings

            (e.g. API pull vs STREAMING push). Null for organizational
            groupings.

            Drives the configuration flow variant in the frontend.
        isLeaf:
          description: |-
            Whether this is a leaf node (can be configured).
            Computed: true if connectorId is set.
          type: boolean
        logo:
          description: Logo for this grouping. Falls back to vendor logo when not set.
          type: object
        name:
          description: An objects name
          type: string
        parableVersion:
          type: string
        parent:
          $ref: '#/components/schemas/ParableVendorGrouping'
          description: Parent grouping (null if top-level under vendor)
        priority:
          $ref: '#/components/schemas/ConnectorPriorityEnum'
          description: >-
            Priority assigned to this grouping for the current workspace, if
            any.

            Set by Parable admins via the admin API.
        protocolType:
          description: >-
            Push-protocol type of the connector for STREAMING leaf groupings

            (e.g. "otlp", "webhook"). Null for pull connectors and
            organizational

            groupings. Drives protocol-specific endpoint setup instructions in
            the

            frontend (e.g. OTLP exporter environment variables).
          type: string
        releaseStage:
          $ref: '#/components/schemas/ParableReleaseStageEnum'
        slug:
          description: A URL friendly version of a string
          type: string
        sortOrder:
          description: >-
            Signed 64-bit integer; range bounded by JavaScript's safe-integer
            ceiling.
          format: int64
          type: integer
        supportedAuthStrategies:
          description: |-
            If connector ID is set, then this value will be set to the supported
            auth strategies required for that connector
          items:
            $ref: '#/components/schemas/ConnectorAuthStrategy'
          type: array
        supportedInboundAuthStrategies:
          description: >-
            If connector ID is set and the connector is a push (STREAMING)
            connector,

            the inbound sender-verification strategies it supports. The
            workspace picks

            one and supplies its configSchema credentials at setup.
          items:
            $ref: '#/components/schemas/InboundAuthStrategy'
          type: array
        vendor:
          $ref: '#/components/schemas/ParableVendor'
          description: Vendor this belongs to
      required:
        - id
        - slug
        - name
        - releaseStage
        - sortOrder
        - vendor
        - groupings
        - isLeaf
        - breadcrumbs
      type: object
    IntegrationClassEnum:
      description: >-
        High-level integration class determining how data is extracted from a
        connector.

        Drives protocol module selection in the research pipeline and transport
        handler

        routing in the ingestion engine.
      enum:
        - api
        - database
        - file
        - streaming
        - meta_tool
        - custom
      type: string
    ConnectorPriorityEnum:
      description: Priority level assigned to a vendor grouping for a specific workspace.
      enum:
        - required
        - suggested
      type: string
    ParableReleaseStageEnum:
      description: |-
        Release stage for connector offerings.
        Determines visibility and access in the connector catalog.
      enum:
        - ga
        - early_access
        - invite_access
        - coming_soon
      type: string
    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
    InboundAuthStrategy:
      description: |-
        Inbound sender verification strategy for a collector (push-ingestion)
        connector. Web projection; see the db type for main reference.
      properties:
        configSchema:
          description: >-
            JSON Schema for the verification credentials the workspace must
            supply at

            connector setup (secret fields use "x-secret": true)
          type: object
        createdAt:
          description: ISO8601 datetime string
          type: string
        createdBy:
          description: UUID v4 string as base62
          type: string
        handshakeKind:
          $ref: '#/components/schemas/InboundHandshakeKindEnum'
          description: >-
            Subscription-time validation dance performed when the workspace
            registers the

            ingest URL in the vendor console
        id:
          description: UUID v4 with automatic base62 encoding for client-facing APIs
          type: string
        label:
          description: Display label for this strategy in setup flows
          type: string
        replayWindowSeconds:
          description: Maximum accepted age, in seconds, of the timestampHeader value
          format: int64
          type: integer
        signatureBase:
          description: >-
            Template for the string the sender signs. Placeholders: {timestamp},
            {body}.

            Example (Slack): "v0:{timestamp}:{body}"
          type: string
        signatureHeader:
          description: >-
            Header carrying the sender's signature (when verificationType =
            HMAC_SHA256)
          type: string
        timestampHeader:
          description: Header carrying the sender's request timestamp for replay protection
          type: string
        updatedAt:
          description: ISO8601 datetime string
          type: string
        updatedBy:
          description: UUID v4 string as base62
          type: string
        verificationType:
          $ref: '#/components/schemas/InboundVerificationTypeEnum'
          description: How the collector verifies the sender of a pushed payload
      required:
        - id
        - createdAt
        - createdBy
        - updatedAt
        - updatedBy
        - verificationType
        - handshakeKind
      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
    InboundHandshakeKindEnum:
      description: |-
        Subscription-time validation dance a webhook provider performs when the
        workspace registers the ingest URL in the vendor console. The collector
        implements each kind exactly once; the set is deliberately bounded.
      enum:
        - none
        - slack_url_verification
        - ms_graph_validation_token
      type: string
    InboundVerificationTypeEnum:
      description: >-
        How the collector verifies a push sender (inbound requests to

        incoming.parable.work). The mirror image of AuthMethodEnum, which covers

        outbound API calls the platform makes. Each kind is implemented exactly
        once

        in the collector service; adding a webhook provider that reuses an
        existing

        kind is seed data only.
      enum:
        - hmac_sha256
        - bearer_token
        - device_key
        - none
      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

````