Rhythm API Event Subscriptions
Rhythm can notify an integration when plan data changes, instead of the integration polling for changes.
Today, event subscriptions deliver to Zapier only. If you want Rhythm changes to start a workflow in another tool, use the Rhythm integration in Zapier, which handles subscriptions for you. See Integrate Using Zapier + Rhythm.
Delivery contract
For reference, the contract Zapier uses:
- A subscription pairs one event with one delivery URL. Events are named
{entity}.{action}, for examplekpi.created,task.updated,comment.deleted, orkpi_status.created. - On each matching change, Rhythm sends a
POSTto the delivery URL with a JSON envelope:
{
"event": "task.updated",
"event_id": "{unique_per_delivery}",
"created_at": "2026-09-21T14:03:11.482Z",
"data": { "id": "…", "name": "…" }
}
event_idis a UUID, unique per delivery, and is the value to de-duplicate on.created_atis UTC, ISO 8601 with aZsuffix.data.idis the item's ID and repeats across updates to the same item.- For
*.deletedevents,datacarries only the item'sidandname(and, for comments,parentEntityId). - Deliveries are filtered by the permissions of the user who created the subscription. That user's subscription never receives items they could not view in Rhythm.
- Failed deliveries are retried a small number of times with increasing delay. A
410 Goneresponse tells Rhythm the receiver is no longer listening and the subscription is removed. Repeated failures deactivate the subscription.
Deliveries carry the same data shapes as the corresponding v2 API responses. See the Rhythm API Overview for response conventions and permissions.