Connect OrgCanvas to Zapier, your HRIS, custom scripts, or any tool that supports REST APIs. Use the API to keep your org chart automatically in sync with the systems where your team data lives.
All API requests go to https://api.orgcanvas.app/api/v1/ and must include your API key as a Bearer token:
A successful response looks like:
| Method | Endpoint | Description |
|---|---|---|
| GET | /v1/me | Return workspace and user info for this key |
| GET | /v1/canvases | List all canvases in the workspace (newest first) |
| GET | /v1/canvases/:id | Get a single canvas with full org data |
| GET | /v1/people | List all people across all canvases |
| Method | Endpoint | Description |
|---|---|---|
| POST | /v1/canvases | Create a new canvas |
| POST | /v1/canvases/:id/people | Add a person to a canvas |
| PUT | /v1/canvases/:id/people/:key | Update a person's name, title, department, or manager |
| DELETE | /v1/canvases/:id/people/:key | Remove a person from a canvas |
Every request must include your API key. Two methods are supported:
Authorization: Bearer oc_live_...?api_key=oc_live_...The Bearer header is preferred because it keeps the key out of URLs, server logs, and browser history.
Each API key is limited to 1,000 requests per hour. Every response includes headers showing your current usage:
If you exceed the limit, you'll get a 429 Too Many Requests response with a Retry-After header telling you how many seconds to wait.
The OrgCanvas Zapier integration is the fastest way to connect OrgCanvas to tools you already use without writing any code. It's currently in private beta — available to all Business customers on request.
What's included:
Want early access? Email [email protected].
| Code | Meaning |
|---|---|
200 | Success |
201 | Resource created (for POST endpoints) |
400 | Invalid or missing required fields in your request |
401 | Missing, invalid, or expired API key |
403 | Plan doesn't allow API access (upgrade to Business+) |
404 | Canvas or person not found |
429 | Rate limit exceeded — check Retry-After header |
500 | Server error — retry with exponential backoff |