Grist Docs API

Workspaces contain collections of Grist documents.

Operations 42

POST /workspaces/{workspaceId}/docs Create an empty document #
POST /workspaces/{workspaceId}/import Import an existing document #
POST /docs Create a document #
GET /docs/{docId} Describe a document #
PATCH /docs/{docId} Modify document metadata (but not its contents) #
DELETE /docs/{docId} Delete a document #
POST /docs/{docId}/remove Move document to trash #
POST /docs/{docId}/unremove Restore document from trash #
PATCH /docs/{docId}/move Move document to another workspace #
PATCH /docs/{docId}/pin Pin a document #
PATCH /docs/{docId}/unpin Unpin a document #
POST /docs/{docId}/disable Disable a document #
POST /docs/{docId}/enable Enable a document #
POST /docs/{docId}/copy Copies a document to a workspace #
POST /docs/{docId}/fork Fork a document #
GET /docs/{docId}/access List users with access to document #
PATCH /docs/{docId}/access Change who has access to document #
GET /docs/{docId}/usersForViewAs Get users for 'View As' feature #
GET /docs/{docId}/download Content of document, as an Sqlite file #
GET /docs/{docId}/download/xlsx Content of document, as an Excel file #
GET /docs/{docId}/download/csv Content of table, as a CSV file #
GET /docs/{docId}/download/tsv Content of table, as a TSV file #
GET /docs/{docId}/download/dsv Content of table, as a DSV file #
GET /docs/{docId}/download/table-schema The schema of a table #
GET /docs/{docId}/snapshots List document snapshots #
POST /docs/{docId}/snapshots/remove Remove document snapshots #
GET /docs/{docId}/states Get document action history states #
GET /docs/{docId}/compare Compare document versions #
GET /docs/{docId}/compare/{docId2} Compare two documents #
POST /docs/{docId}/states/remove Truncate the document's action history #
GET /docs/{docId}/proposals List change proposals #
POST /docs/{docId}/propose Create a change proposal #
POST /docs/{docId}/proposals/{proposalId}/apply Apply a change proposal #
POST /docs/{docId}/force-reload Reload a document #
POST /docs/{docId}/flush Flush document to storage #
POST /docs/{docId}/assign Reassign document to appropriate worker #
POST /docs/{docId}/replace Replace document content #
POST /docs/{docId}/recover Set recovery mode for a document #
GET /docs/{docId}/timing Get formula timing status #
POST /docs/{docId}/timing/start Start formula timing #
POST /docs/{docId}/timing/stop Stop formula timing #
POST /docs/{docId}/apply Apply a list of user actions #

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/grist:grist-docs-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

grist-docs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'An API for manipulating Grist sites, workspaces, and documents.


    # Authentication'
  version: 1.0.1
  title: Grist Docs API
servers:
- url: https://{gristhost}/api
  variables:
    subdomain:
      description: The team name, or `docs` for personal areas
      default: docs
security:
- ApiKey: []
tags:


# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/grist/refs/heads/main/openapi/grist-docs-api-openapi.yml