PopSQL Data Catalog API

The Data Catalog API from PopSQL — 7 operation(s) for data catalog.

Operations 12

GET /connections/{connection_id}/catalog Get Connection catalog #
PATCH /connections/{connection_id}/catalog Update Connection catalog #
GET /connections/{connection_id}/catalog/columns Search columns #
GET /connections/{connection_id}/catalog/tables Search tables #
GET /connections/{connection_id}/databases/{database_name}/catalog Get database catalog #
PATCH /connections/{connection_id}/databases/{database_name}/catalog Update database catalog #
GET /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/catalog Get schema catalog #
PATCH /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/catalog Update schema catalog #
GET /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/tables/{table_name}/catalog Get table catalog #
PATCH /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/tables/{table_name}/catalog Update table catalog #
GET /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/tables/{table_name}/columns/{column_name}/catalog Get column catalog #
PATCH /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/tables/{table_name}/columns/{column_name}/catalog Update column 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/popsql:popsql-data-catalog-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

popsql-data-catalog-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: PopSQL Data Catalog API
  version: 1.2.0
servers:
- url: https://api.popsql.com/v1
tags:
- name: Data Catalog
paths:
  /connections/{connection_id}/catalog:
    get:
      summary: Get Connection catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Get Connection catalog
          content:
            application/json:
              example:
                id: 100
                name: My connection
                databases:
                  world:
                    schemas:
                      public:
                        tables:
                          city:
                            name: city,
                            description: Cities of the world
                            execution_count: 100
                            tags:
                            - tag
                            columns:
                              name:
                                name: name
                                description: The name of the city
                                tags:
                                - tag
                                archived_at: null
                              country_code:
                                name: country_code
                                description: The city country code
                                tags:
                                - tag
                                archived_at: null
                              population:
                                name: population
                                description: The city population
                                tags:
                                - tag
                                archived_at: null
      operationId: getConnectionsByConnectionIdCatalog
      x-operation-id-source: derived
    patch:
      summary: Update Connection catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      requestBody:
        content:
          application/json:
            schema:
              example:
                databases:
                  world:
                    schemas:
                      public:
                        tables:
                          city:
                            description: New description
                            tags:
                            - tag
      security:
      - bearerAuth: []
      responses:
        '204':
          description: The resource was updated successfully
      operationId: patchConnectionsByConnectionIdCatalog
      x-operation-id-source: derived
  /connections/{connection_id}/catalog/columns:
    get:
      tags:
      - Data Catalog
      summary: Search columns
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - in: query
        name: tags
        schema:
          type: string
        example: lorem,ipsum,dolor
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Search results
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ColumnSearchResult'
      operationId: getConnectionsByConnectionIdCatalogColumns
      x-operation-id-source: derived
  /connections/{connection_id}/catalog/tables:
    get:
      tags:
      - Data Catalog
      summary: Search tables
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - in: query
        name: tags
        schema:
          type: string
        example: lorem,ipsum,dolor
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Search results
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TableSearchResult'
      operationId: getConnectionsByConnectionIdCatalogTables
      x-operation-id-source: derived
  /connections/{connection_id}/databases/{database_name}/catalog:
    get:
      summary: Get database catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Database catalog
          content:
            application/json:
              example:
                schemas:
                  public:
                    tables:
                      city:
                        name: city,
                        description: Cities of the world
                        execution_count: 100
                        tags:
                        - tag
                        columns:
                          name:
                            name: name
                            description: The name of the city
                            tags:
                            - tag
                            archived_at: null
                          country_code:
                            name: country_code
                            description: The city country code
                            tags:
                            - tag
                            archived_at: null
                          population:
                            name: population
                            description: The city population
                            tags:
                            - tag
                            archived_at: null
      operationId: getConnectionsByConnectionIdDatabasesByDatabaseNameCatalog
      x-operation-id-source: derived
    patch:
      summary: Update database catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      requestBody:
        content:
          application/json:
            schema:
              example:
                schemas:
                  public:
                    tables:
                      city:
                        description: New description
                        tags:
                        - tag
      security:
      - bearerAuth: []
      responses:
        '204':
          description: The resource was updated successfully
      operationId: patchConnectionsByConnectionIdDatabasesByDatabaseNameCatalog
      x-operation-id-source: derived
  /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/catalog:
    get:
      summary: Get schema catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      - $ref: '#/components/parameters/SchemaName'
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Schema catalog
          content:
            application/json:
              example:
                tables:
                  city:
                    name: city,
                    description: Cities of the world
                    execution_count: 100
                    tags:
                    - tag
                    columns:
                      name:
                        name: name
                        description: The name of the city
                        tags:
                        - tag
                        archived_at: null
                      country_code:
                        name: country_code
                        description: The city country code
                        tags:
                        - tag
                        archived_at: null
                      population:
                        name: population
                        description: The city population
                        tags:
                        - tag
                        archived_at: null
      operationId: getConnectionsByConnectionIdDatabasesByDatabaseNameSchemasBySchemaNameCatalog
      x-operation-id-source: derived
    patch:
      summary: Update schema catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      - $ref: '#/components/parameters/SchemaName'
      requestBody:
        content:
          application/json:
            schema:
              example:
                tables:
                  city:
                    description: New city description
                    tags:
                    - tag
                  country:
                    description: New country description
                    tags:
                    - tag
      security:
      - bearerAuth: []
      responses:
        '204':
          description: The resource was updated successfully
      operationId: patchConnectionsByConnectionIdDatabasesByDatabaseNameSchemasBySchemaNameCatalog
      x-operation-id-source: derived
  /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/tables/{table_name}/catalog:
    get:
      summary: Get table catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      - $ref: '#/components/parameters/SchemaName'
      - $ref: '#/components/parameters/TableName'
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Table catalog
          content:
            application/json:
              example:
                name: city,
                description: Cities of the world
                execution_count: 100
                tags:
                - tag
                columns:
                  name:
                    name: name
                    description: The name of the city
                    tags:
                    - tag
                    archived_at: null
                  country_code:
                    name: country_code
                    description: The city country code
                    tags:
                    - tag
                    archived_at: null
                  population:
                    name: population
                    description: The city population
                    tags:
                    - tag
                    archived_at: null
      operationId: getConnectionsByConnectionIdDatabasesByDatabaseNameSchemasBySchemaNameTablesByTableNameCatalog
      x-operation-id-source: derived
    patch:
      summary: Update table catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      - $ref: '#/components/parameters/SchemaName'
      - $ref: '#/components/parameters/TableName'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              $ref: '#/components/schemas/UpdateTableRequest'
      security:
      - bearerAuth: []
      responses:
        '204':
          description: The resource was updated successfully
      operationId: patchConnectionsByConnectionIdDatabasesByDatabaseNameSchemasBySchemaNameTablesByTableNameCatalog
      x-operation-id-source: derived
  ? /connections/{connection_id}/databases/{database_name}/schemas/{schema_name}/tables/{table_name}/columns/{column_name}/catalog
  : get:
      summary: Get column catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      - $ref: '#/components/parameters/SchemaName'
      - $ref: '#/components/parameters/TableName'
      - $ref: '#/components/parameters/ColumnName'
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Column catalog
          content:
            application/json:
              example:
                description: The city population
                tags:
                - tag
                archived_at: null
      operationId: getConnectionsByConnectionIdDatabasesByDatabaseNameSchemasBySchemaNameTablesByTableNameColumnsByColumnNameCatalog
      x-operation-id-source: derived
    patch:
      summary: Update column catalog
      tags:
      - Data Catalog
      parameters:
      - $ref: '#/components/parameters/Accept'
      - $ref: '#/components/parameters/ConnectionId'
      - $ref: '#/components/parameters/DatabaseName'
      - $ref: '#/components/parameters/SchemaName'
      - $ref: '#/components/parameters/TableName'
      - $ref: '#/components/parameters/ColumnName'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateColumnRequest'
      security:
      - bearerAuth: []
      responses:
        '204':
          description: The resource was updated successfully
      operationId: patchConnectionsByConnectionIdDatabasesByDatabaseNameSchemasBySchemaNameTablesByTableNameColumnsByColumnNameCatalog
      x-operation-id-source: derived
