API reference

Views

10 operations, generated from the OpenAPI document.

The views of a table, in sidebar order

GET /api/tables/{tableId}/views

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
    • views array of object required
      • id string (uuid) required
      • tableId string (uuid) required
      • name string required
      • type "grid" | "gallery" | "kanban" | "calendar" | "timeline" | "list" | "form" required
      • position number required
      • config object required
        • filter object
          • conjunction "and" | "or" required
          • conditions array of object required
        • sorts array of object
          • fieldId string (uuid) required
          • direction "asc" | "desc" required
        • groupBy array of object
          • fieldId string (uuid) required
          • direction "asc" | "desc" required
        • grid object
          • fieldOrder array of string (uuid)
          • columnWidths object
          • frozenCount integer
          • rowHeight "compact" | "default" | "medium" | "tall"
          • hiddenFields array of string (uuid)
        • kanban object
          • stackFieldId string (uuid) | null
          • cardFields array of string (uuid)
          • coverFieldId string (uuid) | null
          • collapseEmpty boolean
        • calendar object
          • dateFields array of object
          • colorFieldId string (uuid) | null
          • mode "month" | "week" | "day"
        • gallery object
          • cardFields array of string (uuid)
          • coverFieldId string (uuid) | null
          • coverFit "crop" | "fit"
          • cardSize "small" | "medium" | "large"
        • timeline object
          • startFieldId string (uuid) | null
          • endFieldId string (uuid) | null
          • scale "day" | "week" | "month"
          • groupFieldId string (uuid) | null
          • colorFieldId string (uuid) | null
          • dependencyFieldId string (uuid) | null
        • list object
          • parentFieldId string (uuid) | null
          • rowFields array of string (uuid)
        • form object
          • fields array of object
          • title string
          • description string
          • coverAttachmentId string (uuid) | null
          • logoAttachmentId string (uuid) | null
          • submitLabel string
          • afterSubmit "message" | "redirect"
          • submitMessage string
          • redirectUrl string | null
          • showBranding boolean
        • rowColor object | null
      • personal boolean required
      • locked boolean required
      • sectionId string (uuid) | null required
      • createdBy string (uuid) | null required
      • createdAt string (date-time) required
      • updatedAt string (date-time) required
    • sections array of object required
      • id string (uuid) required
      • tableId string (uuid) required
      • name string required
      • position number 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)

Create a view

POST /api/tables/{tableId}/views

Access: view: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 "grid" | "gallery" | "kanban" | "calendar" | "timeline" | "list" | "form"
  • personal boolean

Responses

  • 201 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • type "grid" | "gallery" | "kanban" | "calendar" | "timeline" | "list" | "form" required
    • position number required
    • config object required
      • filter object
        • conjunction "and" | "or" required
        • conditions array of object required
      • sorts array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • groupBy array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • grid object
        • fieldOrder array of string (uuid)
        • columnWidths object
        • frozenCount integer
        • rowHeight "compact" | "default" | "medium" | "tall"
        • hiddenFields array of string (uuid)
      • kanban object
        • stackFieldId string (uuid) | null
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • collapseEmpty boolean
      • calendar object
        • dateFields array of object
          • startFieldId string (uuid) required
          • endFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • mode "month" | "week" | "day"
      • gallery object
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • coverFit "crop" | "fit"
        • cardSize "small" | "medium" | "large"
      • timeline object
        • startFieldId string (uuid) | null
        • endFieldId string (uuid) | null
        • scale "day" | "week" | "month"
        • groupFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • dependencyFieldId string (uuid) | null
      • list object
        • parentFieldId string (uuid) | null
        • rowFields array of string (uuid)
      • form object
        • fields array of object
          • fieldId string (uuid) required
          • label string
          • helpText string
          • required boolean
          • allowPrefill boolean
          • condition object | null
          • viewIdForRecordSelection string (uuid) | null
        • title string
        • description string
        • coverAttachmentId string (uuid) | null
        • logoAttachmentId string (uuid) | null
        • submitLabel string
        • afterSubmit "message" | "redirect"
        • submitMessage string
        • redirectUrl string | null
        • showBranding boolean
      • rowColor object | null
    • personal boolean required
    • locked boolean required
    • sectionId string (uuid) | null required
    • createdBy string (uuid) | null required
    • createdAt string (date-time) required
    • updatedAt string (date-time) 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)

Read a view

GET /api/views/{viewId}

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

Parameters

NameInTypeRequired
viewIdpathstringyes

