The NextGen Live Task Scheduler allows you to schedule automated start and stop times for live channels. The scheduler makes calls to the Live API on your behalf at specified times, automatically activating and deactivating live streams according to your schedule.
The scheduler supports the following workflow types:
You can add schedules to NextGen Live channels using the Control Room interface or the API. When you create a schedule, the system creates a workflow with tasks that execute in sequence.
To add a schedule using the Live module:

To create a schedule programmatically, use the Job Start/Stop Schedule API endpoint:
POST /v2/accounts/{account_id}/jobs/{job_id}/scheduler/jobstartstop
{
"job_id": "6386637563112",
"notification_url": "https://your-notification-endpoint.com/webhook",
"description": "My scheduled live event",
"metadata_passthrough": {
"custom_field": "custom_value"
},
"start_action": {
"time_utc": 1742230896,
"notification": 300
},
"stop_action": {
"time_utc": 1742234496,
"notification": 300
}
}
| Field | Type | Required | Description |
|---|---|---|---|
job_id |
string | Yes | The ID of the live channel to schedule |
notification_url |
string | Conditional | Webhook URL to receive notifications. Required if notification values are set in actions |
description |
string | No | Optional description for the schedule |
metadata_passthrough |
object | No | Custom metadata to pass through with notifications |
start_action.time_utc |
integer | Yes | Unix timestamp (seconds since epoch) when the channel should start |
start_action.notification |
integer | No | Seconds before start time to send a pre-start notification |
stop_action.time_utc |
integer | Yes | Unix timestamp (seconds since epoch) when the channel should stop |
stop_action.notification |
integer | No | Seconds before stop time to send a pre-stop notification |
{
"workflow_id": "28ac2d2163d34b93860b6b5062df97e7",
"account_id": "6415518627001",
"type": "jobstartstop",
"workflow_start_time_utc": 1742230896,
"job_id": "6386637563112",
"notification_url": "https://your-notification-endpoint.com/webhook",
"start_action": {
"time_utc": 1742230896,
"notification": 300,
"state": "pending"
},
"stop_action": {
"time_utc": 1742234496,
"notification": 300,
"state": "pending"
}
}
You can view all scheduled events for a channel using the Control Room or the API.
In the Control Room, the Scheduling section displays all scheduled events for the channel:
To list all schedules for a channel:
GET /v2/accounts/{account_id}/jobs/{job_id}/scheduler
| Parameter | Type | Description |
|---|---|---|
state |
string | Filter by state(s), comma-separated (e.g., pending,cancelled) |
start |
integer | Filter workflows with start time >= this Unix timestamp |
end |
integer | Filter workflows with start time < this Unix timestamp |
page_size |
integer | Number of results per page (max: 100) |
start_token |
string | Pagination token for fetching next page |
GET /v2/accounts/123/jobs/abc123/scheduler?state=pending
{
"workflows": [
{
"workflow_id": "10ac2d2163d34b93860b6b5062df97e7",
"account_id": "6415518627001",
"type": "jobstartstop",
"workflow_start_time_utc": 1742220896,
"job_id": "6386637563112",
"start_action": {
"time_utc": 1742220896,
"state": "pending"
},
"stop_action": {
"time_utc": 1742224496,
"state": "pending"
}
}
],
"next_token": "optional_pagination_token"
}
You can update scheduled events that are still in the pending state.
To update a schedule programmatically:
PATCH /v2/accounts/{account_id}/jobs/{job_id}/scheduler/jobstartstop/{workflow_id}
{
"start_action": {
"time_utc": 1742231000,
"notification": 600
},
"stop_action": {
"time_utc": 1742235000
}
}
Deleting a schedule cancels all pending tasks in the workflow.

To delete a schedule programmatically:
DELETE /v2/accounts/{account_id}/jobs/{job_id}/scheduler/jobstartstop/{workflow_id}
The following API endpoints are available for NextGen Live scheduling:
| Method | Endpoint | Description |
|---|---|---|
GET |
/v2/accounts/{account_id}/jobs/{job_id}/scheduler |
List all scheduled workflows for a channel |
POST |
/v2/accounts/{account_id}/jobs/{job_id}/scheduler/jobstartstop |
Create a new scheduled start/stop workflow |
GET |
/v2/accounts/{account_id}/jobs/{job_id}/scheduler/jobstartstop/{workflow_id} |
Get details of a specific scheduled workflow |
PATCH |
/v2/accounts/{account_id}/jobs/{job_id}/scheduler/jobstartstop/{workflow_id} |
Update an existing scheduled workflow |
DELETE |
/v2/accounts/{account_id}/jobs/{job_id}/scheduler/jobstartstop/{workflow_id} |
Delete/cancel a scheduled workflow |
| Method | Endpoint | Description |
|---|---|---|
GET |
/v2/accounts/{account_id}/jobs/{job_id}/scheduler/autostop |
Get autostop schedule for a channel |
For complete API documentation, see the NextGen Live API Reference.