Authorization: Bearer <api_key> header.
Each connected account also stores base_url, the Grist site the key belongs to: https://docs.getgrist.com for a personal site, https://<team>.getgrist.com for a team site, or the HTTPS URL of a self-hosted instance. /api is added when missing. The URL must use https and may not contain credentials, a query string or a fragment. Calls fail with a connect prompt until it is set. SDK users can pass baseUrl in the plugin options instead.
What you get:
- 71 typed API operations
Setup
1
Install
2
Add the plugin
corsair.ts
multiTenancy: true, scope calls with corsair.withTenant(id). See Quick start for KEK + Hub keys, and Multi-tenancy for account isolation.3
Choose authentication
- API Key (Recommended)
Store the Grist API key before the first call: More: API Key
pnpm corsair setup --plugin=grist --tenant=acme api_key=<your-key> (leave out --tenant without multiTenancy), or pass it as key in the plugin options. With Hub, each tenant enters their own key on the connect page. See API key auth.4
Connect a tenant
Mint a connect link and send the tenant to it. Hub hosts the page and delivers the result to your app — see Connect / OAuth.
Example API calls
List organizationsWhat’s next
API reference
Every
grist.api.* operation with input and output types.Connect / OAuth
createLink, Hub delivery, and tenant connect flows.
Use with agents
Expose this plugin’s operations as MCP tools.