openapi: 3.0.1 info: title: Glide Queries Tables API description: The Glide REST API (v2) for working with Glide Big Tables. Create and overwrite tables, list and paginate rows, read a single row, add rows, update and delete rows, stage large batches with stashes, and query tables with SQL. All requests are authenticated with a Bearer API token issued from the Glide team settings. The API operates at the team level and works with Glide Big Tables. termsOfService: https://www.glideapps.com/legal/terms-of-service contact: name: Glide Support url: https://www.glideapps.com/docs version: '2.0' servers: - url: https://api.glideapps.com description: Glide REST API v2 security: - bearerAuth: [] tags: - name: Tables description: Create, overwrite, and list Big Tables. paths: /tables: get: operationId: listTables tags: - Tables summary: List Big Tables description: Returns all Big Tables in the team associated with the API token. responses: '200': description: A list of Big Tables. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Table' '401': $ref: '#/components/responses/Unauthorized' post: operationId: createTable tags: - Tables summary: Create a Big Table description: Creates a new Big Table with the provided name, column schema, and optional seed rows. Rows may be provided inline or referenced from a previously populated stash. Returns the new table ID. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateTableRequest' responses: '201': description: The Big Table was created. content: application/json: schema: $ref: '#/components/schemas/CreateTableResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' /tables/{tableID}: put: operationId: overwriteTable tags: - Tables summary: Overwrite a Big Table description: Replaces the schema and/or data of an existing Big Table. Rows may be provided inline or referenced from a stash. parameters: - $ref: '#/components/parameters/TableID' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/OverwriteTableRequest' responses: '200': description: The Big Table was overwritten. '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' components: schemas: Error: type: object properties: message: type: string description: A human-readable description of the error. code: type: string description: A machine-readable error code. Column: type: object description: A column definition in a Big Table schema. properties: id: type: string description: Stable column identifier used as the key in row values. type: type: string description: The column data type. enum: - string - number - boolean - dateTime - uri - image-uri - json name: type: string description: Human-readable column name. required: - type Table: type: object description: A Big Table belonging to the team. properties: id: type: string description: The table ID. name: type: string description: The display name of the table. OverwriteTableRequest: type: object description: Request body for overwriting a Big Table's schema and/or data. properties: schema: type: object properties: columns: type: array items: $ref: '#/components/schemas/Column' rows: type: array items: $ref: '#/components/schemas/RowValues' $stashID: type: string description: Optional stash ID to source rows from instead of inline rows. CreateTableRequest: type: object description: Request body for creating a Big Table. properties: name: type: string description: The display name for the new table. schema: type: object properties: columns: type: array items: $ref: '#/components/schemas/Column' rows: type: array description: Optional inline seed rows. items: $ref: '#/components/schemas/RowValues' $stashID: type: string description: Optional stash ID to source seed rows from instead of inline rows. required: - name - schema RowValues: type: object description: A map of column ID to value for a row. Values are typed according to the column definition. additionalProperties: true CreateTableResponse: type: object properties: data: type: object properties: tableID: type: string description: The ID of the newly created table. responses: Unauthorized: description: The API token is missing or invalid. content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: The request was malformed. content: application/json: schema: $ref: '#/components/schemas/Error' NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error' parameters: TableID: name: tableID in: path required: true description: The ID of the Big Table. schema: type: string securitySchemes: bearerAuth: type: http scheme: bearer description: 'Glide team API token passed as `Authorization: Bearer `. Tokens are created in the Glide team settings.'