API reference

Fields

9 operations, generated from the OpenAPI document.

Add a field

POST /api/tables/{tableId}/fields

Access: field:create on the table (see ACTIONS for the minimum role); personal access tokens need schema.bases:write.

Parameters

NameInTypeRequired
tableIdpathstringyes

Request body

  • name string required
  • type "singleLineText" | "longText" | "number" | "currency" | "percent" | "checkbox" | "date" | "dateTime" | … required
  • description string
  • options object
  • position number

Responses

  • 201 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • description string | null required
    • type "singleLineText" | "longText" | "number" | "currency" | "percent" | "checkbox" | "date" | "dateTime" | … required
    • options any required
    • isPrimary boolean required
    • position number required
    • permissions object
      • edit object required
      • allowForms boolean
    • createdAt string (date-time) required
    • updatedAt string (date-time) required
    • deletedAt string (date-time) | null required
    • recomputing true
    • synced true
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 422 The request failed validation
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Fields of a table in the trash, most recently deleted first

GET /api/tables/{tableId}/fields/trash

Access: table:read on the table (see ACTIONS for the minimum role); personal access tokens need schema.bases:read.

Parameters

NameInTypeRequired
tableIdpathstringyes

Responses

  • 200 Success
    • fields array of object required
      • id string (uuid) required
      • tableId string (uuid) required
      • name string required
      • description string | null required
      • type "singleLineText" | "longText" | "number" | "currency" | "percent" | "checkbox" | "date" | "dateTime" | … required
      • options any required
      • isPrimary boolean required
      • position number required
      • permissions object
        • edit object required
        • allowForms boolean
      • createdAt string (date-time) required
      • updatedAt string (date-time) required
      • deletedAt string (date-time) | null required
      • recomputing true
      • synced true
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Restore a field from the trash

POST /api/tables/{tableId}/fields/{deletedFieldId}/restore

Access: field:restore on the table (see ACTIONS for the minimum role); personal access tokens need schema.bases:write.

Parameters

NameInTypeRequired
tableIdpathstringyes
deletedFieldIdpathstringyes

Responses

  • 200 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • description string | null required
    • type "singleLineText" | "longText" | "number" | "currency" | "percent" | "checkbox" | "date" | "dateTime" | … required
    • options any required
    • isPrimary boolean required
    • position number required
    • permissions object
      • edit object required
      • allowForms boolean
    • createdAt string (date-time) required
    • updatedAt string (date-time) required
    • deletedAt string (date-time) | null required
    • recomputing true
    • synced true
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Rename, describe, reorder or convert a field

PATCH /api/fields/{fieldId}

Access: field:update on the field (see ACTIONS for the minimum role); personal access tokens need schema.bases:write.

Parameters

NameInTypeRequired
fieldIdpathstringyes

Request body

  • name string
  • type "singleLineText" | "longText" | "number" | "currency" | "percent" | "checkbox" | "date" | "dateTime" | …
  • description string | null
  • options object
  • position number
  • permissions object
    • edit object required
    • allowForms boolean

Responses

  • 200 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • description string | null required
    • type "singleLineText" | "longText" | "number" | "currency" | "percent" | "checkbox" | "date" | "dateTime" | … required
    • options any required
    • isPrimary boolean required
    • position number required
    • permissions object
      • edit object required
      • allowForms boolean
    • createdAt string (date-time) required
    • updatedAt string (date-time) required
    • deletedAt string (date-time) | null required
    • recomputing true
    • synced true
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 422 The request failed validation
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Move a field to the trash

DELETE /api/fields/{fieldId}

Access: field:delete on the field (see ACTIONS for the minimum role); personal access tokens need schema.bases:write.

Parameters

NameInTypeRequired
fieldIdpathstringyes

Responses

  • 204 Success, no content
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Records a link field can link to (the record picker), by primary field

GET /api/fields/{linkFieldId}/link-candidates

Access: field:link_candidates on the field (see ACTIONS for the minimum role); personal access tokens need data.records:read.

Parameters

NameInTypeRequired
linkFieldIdpathstringyes
searchquerystringno
limitqueryintegerno
offsetqueryintegerno
purposequery"link" | "filter"no
idsquerystringno

Responses

  • 200 Success
    • tableId string (uuid) required
    • records array of object required
      • id string (uuid) required
      • name string required
    • nextOffset integer | null required
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 422 The request failed validation
  • 429 Too many requests: a rate limit was reached (see Retry-After)

An AI field's generation state: counts and the records not done

GET /api/fields/{fieldId}/ai

Access: field:ai_status on the field (see ACTIONS for the minimum role); personal access tokens need data.records:read.

Parameters

NameInTypeRequired
fieldIdpathstringyes

Responses

  • 200 Success
    • fieldId string (uuid) required
    • available boolean required
    • counts object required
      • pending integer required
      • done integer required
      • error integer required
      • canceled integer required
    • cells array of object required
      • recordId string (uuid) required
      • status "pending" | "done" | "error" | "canceled" required
      • error string | null required
      • updatedAt string required
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Generate an AI field's value again for records, or for the whole field

POST /api/fields/{fieldId}/ai/generate

Access: field:ai_generate on the field (see ACTIONS for the minimum role); personal access tokens need data.records:write.

Parameters

NameInTypeRequired
fieldIdpathstringyes

Request body

object

Responses

  • 200 Success
    • queued integer required
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 422 The request failed validation
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Stop an AI field's pending generations

POST /api/fields/{fieldId}/ai/cancel

Access: field:ai_generate on the field (see ACTIONS for the minimum role); personal access tokens need data.records:write.

Parameters

NameInTypeRequired
fieldIdpathstringyes

Responses

  • 200 Success
    • canceled integer required
  • 401 Not signed in
  • 403 Signed in, but the role is too low
  • 404 No such resource, or no access to it
  • 429 Too many requests: a rate limit was reached (see Retry-After)