Getting Started
This guide takes you from zero to your first authenticated request: create a token, set the base URL, and call the API.
Prerequisites
- Access to a workspace that is eligible for the Public API.
- Permission to create tokens in that workspace.
- Basic familiarity with Copera resources — boards, tables, rows, channels, documents.
Step 1 — Create a Personal Access Token
A Personal Access Token (PAT, prefixed cp_pat_) authenticates the API as you and unlocks the full API surface. It is the simplest way to get started.
Go to Workspace Settings → Integrations.
Select Personal Tokens, then Create new token.
Give the token a name, select the scopes it needs, and set an expiration date (up to 1 year).
The token is shown only once. Copy it immediately and store it in a secret manager or environment variable.
Treat tokens like passwords. Never commit them to source control. If a token leaks, delete it and create a new one.
For the full breakdown of token types and scopes, see Authentication.
Step 2 — Set the base URL
All endpoints live under:
https://api.copera.ai/public/v1
Every request must include your token in the Authorization header using the Bearer scheme:
Authorization: Bearer cp_pat_your_token_here
Step 3 — Make your first request
This lists the boards your token can access.
- curl
- JavaScript
curl https://api.copera.ai/public/v1/board/list-boards \
-H "Authorization: Bearer cp_pat_your_token_here"
const res = await fetch(
"https://api.copera.ai/public/v1/board/list-boards",
{
headers: {
Authorization: "Bearer cp_pat_your_token_here",
},
},
);
if (!res.ok) {
const error = await res.json();
throw new Error(`${res.status}: ${error.message}`);
}
const boards = await res.json();
console.log(boards);
A 200 response returns JSON. A 401 means the token is missing, malformed, or expired — see Authentication. Other failures follow the shared error schema.
Step 4 — Send a message (optional)
If your token has the access_channels scope, you can post to a channel:
curl -X POST \
https://api.copera.ai/public/v1/chat/channel/{channelId}/send-message \
-H "Authorization: Bearer cp_pat_your_token_here" \
-H "Content-Type: application/json" \
-d '{ "message": "Hello from my integration!" }'
Enable Developer Mode to copy resource IDs (channel, board, table, column) straight from the Copera interface — no network inspection needed.
Next steps
- Authentication — token types, scopes, and security.
- Pagination — how list endpoints page through results.
- Error Handling — status codes and recovery.
- Rate Limits — per-endpoint limits and backoff.
- API Reference — every endpoint and schema.