components:
  schemas:
    ColumnSearchResult:
      type: object
      properties:
        name:
          type: string
          example: district
        description:
          type: string
          example: City district
        tags:
          type: array
          items:
            type: string
            example: tag
        archived_at:
          type: string
          example: '2022-01-02 00:00:00'
    UpdateColumnRequest:
      type: object
      properties:
        name:
          type: string
          example: district
        description:
          type: string
          example: City district
        tags:
          type: array
          items:
            type: string
            example: tag
        archived_at:
          type: string
          example: '2022-01-02 00:00:00'
    UpdateTableRequest:
      type: object
      properties:
        description:
          type: string
          example: Cities of the world
        tags:
          type: array
          items:
            type: string
            example: tag
        columns:
          type: object
          example:
            name:
              description: City name
              tags:
              - foo
              - bar
    TableSearchResult:
      type: object
      properties:
        name:
          type: string
          example: city
        description:
          type: string
          example: Cities of the world
        tags:
          type: array
          items:
            type: string
            example: tag
        columns:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/ColumnSearchResult'
  parameters:
    DatabaseName:
      in: path
      name: database_name
      schema:
        type: string
      required: true
      example: world
    ColumnName:
      in: path
      name: column_name
      schema:
        type: string
      required: true
      example: name
    Accept:
      in: header
      name: Accept
      schema:
        type: string
      required: true
      example: application/json
    ConnectionId:
      in: path
      name: connection_id
      schema:
        type: string
      required: true
      example: 21000
    TableName:
      in: path
      name: table_name
      schema:
        type: string
      required: true
      example: city
    SchemaName:
      in: path
      name: schema_name
      schema:
        type: string
      required: true
      example: public
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
x-provenance:
  method: searched
  source: https://docs.popsql.com/reference
  harvested: '2026-10-29'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://docs.popsql.com/reference/get_connections-connection-id-catalog-columns.md
  - https://docs.popsql.com/reference/get_connections-connection-id-catalog-tables.md
  - https://docs.popsql.com/reference/get_connections-connection-id-catalog.md
  - https://docs.popsql.com/reference/get_connections-connection-id-databases-database-name-catalog.md
  - https://docs.popsql.com/reference/get_connections-connection-id-databases-database-name-schemas-schema-name-catalog.md
  - https://docs.popsql.com/reference/get_connections-connection-id-databases-database-name-schemas-schema-name-tables-table-name-catalog.md
  - https://docs.popsql.com/reference/get_connections-connection-id-databases-database-name-schemas-schema-name-tables-table-name-columns-column-name-catalog.md
  - https://docs.popsql.com/reference/patch_connections-connection-id-catalog.md
  - https://docs.popsql.com/reference/patch_connections-connection-id-databases-database-name-catalog.md
  - https://docs.popsql.com/reference/patch_connections-connection-id-databases-database-name-schemas-schema-name-catalog.md
  - https://docs.popsql.com/reference/patch_connections-connection-id-databases-database-name-schemas-schema-name-tables-table-name-catalog.md
  - https://docs.popsql.com/reference/patch_connections-connection-id-databases-database-name-schemas-schema-name-tables-table-name-columns-column-name-catalog.md
  - https://docs.popsql.com/reference/post_queries-query-id-runs.md
  merge:
    pages: 13
    deduped: 51
    conflicts_kept_first: 0