Structify connector_catalog API

The connector_catalog API from Structify — 3 operation(s) for connector_catalog.

OpenAPI Specification

structify-connector-catalog-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  contact:
    email: team@structify.ai
    name: Structify Team
  description: Every enterprise's data team.
  license:
    name: Discuss directly with founders for license.
    url: https://structify.ai
  title: Structify account connector_catalog API
  version: 0.1.0
servers:
- description: Production server
  url: https://api.structify.ai
- description: Local server
  url: http://localhost:8080
security:
- api_key: []
- session_token: []
tags:
- name: connector_catalog
paths:
  /connector-catalog:
    get:
      operationId: list_connector_catalog
      parameters:
      - in: query
        name: offset
        required: false
        schema:
          format: int64
          type: integer
      - in: query
        name: limit
        required: false
        schema:
          format: int64
          type: integer
      - description: Optional search query to filter by name, slug, or category (case-insensitive substring match)
        in: query
        name: search
        required: false
        schema:
          nullable: true
          type: string
      - description: Optional category filter (exact match against any element in the categories array)
        in: query
        name: categories
        required: false
        schema:
          items:
            type: string
          type: array
      - description: Include inactive auth methods (admin only)
        in: query
        name: include_inactive
        required: false
        schema:
          type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListConnectorCatalogResponse'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: List all connector catalog entries with their auth methods and logos
      tags:
      - connector_catalog
  /connector-catalog/{slug}:
    get:
      operationId: get_connector_catalog
      parameters:
      - in: path
        name: slug
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorCatalogWithMethods'
          description: ''
        '404':
          description: Connector catalog not found
      security:
      - api_key: []
      - session_token: []
      summary: Get a connector catalog entry by slug with its active auth methods
      tags:
      - connector_catalog
  /connector-catalog/{slug}/logo:
    get:
      operationId: get_connector_logo
      parameters:
      - in: path
        name: slug
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/octet-stream:
              schema:
                format: binary
                type: string
          description: Connector logo bytes
        '404':
          description: No logo exists for this slug
      tags:
      - connector_catalog
components:
  schemas:
    ConnectorCredentialFieldId:
      format: uuid
      type: string
    ConnectorCatalogCategoryCount:
      properties:
        category:
          type: string
        count:
          format: int64
          type: integer
      required:
      - category
      - count
      type: object
    ListConnectorCatalogResponse:
      properties:
        category_counts:
          items:
            $ref: '#/components/schemas/ConnectorCatalogCategoryCount'
          type: array
        items:
          items:
            $ref: '#/components/schemas/ConnectorCatalogWithMethods'
          type: array
        total_count:
          format: int64
          type: integer
      required:
      - items
      - total_count
      - category_counts
      type: object
    ConnectorAuthMethodWithFields:
      allOf:
      - $ref: '#/components/schemas/ConnectorAuthMethod'
      - properties:
          credential_fields:
            items:
              $ref: '#/components/schemas/ConnectorCredentialField'
            type: array
          scopes:
            items:
              $ref: '#/components/schemas/ConnectorAuthMethodScope'
            type: array
        required:
        - credential_fields
        - scopes
        type: object
    ConnectorCatalog:
      properties:
        categories:
          items:
            nullable: true
            type: string
          type: array
        created_at:
          format: date-time
          type: string
        description:
          nullable: true
          type: string
        enterprise_only:
          type: boolean
        id:
          $ref: '#/components/schemas/ConnectorCatalogId'
        name:
          type: string
        onboarding_priority:
          format: int32
          nullable: true
          type: integer
        priority:
          format: int32
          nullable: true
          type: integer
        slug:
          type: string
        updated_at:
          format: date-time
          type: string
      required:
      - id
      - slug
      - name
      - categories
      - created_at
      - updated_at
      - enterprise_only
      type: object
    ConnectorCredentialField:
      properties:
        auth_method_id:
          $ref: '#/components/schemas/ConnectorAuthMethodId'
        created_at:
          format: date-time
          type: string
        default_value:
          nullable: true
          type: string
        description:
          nullable: true
          type: string
        display_order:
          format: int32
          type: integer
        field_type:
          type: string
        id:
          $ref: '#/components/schemas/ConnectorCredentialFieldId'
        is_optional:
          type: boolean
        label:
          nullable: true
          type: string
        name:
          type: string
        options:
          nullable: true
        updated_at:
          format: date-time
          type: string
      required:
      - id
      - auth_method_id
      - name
      - is_optional
      - field_type
      - display_order
      - created_at
      - updated_at
      type: object
    ConnectorAuthMethodScope:
      properties:
        connector_auth_method_id:
          $ref: '#/components/schemas/ConnectorAuthMethodId'
        created_at:
          format: date-time
          type: string
        id:
          $ref: '#/components/schemas/ConnectorAuthMethodScopeId'
        is_recommended:
          type: boolean
        is_required:
          type: boolean
        query_parameter:
          type: string
        scope_value:
          type: string
        updated_at:
          format: date-time
          type: string
      required:
      - id
      - connector_auth_method_id
      - scope_value
      - query_parameter
      - is_required
      - is_recommended
      - created_at
      - updated_at
      type: object
    ConnectorAuthMethodScopeId:
      format: uuid
      type: string
    ConnectorAuthType:
      enum:
      - credentials
      - oauth_nango
      type: string
    ConnectorAuthMethod:
      properties:
        auth_type:
          $ref: '#/components/schemas/ConnectorAuthType'
        connector_catalog_id:
          $ref: '#/components/schemas/ConnectorCatalogId'
        created_at:
          format: date-time
          type: string
        id:
          $ref: '#/components/schemas/ConnectorAuthMethodId'
        is_active:
          type: boolean
        label:
          nullable: true
          type: string
        nango_integration_key:
          nullable: true
          type: string
        priority:
          format: int32
          type: integer
        updated_at:
          format: date-time
          type: string
      required:
      - id
      - connector_catalog_id
      - auth_type
      - is_active
      - priority
      - created_at
      - updated_at
      type: object
    ConnectorCatalogWithMethods:
      allOf:
      - $ref: '#/components/schemas/ConnectorCatalog'
      - properties:
          auth_methods:
            items:
              $ref: '#/components/schemas/ConnectorAuthMethodWithFields'
            type: array
          logo_url:
            description: Base64 data URI for the logo (e.g., "data:image/svg+xml;base64,...")
            nullable: true
            type: string
        required:
        - auth_methods
        type: object
    ConnectorCatalogId:
      format: uuid
      type: string
    ConnectorAuthMethodId:
      format: uuid
      type: string
  securitySchemes:
    api_key:
      in: header
      name: api_key
      type: apiKey
    session_token:
      scheme: bearer
      type: http