Rundownby Tally

Integrations

API

Read a plan or run the live show from Companion, a Stream Deck, or your own tooling. An owner or admin creates a church API key in Settings. The secret is shown once and stored as a hash.

Keys

Each key belongs to one church. Choose the narrow scope.

Authentication

Send the key on every request.

Authorization: Bearer rdk_...

X-Api-Key is accepted as well. A query token (?token=) is accepted only on live reads, the live stream, and control calls, for hardware that cannot set a header. Plan and item routes reject it.

Plans and items

curl -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans

curl -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID

curl -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID/items

The plan id is the last segment of the editor URL, /plans/PLAN_ID.

Live state

curl -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID/live

curl -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/live

The plan route returns the current cue, the next cue, remaining seconds, and whether the show is live, paused, or over time. /api/v1/live lists the shows that are live for this church. Count the clock from remainingSeconds and serverTime. While paused, the remaining time stays put.

Control

Start the show in Rundown. These calls advance the session that is already live. They do not call Planning Center or a model.

curl -X POST -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID/live/go

curl -X POST -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID/live/pause

curl -X POST -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID/live/resume

curl -X POST -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID/live/back

A read key receives 403 with code insufficient_scope. A revoked or unknown key receives 401.

Live updates

Open a Server-Sent Events stream. Each state event is the same snapshot as the live route, sent when the cue changes. Timer ticks stay off the stream. Run the countdown locally between events.

curl -N -H "Authorization: Bearer $RUNDOWN_API_KEY" \
  -H "Accept: text/event-stream" \
  https://rundown.tallyconnect.app/api/v1/plans/PLAN_ID/live/stream

Rate limit

Each key may make 60 requests per 60 seconds. Responses include RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset. Over the limit, the API returns 429 and Retry-After.

Companion

The Bitfocus Companion module in this product uses a control key, the plan id, and this origin. Actions are GO, pause, and back. Feedbacks light when the show is live, paused, or over time. Variables are the current cue, the next cue, and the remaining time.