Skip to content

Rhythms REST API (v2)

The official REST API for Rhythms - designed for third-party integrations, mobile apps, and external tooling. This API follows REST conventions and provides clean, predictable endpoints for managing OKRs (Objectives, Key Results, and Initiatives).

Base URL

https://api.rhythms.ai

All REST API v2 endpoints are prefixed with /rest/v2/

Response Format

All responses use JSON format with consistent error handling and pagination. Successful responses include requested data, while error responses provide detailed troubleshooting information.

Error Handling

The API uses standard HTTP status codes with detailed JSON error messages.

Perfect for building integrations, mobile apps, reporting dashboards, and automation workflows.

Authentication

All API endpoints require authentication using Bearer token authorization. Include this header with every request:

  • Authorization: Bearer token for your account access

Getting API Credentials: Contact support at support@rhythms.ai to obtain your access token.

Rate Limiting

Standard rate limits apply to all endpoints to ensure fair usage and optimal performance for all users.

If you need higher limits for your integration, please contact our support team at support@rhythms.ai with details about your use case.

Pagination

List endpoints support pagination using query parameters:

  • page: Page number (default: 1)
  • limit: Items per page (default: 20, max: 100)

Response includes pagination metadata in the pagy object with next indicating the next page number (or null if no more pages).

Servers
https://api.rhythms.ai/

Checkins

Operations

Initiatives

Operations

Key Results

Operations

Labels

Operations

List labels

Request

Retrieves all labels and label groups via REST API

This endpoint supports filtering and pagination through query parameters. Available ransackable attributes: uuid, name, parent_uuid, is_group.

Available ransackable associations and their attributes:

  • parent: parent_uuid, parent_name, parent_parent_uuid, parent_is_group
Query
pagenumber

Page number for pagination (default: 1)

Default 1
per_pagenumber

Number of records per page (default: 20, max: 100)

Default 20
limitnumber

Alias for per_page - number of records per page

Default 20
limit_maxnumber

Maximum number of records per page (overrides limit if not set)

Default null

Responses

Bad Request - Invalid parameters or malformed request

Create a new label

Request

Creates a new label with the provided attributes. Labels can be regular labels or groups.

Bodyapplication/json
labelobjectrequired
label.​namestringrequired

Label name (unique within tenant)

label.​parent_uuidstring

UUID of parent label (parent must be a group)

label.​is_groupboolean

Whether this label is a group

Default false

Responses

Success

Body*/*
uuidstringrequired

Uuid

namestringrequired

Name

is_groupbooleanrequired

Is group

Default "false"
parent_uuidstring

Parent uuid

Default null
labelings_countnumberrequired

Labelings count

Default "0"

Get a specific label

Request

Retrieves detailed information about a specific label by its UUID

Path
idstringrequired

Label UUID

Responses

Success

Body*/*
uuidstringrequired

Uuid

namestringrequired

Name

is_groupbooleanrequired

Is group

Default "false"
parent_uuidstring

Parent uuid

Default null
labelings_countnumberrequired

Labelings count

Default "0"

Update a label

Request

Updates an existing label with the specified attributes

Path
idstringrequired

Label UUID

Bodyapplication/json
labelobjectrequired
label.​namestring

Label name

Responses

Success

Body*/*
uuidstringrequired

Uuid

namestringrequired

Name

is_groupbooleanrequired

Is group

Default "false"
parent_uuidstring

Parent uuid

Default null
labelings_countnumberrequired

Labelings count

Default "0"

Delete a label

Request

Deletes a label. If the label has child labels, they will also be deleted.

Path
idstringrequired

Label UUID

Responses

Success

Body*/*
uuidstringrequired

Uuid

namestringrequired

Name

is_groupbooleanrequired

Is group

Default "false"
parent_uuidstring

Parent uuid

Default null
labelings_countnumberrequired

Labelings count

Default "0"

Objectives

Operations

Teams

Operations

Users

Operations