Responses

  • 200 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • type "grid" | "gallery" | "kanban" | "calendar" | "timeline" | "list" | "form" required
    • position number required
    • config object required
      • filter object
        • conjunction "and" | "or" required
        • conditions array of object required
      • sorts array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • groupBy array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • grid object
        • fieldOrder array of string (uuid)
        • columnWidths object
        • frozenCount integer
        • rowHeight "compact" | "default" | "medium" | "tall"
        • hiddenFields array of string (uuid)
      • kanban object
        • stackFieldId string (uuid) | null
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • collapseEmpty boolean
      • calendar object
        • dateFields array of object
          • startFieldId string (uuid) required
          • endFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • mode "month" | "week" | "day"
      • gallery object
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • coverFit "crop" | "fit"
        • cardSize "small" | "medium" | "large"
      • timeline object
        • startFieldId string (uuid) | null
        • endFieldId string (uuid) | null
        • scale "day" | "week" | "month"
        • groupFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • dependencyFieldId string (uuid) | null
      • list object
        • parentFieldId string (uuid) | null
        • rowFields array of string (uuid)
      • form object
        • fields array of object
          • fieldId string (uuid) required
          • label string
          • helpText string
          • required boolean
          • allowPrefill boolean
          • condition object | null
          • viewIdForRecordSelection string (uuid) | null
        • title string
        • description string
        • coverAttachmentId string (uuid) | null
        • logoAttachmentId string (uuid) | null
        • submitLabel string
        • afterSubmit "message" | "redirect"
        • submitMessage string
        • redirectUrl string | null
        • showBranding boolean
      • rowColor object | null
    • personal boolean required
    • locked boolean required
    • sectionId string (uuid) | null required
    • createdBy string (uuid) | null required
    • createdAt string (date-time) required
    • updatedAt string (date-time) 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)

Rename, reorder, lock, colour or reconfigure a view

PATCH /api/views/{viewId}

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

Parameters

NameInTypeRequired
viewIdpathstringyes

Request body

  • name string
  • position number
  • grid object
    • fieldOrder array of string (uuid)
    • columnWidths object
    • frozenCount integer
    • rowHeight "compact" | "default" | "medium" | "tall"
    • hiddenFields array of string (uuid)
  • kanban object
    • stackFieldId string (uuid) | null
    • cardFields array of string (uuid)
    • coverFieldId string (uuid) | null
    • collapseEmpty boolean
  • calendar object
    • dateFields array of object
      • startFieldId string (uuid) required
      • endFieldId string (uuid) | null
    • colorFieldId string (uuid) | null
    • mode "month" | "week" | "day"
  • gallery object
    • cardFields array of string (uuid)
    • coverFieldId string (uuid) | null
    • coverFit "crop" | "fit"
    • cardSize "small" | "medium" | "large"
  • timeline object
    • startFieldId string (uuid) | null
    • endFieldId string (uuid) | null
    • scale "day" | "week" | "month"
    • groupFieldId string (uuid) | null
    • colorFieldId string (uuid) | null
    • dependencyFieldId string (uuid) | null
  • list object
    • parentFieldId string (uuid) | null
    • rowFields array of string (uuid)
  • form object
    • fields array of object
      • fieldId string (uuid) required
      • label string
      • helpText string
      • required boolean
      • allowPrefill boolean
      • condition object | null
        • conjunction "and" | "or"
        • conditions array of object required
      • viewIdForRecordSelection string (uuid) | null
    • title string
    • description string
    • coverAttachmentId string (uuid) | null
    • logoAttachmentId string (uuid) | null
    • submitLabel string
    • afterSubmit "message" | "redirect"
    • submitMessage string
    • redirectUrl string | null
    • showBranding boolean
  • rowColor object | null
  • query object
    • filter object
      • conjunction "and" | "or"
      • conditions array of object required
    • sorts array of object
      • fieldId string (uuid) required
      • direction "asc" | "desc"
    • groupBy array of object
      • fieldId string (uuid) required
      • direction "asc" | "desc"
  • personal boolean
  • locked boolean
  • sectionId string (uuid) | null

