Boltic Tables API

The Boltic Tables API provides programmatic access to Boltic Tables, a no-code database for teams to organize, manage, and automate structured data workflows. The API supports full CRUD operations on tables and rows, SQL query execution via a built-in SQL editor with AI-powered query generation, and integration with workflows for automated data processing triggered by table changes.

OpenAPI Specification

boltic-tables-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Boltic Gateway Certificates Tables API
  description: The Boltic Gateway API provides a developer-friendly API gateway designed to simplify and secure how services interact across your platform. It enables seamless request routing, payload transformation, and enforcement of security policies across diverse integration types including serverless functions, workflows, tables, and proxy endpoints. The Gateway supports dynamic URL rewriting, path parameter injection, fine-grained authentication, and real-time observability.
  version: 1.0.0
  contact:
    name: Boltic
    url: https://www.boltic.io
  license:
    name: Proprietary
    url: https://www.boltic.io/terms
servers:
- url: https://gateway.boltic.io/v1
  description: Boltic Gateway API
security:
- bearerAuth: []
tags:
- name: Tables
  description: Manage tables and their schemas
paths:
  /tables:
    get:
      operationId: listTables
      summary: Boltic List all tables
      description: Retrieve a list of all tables in the workspace.
      tags:
      - Tables
      parameters:
      - name: page
        in: query
        schema:
          type: integer
          default: 1
      - name: limit
        in: query
        schema:
          type: integer
          default: 20
      responses:
        '200':
          description: A list of tables
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Table'
                  pagination:
                    $ref: '#/components/schemas/Pagination'
    post:
      operationId: createTable
      summary: Boltic Create a new table
      description: Create a new table with a defined schema of columns.
      tags:
      - Tables
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TableInput'
      responses:
        '201':
          description: Table created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Table'
        '400':
          $ref: '#/components/responses/BadRequest'
  /tables/{tableId}:
    get:
      operationId: getTable
      summary: Boltic Get a table by ID
      description: Retrieve table metadata and schema.
      tags:
      - Tables
      parameters:
      - name: tableId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Table details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Table'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateTable
      summary: Boltic Update a table
      description: Update table metadata or schema definition.
      tags:
      - Tables
      parameters:
      - name: tableId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TableInput'
      responses:
        '200':
          description: Table updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Table'
    delete:
      operationId: deleteTable
      summary: Boltic Delete a table
      tags:
      - Tables
      parameters:
      - name: tableId
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Table deleted
components:
  schemas:
    Pagination:
      type: object
      properties:
        page:
          type: integer
        limit:
          type: integer
        total:
          type: integer
        totalPages:
          type: integer
    ColumnInput:
      type: object
      required:
      - name
      - type
      properties:
        name:
          type: string
        type:
          type: string
        required:
          type: boolean
          default: false
        defaultValue:
          type: string
        options:
          type: array
          items:
            type: string
    Column:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
          - text
          - number
          - boolean
          - date
          - datetime
          - email
          - url
          - select
          - multi-select
          - attachment
          - relation
        required:
          type: boolean
        defaultValue:
          type: string
        options:
          type: array
          items:
            type: string
          description: Options for select and multi-select columns
    TableInput:
      type: object
      required:
      - name
      - columns
      properties:
        name:
          type: string
        description:
          type: string
        columns:
          type: array
          items:
            $ref: '#/components/schemas/ColumnInput'
    Table:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        columns:
          type: array
          items:
            $ref: '#/components/schemas/Column'
        rowCount:
          type: integer
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
    Error:
      type: object
      properties:
        code:
          type: integer
        message:
          type: string
        details:
          type: string
  responses:
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT