Schedules API

4 min read

Schedules API

Create and manage time-based content schedules via the API.

List Schedules

`` GET /v1/schedules ``

Response includes schedule names, status, rule count, and target information.

Create Schedule

`` POST /v1/schedules ``

Request body: ``json { "name": "Weekday Menu Rotation", "is_active": true, "rules": [ { "playlist_id": "pl_breakfast", "start_time": "06:00", "end_time": "11:00", "days": ["MON", "TUE", "WED", "THU", "FRI"], "priority": 30 }, { "playlist_id": "pl_lunch", "start_time": "11:00", "end_time": "16:00", "days": ["MON", "TUE", "WED", "THU", "FRI"], "priority": 30 }, { "playlist_id": "pl_dinner", "start_time": "16:00", "end_time": "23:00", "days": ["MON", "TUE", "WED", "THU", "FRI"], "priority": 30 } ], "targets": [ { "type": "tag", "value": "menu-board" } ] } ``

Using RRULE

For complex recurrence patterns:

``json { "playlist_id": "pl_special", "start_time": "12:00", "end_time": "14:00", "rrule": "FREQ=WEEKLY;BYDAY=TH", "priority": 50 } ``

Use the Schedules API to sync with your business systems. For example, integrate with your POS to automatically activate happy hour playlists when a promotion starts.

Get Schedule Detail

`` GET /v1/schedules/:id ``

Update Schedule

`` PATCH /v1/schedules/:id ``

Activate/Deactivate

`` POST /v1/schedules/:id/activate POST /v1/schedules/:id/deactivate ``

Delete Schedule

`` DELETE /v1/schedules/:id ``

Evaluate Active Schedule

Check what playlist would be active for a device right now:

`` GET /v1/devices/:id/active-schedule ``

Returns the currently active schedule rule and playlist based on the priority evaluation.

Schedule times use the organization's default timezone. If you operate across multiple timezones, ensure your API calls account for this. Include timezone information in your integration logic.

Was this article helpful?