AI Squared API

REST API for the AI Squared platform covering connectors (data and AI/ML sources and destinations), connector definitions and connection checks, models, catalogs, syncs, scheduled/manual sync triggers, sync runs and sync records. JSON request and response bodies, JWT bearer authentication, page / page_size pagination capped at 100 items, and a documented 100 requests-per-minute rate limit returning 429.

Operations 29

POST /api/v1/connector_definitions/check_connection Checks the connection for a specified connector definition
GET /api/v1/connector_definitions/{connector_name} Retrieve specific connector definition based on its name
GET /api/v1/connector_definitions Retrieve connector definitions based on type
POST /api/v1/models Creates a model
GET /api/v1/models Lists all models
POST /api/v1/catalogs Create catalog #
POST /api/v1/connectors Creates a connector
GET /api/v1/connectors Lists all connectors
POST /api/v1/syncs Create a new sync operation #
GET /api/v1/syncs List all sync operations #
DELETE /api/v1/models/{id} Deletes a model
GET /api/v1/models/{id} Retrieves a model
PUT /api/v1/models/{id} Updates a model
DELETE /api/v1/connectors/{id} Deletes a specific connector by ID
GET /api/v1/connectors/{id} Retrieves a specific connector by ID
PUT /api/v1/connectors/{id} Updates a specific connector by ID
DELETE /api/v1/syncs/{id} Delete a specific sync operation #
GET /api/v1/syncs/{id} Show details of a specific sync operation #
PUT /api/v1/syncs/{id} Update a specific sync operation #
GET /api/v1/connectors/{id}/discover Discovers catalog information for a specified connector
GET /api/v1/syncs/{sync_id}/sync_runs/{sync_run_id}/sync_records List sync records for a specific sync run #
GET /api/v1/syncs/{sync_id}/sync_runs/{sync_run_id} Get sync run using sync_run_id for a specific sync #
GET /api/v1/syncs/{sync_id}/sync_runs List sync runs for a specific sync #
DELETE /api/v1/schedule_syncs/{sync_id} Cancel a Manual Sync #
POST /api/v1/schedule_syncs Trigger a manual Sync #
POST /api/v1/connectors/{id}/query_source Query your source data
GET /api/v1/syncs/configurations Get report data based on given type #
POST /enterprise/api/v1/syncs/{sync_id}/test Trigger a Sync Test #
PUT /api/v1/catalogs/{id} Update catalog #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ai-squared-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ai-squared-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: AI Squared API
  version: 1.0.0
  description: The AI Squared API. REST, JSON request/response bodies, JWT bearer authentication. Base
    URL https://api.squared.ai/api/v1/. Assembled verbatim from the per-operation OpenAPI documents AI
    Squared publishes on its own documentation host (docs.squared.ai/api-reference/*).
servers:
- url: https://api.squared.ai
security: []
tags:
- name: Catalogs
- name: Connector Definitions
- name: Connectors
- name: Models
- name: SyncRecords
- name: SyncRun
- name: SyncRuns
- name: Syncs
paths:
  /api/v1/connector_definitions/check_connection:
    post:
      tags:
      - Connector Definitions
      summary: Checks the connection for a specified connector definition
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  enum:
                  - source
                  - destination
                name:
                  type: string
                connection_spec:
                  type: object
                  description: Generic connection specification structure. Specifics depend on the connector
                    type.
                  additionalProperties: true
      responses:
        '200':
          description: Connection check successful
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: string
                    enum:
                    - success
                    - failure
                  details:
                    type: string
                additionalProperties: false
      security:
      - bearerAuth: []
  /api/v1/connector_definitions/{connector_name}:
    get:
      tags:
      - Connector Definitions
      summary: Retrieve specific connector definition based on its name
      parameters:
      - name: connector_name
        in: path
        required: true
        schema:
          type: string
        description: Name of the connector
      - name: type
        in: query
        required: true
        schema:
          type: string
          enum:
          - source
          - destination
        description: Type of the connector (source or destination)
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  name:
                    type: string
                  connector_type:
                    type: string
                  connector_subtype:
                    type: string
                  documentation_url:
                    type: string
                  github_issue_label:
                    type: string
                  icon:
                    type: string
                  license:
                    type: string
                  release_stage:
                    type: string
                  support_level:
                    type: string
                  tags:
                    type: array
                    items:
                      type: string
                  connector_spec:
                    type: object
                    properties:
                      documentation_url:
                        type: string
                      connection_specification:
                        type: object
                        additionalProperties: true
                      supports_normalization:
                        type: boolean
                      supports_dbt:
                        type: boolean
                      stream_type:
                        type: string
                additionalProperties: true
      security:
      - bearerAuth: []
  /api/v1/connector_definitions:
    get:
      tags:
      - Connector Definitions
      summary: Retrieve connector definitions based on type
      parameters:
      - name: type
        in: query
        required: true
        schema:
          type: string
          enum:
          - source
          - destination
        description: Type of the connector (source or destination)
      - name: category
        in: query
        required: true
        schema:
          type: string
          enum:
          - data
          - ai_ml
        description: Category of the connector
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    name:
                      type: string
                    connector_type:
                      type: string
                    connector_subtype:
                      type: string
                    documentation_url:
                      type: string
                    github_issue_label:
                      type: string
                    icon:
                      type: string
                    license:
                      type: string
                    release_stage:
                      type: string
                    support_level:
                      type: string
                    tags:
                      type: array
                      items:
                        type: string
                    connector_spec:
                      type: object
                      properties:
                        documentation_url:
                          type: string
                        connection_specification:
                          type: object
                          additionalProperties: true
      security:
      - bearerAuth: []
  /api/v1/models:
    post:
      tags:
      - Models
      summary: Creates a model
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                model:
                  type: object
                  properties:
                    name:
                      type: string
                    description:
                      type: string
                    query:
                      type: string
                    query_type:
                      type: string
                    configuration:
                      type: object
                    primary_key:
                      type: string
                    connector_id:
                      type: integer
                  required:
                  - connector_id
                  - name
                  - query_type
      responses:
        '201':
          description: Model created
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                      attributes:
                        type: object
                        properties:
                          name:
                            type: string
                          description:
                            type: string
                          query:
                            type: string
                          query_type:
                            type: string
                          configuration:
                            type: object
                          primary_key:
                            type: string
                          connector_id:
                            type: integer
                          created_at:
                            type: string
                            format: date-time
                          updated_at:
                            type: string
                            format: date-time
      security:
      - bearerAuth: []
    get:
      tags:
      - Models
      summary: Lists all models
      parameters:
      - name: query_type
        in: query
        required: true
        schema:
          type: string
          enum:
          - data
          - ai_ml
          - raw_sql
          - dbt soql
          - table_selector
        description: query type
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        type:
                          type: string
                        attributes:
                          type: object
                          properties:
                            name:
                              type: string
                            description:
                              type: string
                            query:
                              type: string
                            query_type:
                              type: string
                            configuration:
                              type: object
                            primary_key:
                              type: string
                            connector_id:
                              type: integer
                            created_at:
                              type: string
                              format: date-time
                            updated_at:
                              type: string
                              format: date-time
                  links:
                    type: object
                    properties:
                      self:
                        type: string
                      first:
                        type: string
                      prev:
                        type: string
                      next:
                        type: string
                      last:
                        type: string
      security:
      - bearerAuth: []
  /api/v1/catalogs:
    post:
      tags:
      - Catalogs
      summary: Create catalog
      operationId: createCatalog
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                connector_id:
                  type: integer
                  example: 6
                catalog:
                  type: object
                  properties:
                    json_schema:
                      type: object
                      example:
                        key: value
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    example: 123
                  connector_id:
                    type: integer
                    example: 6
                  workspace_id:
                    type: integer
                    example: 2
                  catalog:
                    type: object
                    properties:
                      json_schema:
                        type: object
                        example:
                          key: value
                  created_at:
                    type: string
                    format: date-time
                    example: '2023-08-20T15:28:00Z'
                  updated_at:
                    type: string
                    format: date-time
                    example: '2023-08-20T15:28:00Z'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '500':
          description: Internal Server Error
      security:
      - bearerAuth: []
  /api/v1/connectors:
    post:
      tags:
      - Connectors
      summary: Creates a connector
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                connector:
                  type: object
                  properties:
                    name:
                      type: string
                    connector_type:
                      type: string
                      enum:
                      - source
                      - destination
                    connector_name:
                      type: string
                    configuration:
                      type: object
                      description: Configuration details for the connector. Structure depends on the connector
                        definition.
                      additionalProperties: true
                  required:
                  - name
                  - connector_type
                  - connector_name
                  - configuration
      responses:
        '201':
          description: Connector created
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                      attributes:
                        type: object
                        properties:
                          name:
                            type: string
                          connector_type:
                            type: string
                          workspace_id:
                            type: integer
                          created_at:
                            type: string
                            format: date-time
                          updated_at:
                            type: string
                            format: date-time
                          configuration:
                            type: object
                            description: Specific configuration of the created connector.
                            additionalProperties: true
                          connector_name:
                            type: string
                          icon:
                            type: string
      security:
      - bearerAuth: []
    get:
      tags:
      - Connectors
      summary: Lists all connectors
      parameters:
      - name: type
        in: query
        required: true
        schema:
          type: string
          enum:
          - source
          - destination
        description: Type of the connector
      - name: category
        in: query
        required: true
        schema:
          type: string
          enum:
          - data
          - ai_ml
        description: Category of the connector
      responses:
        '200':
          description: A list of connectors
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        type:
                          type: string
                        attributes:
                          type: object
                          properties:
                            name:
                              type: string
                            connector_type:
                              type: string
                            workspace_id:
                              type: integer
                            created_at:
                              type: string
                              format: date-time
                            updated_at:
                              type: string
                              format: date-time
                            configuration:
                              type: object
                              description: Generic configuration for the connector. Structure varies based
                                on the connector_type.
                              additionalProperties: true
                            connector_name:
                              type: string
                            icon:
                              type: string
                  links:
                    type: object
                    properties:
                      self:
                        type: string
                      first:
                        type: string
                      prev:
                        type: string
                      next:
                        type: string
                      last:
                        type: string
                additionalProperties: false
      security:
      - bearerAuth: []
  /api/v1/syncs:
    post:
      tags:
      - Syncs
      summary: Create a new sync operation
      operationId: createSync
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                sync:
                  type: object
                  properties:
                    source_id:
                      type: integer
                    destination_id:
                      type: integer
                    model_id:
                      type: integer
                    schedule_type:
                      type: string
                      enum:
                      - automated
                    configuration:
                      type: object
                      additionalProperties: true
                    stream_name:
                      type: string
                    sync_mode:
                      type: string
                      enum:
                      - full_refresh
                    sync_interval:
                      type: integer
                    sync_interval_unit:
                      type: string
                      enum:
                      - minutes
                    cron_expression:
                      type: string
                    cursor_field:
                      type: string
                  required:
                  - source_id
                  - destination_id
                  - model_id
                  - schedule_type
                  - configuration
                  - stream_name
                  - sync_mode
                  - sync_interval
                  - sync_interval_unit
      responses:
        '200':
          description: Sync operation created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  type:
                    type: string
                    enum:
                    - syncs
                  attributes:
                    type: object
                    properties:
                      source_id:
                        type: integer
                      destination_id:
                        type: integer
                      model_id:
                        type: integer
                      configuration:
                        type: object
                        additionalProperties: true
                      schedule_type:
                        type: string
                        enum:
                        - automated
                      sync_mode:
                        type: string
                        enum:
                        - full_refresh
                      sync_interval:
                        type: integer
                      sync_interval_unit:
                        type: string
                        enum:
                        - minutes
                      cron_expression:
                        type: string
                      cursor_field:
                        type: string
                      stream_name:
                        type: string
                      status:
                        type: string
      security:
      - bearerAuth: []
    get:
      tags:
      - Syncs
      summary: List all sync operations
      operationId: listSyncs
      parameters:
      - name: page[number]
        in: query
        required: false
        schema:
          type: integer
        description: Page number for pagination
      - name: page[size]
        in: query
        required: false
        schema:
          type: integer
        description: Number of items per page for pagination
      responses:
        '200':
          description: A list of sync operations
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        type:
                          type: string
                          enum:
                          - syncs
                        attributes:
                          type: object
                          properties:
                            source_id:
                              type: integer
                            destination_id:
                              type: integer
                            model_id:
                              type: integer
                            configuration:
                              type: object
                              additionalProperties: true
                            schedule_type:
                              type: string
                              enum:
                              - automated
                            sync_mode:
                              type: string
                              enum:
                              - full_refresh
                            sync_interval:
                              type: integer
                            sync_interval_unit:
                              type: string
                              enum:
                              - minutes
                            cron_expression:
                              type: string
                            cursor_field:
                              type: string
                            stream_name:
                              type: string
                            status:
                              type: string
                  links:
                    type: object
                    properties:
                      self:
                        type: string
                        format: uri
                      first:
                        type: string
                        format: uri
                      prev:
                        type: string
                        format: uri
                      next:
                        type: string
                        format: uri
                      last:
                        type: string
                        format: uri
                required:
                - data
                - links
      security:
      - bearerAuth: []
  /api/v1/models/{id}:
    delete:
      tags:
      - Models
      summary: Deletes a model
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
      responses:
        '204':
          description: Model deleted
      security:
      - bearerAuth: []
    get:
      tags:
      - Models
      summary: Retrieves a model
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                      attributes:
                        type: object
                        properties:
                          name:
                            type: string
                          description:
                            type: string
                          query:
                            type: string
                          query_type:
                            type: string
                          configuration:
                            type: object
                          primary_key:
                            type: string
                          connector_id:
                            type: integer
                          created_at:
                            type: string
                            format: date-time
                          updated_at:
                            type: string
                            format: date-time
      security:
      - bearerAuth: []
    put:
      tags:
      - Models
      summary: Updates a model
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                model:
                  type: object
                  properties:
                    name:
                      type: string
                    description:
                      type: string
                    query:
                      type: string
                    query_type:
                      type: string
                    configuration:
                      type: object
                    primary_key:
                      type: string
                    connector_id:
                      type: integer
                  required:
                  - connector_id
                  - name
                  - query_type
      responses:
        '200':
          description: Model updated
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                      attributes:
                        type: object
                        properties:
                          name:
                            type: string
                          description:
                            type: string
                          query:
                            type: string
                          query_type:
                            type: string
                          configuration:
                            type: object
                          primary_key:
                            type: string
                          connector_id:
                            type: integer
                          created_at:
                            type: string
                            format: date-time
                          updated_at:
                            type: string
                            format: date-time
      security:
      - bearerAuth: []
  /api/v1/connectors/{id}:
    delete:
      tags:
      - Connectors
      summary: Deletes a specific connector by ID
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: Unique ID of the connector
      responses:
        '204':
          description: No content, indicating successful deletion
      security:
      - bearerAuth: []
    get:
      tags:
      - Connectors
      summary: Retrieves a specific connector by ID
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: Unique ID of the connector
      responses:
        '200':
          description: A single connector object
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                      attributes:
                        type: object
                        properties:
                          name:
                            type: string
                          connector_type:
                            type: string
                          workspace_id:
                            type: integer
                          created_at:
                            type: string
                            format: date-time
                          updated_at:
                            type: string
                            format: date-time
                          configuration:
                            type: object
                            description: Generic configuration for the connector. Structure varies based
                              on the connector_type.
                            additionalProperties: true
                          connector_name:
                            type: string
                          icon:
                            type: string
                additionalProperties: false
      security:
      - bearerAuth: []
    put:
      tags:
      - Connectors
      summary: Updates a specific connector by ID
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: Unique ID of the connector
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                connector:
                  type: object
                  properties:
                    name:
                      type: string
                    connector_type:
                      type: string
                      enum:
                      - source
                      - destination
                    configuration:
                      type: object
                      description: Generic configuration structure. Specifics depend on the connector
                        type.
                      additionalProperties: true
                    connector_name:
                      type: string
                  required:
                  - name
                  - connector_type
                  - configuration
                  - connector_name
      responses:
        '200':
          description: Connector updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      type:
                        type: string
                      attributes:
                        type: object
                        properties:
                          name:
                            type: string
                          connector_type:
                            type: string
                          workspace_id:
                            type: integer
                          created_at:
                            type: string
                            format: date-time
                          updated_at:
                            type: string
                            format: date-time
                          configuration:
                            type: object
                            description: Specific configuration of the updated connector.
                            additionalProperties: true
                          connector_name:
                            type

# --- truncated at 32 KB (68 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ai-squared/refs/heads/main/openapi/ai-squared-openapi.yml