The Boords API gives you programmatic access to your projects, storyboards, frames, and comments — so you can build custom integrations, automate workflows, and keep your tools in sync.
The Boords API is currently in Beta. The core functionality is stable, but some details may change as we refine the experience.
For the full endpoint reference, visit the API documentation.
The API lets you:
Use with AI agents — The Boords API works great with AI-powered tools like Claude and Cowork. Give your AI assistant an API token and it can create projects, import scripts, update frames, and manage your storyboards on your behalf — all through natural conversation.
To use the Boords API, you'll need:
API tokens are managed in Settings → Team → API. You'll need an Admin or Manager role to create tokens.
To create a token:
Tokens start with bap_ and are tied to your user account. Any actions performed with your token use your permissions and appear as your activity.
Include your API token in the X-API-KEY header with every request:
X-API-KEY: bap_your_token_here
You can also include an optional X-API-CLIENT header to identify your integration:
X-API-CLIENT: my-custom-tool
This helps you track which integration made which changes in your activity log.
All API requests use the base URL:
https://app.boords.com/v1
Boords organises content in a hierarchy:
Teams → Projects → Storyboards → Frames → Comments
Each team has projects, each project has storyboards, and each storyboard has frames. Comments are attached to individual frames.
Teams, projects, and storyboards use short text identifiers (like t3n4xk or p4k9az). Frames and comments use numeric IDs. You'll find these identifiers in API responses and can use them in subsequent requests.
All API responses use a consistent JSON envelope:
For a single resource:
{ "data": { "id": "p4k9az", "type": "project", "attributes": { ... } } }For a list of resources:
{ "data": [ ... ], "meta": { "next_cursor": "..." } }List endpoints return results in pages. Use the limit parameter (up to 100, default 25) and the cursor parameter to step through results. When meta.next_cursor is present in the response, there are more results available — pass it as the cursor parameter in your next request.
Most list endpoints support an updated_since parameter (ISO 8601 timestamp) to fetch only resources that have changed since a specific time. This is useful for building sync workflows.
What you can do via the API depends on your team role:
| Action | Admin | Manager | Supermember | Member |
|---|---|---|---|---|
| Read projects, storyboards, frames | ✓ | ✓ | ✓ | ✓ |
| Create and edit content | ✓ | ✓ | ✓ | — |
| Manage comments | ✓ | ✓ | — | — |
| Manage team members | ✓ | ✓ | — | — |
For more detail on team roles, see Team users and roles.
You can create a storyboard with pre-populated frames in a single API call. Send a POST request to /v1/storyboards with a frames array, and Boords will create the storyboard and all frames at once.
Each frame in the array can include a label (which becomes the frame's reference field) and any number of custom fields like action, sound, or dialogue. Boords automatically generates field definitions from your data.
The response includes a field_key_map in the meta object, which maps your original field names to the generated field IDs — useful if you need to update those fields later.
For the full request and response format, see the Create Storyboard endpoint in the API reference.
To keep an external tool in sync with your Boords workspace:
cursor parameter to page through large collections.updated_since parameter with the timestamp of your last sync. This returns only resources that have changed, keeping your requests efficient.The API lets you attach any image to a frame — whether it's a photo, a render from your 3D pipeline, or an AI-generated image from a tool like Midjourney or DALL·E.
Use the frame image endpoint to upload an image by URL or base64 data. Boords automatically processes the image to generate the right sizes for your storyboard's aspect ratio.
This means you can build fully automated pipelines: generate images with your tool of choice, then push them straight into your Boords storyboard via the API.
For the full request format, see the API documentation.
The API allows 120 requests per minute per token. Response headers tell you where you stand:
| Header | Meaning |
|---|---|
X-RateLimit-Limit | Your total allowance per window |
X-RateLimit-Remaining | Requests left in the current window |
X-RateLimit-Reset | When the window resets |
Retry-After | How long to wait (returned with 429 responses) |
If you're building a sync workflow, use updated_since filtering and webhooks to reduce the number of requests you need to make.
When something goes wrong, the API returns a consistent error format:
{
"error": {
"code": "forbidden",
"message": "You do not have access to this resource."
}
}Common status codes:
| Code | Meaning |
|---|---|
| 400 | Invalid request — check your request format |
| 401 | Invalid or missing API key |
| 403 | Your role doesn't have permission for this action |
| 404 | Resource not found (or not accessible to you) |
| 422 | Validation error — check the error message for details |
| 429 | Rate limit exceeded — wait and retry |
For the full error reference, see the API documentation.