Build integrations with the API
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:
Using Claude or ChatGPT? You don't need an API token. Connect Boords to your AI app instead and sign in with your Boords account. The API is for your own scripts, pipelines and integrations.
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. Library assets and their folders hang directly off the team at /v1/teams/{team_id}/library_assets and /v1/teams/{team_id}/library_asset_folders.
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.
The API is available on all paid Boords plans. You can view the API documentation on any plan, but you'll need a paid plan to create tokens and make requests.
Yes. While there isn't a native Boords app on Zapier or Make, you can use their generic HTTP/webhook actions to call the Boords API. You can also use Boords webhooks as triggers — for example, use Zapier's "Webhooks by Zapier" trigger to start a workflow whenever a storyboard is created or a frame is updated.
Each API token can make up to 120 requests per minute. Check the X-RateLimit-Remaining response header to monitor your usage, and the Retry-After header if you receive a 429 response.
Boords' built-in image generation isn't available via the API yet, but you can upload any image to a frame — including images generated by external tools like Midjourney, DALL·E, or your own pipeline. Use the frame image endpoint to attach images by URL or base64.