Responses

  • 200 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • type "grid" | "gallery" | "kanban" | "calendar" | "timeline" | "list" | "form" required
    • position number required
    • config object required
      • filter object
        • conjunction "and" | "or" required
        • conditions array of object required
      • sorts array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • groupBy array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • grid object
        • fieldOrder array of string (uuid)
        • columnWidths object
        • frozenCount integer
        • rowHeight "compact" | "default" | "medium" | "tall"
        • hiddenFields array of string (uuid)
      • kanban object
        • stackFieldId string (uuid) | null
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • collapseEmpty boolean
      • calendar object
        • dateFields array of object
          • startFieldId string (uuid) required
          • endFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • mode "month" | "week" | "day"
      • gallery object
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • coverFit "crop" | "fit"
        • cardSize "small" | "medium" | "large"
      • timeline object
        • startFieldId string (uuid) | null
        • endFieldId string (uuid) | null
        • scale "day" | "week" | "month"
        • groupFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • dependencyFieldId string (uuid) | null
      • list object
        • parentFieldId string (uuid) | null
        • rowFields array of string (uuid)
      • form object
        • fields array of object
          • fieldId string (uuid) required
          • label string
          • helpText string
          • required boolean
          • allowPrefill boolean
          • condition object | null
          • viewIdForRecordSelection string (uuid) | null
        • title string
        • description string
        • coverAttachmentId string (uuid) | null
        • logoAttachmentId string (uuid) | null
        • submitLabel string
        • afterSubmit "message" | "redirect"
        • submitMessage string
        • redirectUrl string | null
        • showBranding boolean
      • rowColor object | null
    • personal boolean required
    • locked boolean required
    • sectionId string (uuid) | null required
    • createdBy string (uuid) | null required
    • createdAt string (date-time) required
    • updatedAt string (date-time) 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)

Delete a view (a table keeps at least one)

DELETE /api/views/{viewId}

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

Parameters

NameInTypeRequired
viewIdpathstringyes

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)

Duplicate a view with its configuration

POST /api/views/{viewId}/duplicate

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

Parameters

NameInTypeRequired
viewIdpathstringyes

Request body

  • name string

Responses

  • 201 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • type "grid" | "gallery" | "kanban" | "calendar" | "timeline" | "list" | "form" required
    • position number required
    • config object required
      • filter object
        • conjunction "and" | "or" required
        • conditions array of object required
      • sorts array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • groupBy array of object
        • fieldId string (uuid) required
        • direction "asc" | "desc" required
      • grid object
        • fieldOrder array of string (uuid)
        • columnWidths object
        • frozenCount integer
        • rowHeight "compact" | "default" | "medium" | "tall"
        • hiddenFields array of string (uuid)
      • kanban object
        • stackFieldId string (uuid) | null
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • collapseEmpty boolean
      • calendar object
        • dateFields array of object
          • startFieldId string (uuid) required
          • endFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • mode "month" | "week" | "day"
      • gallery object
        • cardFields array of string (uuid)
        • coverFieldId string (uuid) | null
        • coverFit "crop" | "fit"
        • cardSize "small" | "medium" | "large"
      • timeline object
        • startFieldId string (uuid) | null
        • endFieldId string (uuid) | null
        • scale "day" | "week" | "month"
        • groupFieldId string (uuid) | null
        • colorFieldId string (uuid) | null
        • dependencyFieldId string (uuid) | null
      • list object
        • parentFieldId string (uuid) | null
        • rowFields array of string (uuid)
      • form object
        • fields array of object
          • fieldId string (uuid) required
          • label string
          • helpText string
          • required boolean
          • allowPrefill boolean
          • condition object | null
          • viewIdForRecordSelection string (uuid) | null
        • title string
        • description string
        • coverAttachmentId string (uuid) | null
        • logoAttachmentId string (uuid) | null
        • submitLabel string
        • afterSubmit "message" | "redirect"
        • submitMessage string
        • redirectUrl string | null
        • showBranding boolean
      • rowColor object | null
    • personal boolean required
    • locked boolean required
    • sectionId string (uuid) | null required
    • createdBy string (uuid) | null required
    • createdAt string (date-time) required
    • updatedAt string (date-time) 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)

Place a record after another in the view's manual order (kanban cards)

POST /api/views/{viewId}/order

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

Parameters

NameInTypeRequired
viewIdpathstringyes

Request body

  • recordId string (uuid) required
  • afterId string (uuid) | null required

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
  • 422 The request failed validation
  • 429 Too many requests: a rate limit was reached (see Retry-After)

Add a section (folder) to the sidebar of a table

POST /api/tables/{tableId}/view-sections

Access: viewSection: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

Responses

  • 201 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • position number 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)

Rename or reorder a view section

PATCH /api/tables/{tableId}/view-sections/{sectionId}

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

Parameters

NameInTypeRequired
tableIdpathstringyes
sectionIdpathstring (uuid)yes

Request body

  • name string
  • position number

Responses

  • 200 Success
    • id string (uuid) required
    • tableId string (uuid) required
    • name string required
    • position number 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)

Delete a view section (its views stay, outside any section)

DELETE /api/tables/{tableId}/view-sections/{sectionId}

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

Parameters

NameInTypeRequired
tableIdpathstringyes
sectionIdpathstring (uuid)yes

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)