Confirmed works out which show is live from the schedule. You can also set the live show yourself, and clear it again to let Confirmed go back to the schedule. These calls need a show control key, the same one show control uses.

Endpoint

/api/v1/<production>/shows/current

GET

Returns the current show.

POST

Sets the current show.

DELETE

Clears the current show.

Set the current show

If you know the show's ID, you can name it directly:

curl -X POST "https://confirmed.show/api/v1/<production>/shows/current?show_id=ab12" \
     -H "X-API-Token: your-key"

Without a show_id, the API works out which show is live right now:

curl -X POST "https://confirmed.show/api/v1/<production>/shows/current" \
     -H "X-API-Token: your-key"

A show stays live until 30 minutes past its scheduled finish, or until five minutes before the next one starts, whichever comes first. After that, the next show takes over. When nothing is running, the next show on the schedule becomes the current show.

If your production runs several shows at once, you can narrow the search:

Query parameters

Parameter Description
show_id The show to mark as current. With it, the API skips the search.
venue_id Only consider shows at this venue.
room_id Only consider shows in this room. Needs venue_id as well.
show_type Only consider shows of this type.

The response tells you which show the API picked:

{"status": "ok", "show_id": "ab12"}

Read the current show

curl "https://confirmed.show/api/v1/<production>/shows/current" \
     -H "X-API-Token: your-key"
{"show_id": "ab12"}

You get {"show_id": null} when no show is marked current.

Clear the current show

curl -X DELETE "https://confirmed.show/api/v1/<production>/shows/current" \
     -H "X-API-Token: your-key"
{"status": "ok", "show_id": null}

Once you clear it, Confirmed goes back to the show the schedule says is running. It's worth clearing at the end of a run, so last week's show doesn't stay current for your team.