Skip to content

Getting Started

This guide gets you from zero to your first authenticated request against the Contio MeetingOS User API.

1. Pick a credential

The User API accepts a first-party bearer token in the Authorization header. There are four ways to get one:

Credential Prefix Best for Plan Guide
Short-lived access token (SLT) cto_slt_v1_ Ad hoc queries, experimentation, and quick scripts issued from the Contio UI All plans Authentication
OAuth 2.1 access token cto_at_v1_ Interactive apps, desktop apps, and CLIs acting on behalf of the signed-in user All plans Authentication
Personal Access Token (PAT) cto_pat_v1_ Scripts, cron jobs, server-side automation that act as you PRO and higher Personal Access Tokens
Workspace API key cto_wk_v1_ Shared team automation that acts as the workspace (fixed WORKSPACE_ADMIN role, no user identity) All plans Workspace API Keys

All four are sent the same way:

Authorization: Bearer <token>

Not sure which to use?

Choose by plan and use case:

  • FREE workspaces: Use a short-lived token (cto_slt_v1_) from Settings > API Tokens for ad hoc queries and experimentation. For interactive apps or longer-lived access, use OAuth 2.1 + PKCE. PATs are not available on FREE.
  • PRO workspaces and higher: Use a PAT for unattended automation and scripts. Use a short-lived token for quick, one-off API calls without creating a long-lived credential. Use OAuth 2.1 + PKCE when a human is present to approve access.
  • Workspace-scoped automation: Use a Workspace API key.

2. Make your first request

Once you have a token, call any /v1 endpoint. For example, list your meetings:

curl https://api.contio.ai/v1/meetings \
  -H "Authorization: Bearer $CONTIO_TOKEN"

Create a meeting:

curl -X POST https://api.contio.ai/v1/meetings \
  -H "Authorization: Bearer $CONTIO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title": "Weekly Sync"}'

3. Understand scopes

Every request is authorized against the scopes attached to your credential. The User API defines the following scopes:

Scope Grants
meetings:read Read meetings, agenda items, and context
meetings:write Create, update, and delete meetings, agenda items, and context
action-items:read Read action items
action-items:write Create, update, and delete action items
calendar:read Read calendar events
workspace:read Read workspace settings and members
workspace:write Manage workspace settings, members, API keys, and webhooks (also required to list API keys and webhooks)

A request whose credential is missing a required scope returns 403. When issuing a PAT or requesting OAuth scopes, you can only request scopes that are a subset of your own grants.

Next steps