Get access to the Rhythms REST API

Last updated: September 4, 2026

The Rhythms REST API lets you read and write OKR data from your own systems — BI tools, data warehouses, HR and planning systems, or scripts. Access is by API token: request one from Rhythms support, then call https://api.rhythms.ai/rest/v2/… with the token in the Authorization header. The full endpoint reference lives at apidocs.rhythms.ai/rest/v2.

Check whether you need the API at all

Rhythms has built-in options that cover most reporting and integration needs without code:

  • Documents and Layouts pull live data from your OKRs and connectors and refresh as your team checks in. For most reporting and review use cases this is faster than building a custom integration.
  • Connectors and auto-updates bring data from other apps into Rhythms — Key Results and Initiatives that update themselves from Linear, Google Sheets, Salesforce and so on. See How to Set Up Auto-Updates.
  • Rhythms MCP gives AI tools such as Claude, ChatGPT and Cursor natural-language access to your workspace with each person's own permissions. See Use Rhythms from Claude, ChatGPT or Cursor.

Use the REST API when you need Rhythms data inside a system of your own, or when you need to create or update OKRs, check-ins, teams or users in bulk from an external source.

Request an API token

API tokens are issued by Rhythms support; there is no self-serve token page in the app today. Contact support and include:

  • your workspace name;
  • whether the token should belong to a Rhythms Admin or to a Member, and for a Member their name and email address;
  • a sentence on what the integration will do, so support can advise on the right scope.

Every token belongs to one user account, and the API applies that user's permissions to every request. A token for a Rhythms Admin can read and manage the whole workspace; a token for a Member sees and edits only what that person can see and edit in Rhythms. Choose the owner accordingly — a token tied to a dedicated admin account keeps running when an individual leaves.

Tokens look like tokp_ followed by 48 hexadecimal characters, for example tokp_1abc23c45d…. Treat a token like a password: store it in a secrets manager and never commit it to source control. Tokens do not expire on their own. Ask support to revoke a token if it is exposed or when the integration is retired.

A token stops working if its user is deactivated in Rhythms or the workspace is closed; requests then return 401.

Make your first request

Send the token as a Bearer token:

curl -H "Authorization: Bearer tokp_1abc23c45d..." \
     -H "Accept: application/json" \
     "https://api.rhythms.ai/rest/v2/objectives?limit=1"

A missing or invalid token returns 401 with { "error": "Invalid Authorization header" }. A 403 means the token is valid but its user is not allowed to perform that action in Rhythms.

What you can read and write

ResourcePathOperations
Objectives/rest/v2/objectivesList, get, create, update, delete
Key Results/rest/v2/key_resultsList, get, create, update, delete
Initiatives/rest/v2/initiativesList, get, create, update, delete
Check-ins/rest/v2/checkinsList, get, create, update, delete
Labels/rest/v2/labelsList, get, create, update, delete
Teams/rest/v2/teamsList, get, create, update, delete
Users/rest/v2/usersList, get, create, update

Goal records include their owners, teams, labels, parents, current metric and status, so a single list call is usually enough for a report. Field-level details, filters and request bodies are in Rhythms REST API v2 and in the live docs, where you can send test requests with your token and load the API definition into an AI coding assistant such as Cursor.

Frequently asked questions

Can I create a token myself in Settings? Not yet. Tokens are issued and revoked by Rhythms support.

Are there rate limits? Rhythms does not publish fixed per-token limits today. Keep polling modest — page with limit=100 and use count=true rather than walking every page — and handle a 429 response with a back-off, because the API reserves it.

Can a token belong to a Guest? A Guest's token has a Guest's permissions, which in Rhythms are read-only, so it cannot create or update anything.

Which environment does the token work in? Production only, at https://api.rhythms.ai. A token is bound to the workspace it was issued for.

Related articles