Scheduling Runs
A Schedule creates recurring Runs with a completed Robot. Each scheduled Run uses the same inputs and follows the Robot's Run-name sequence.
If you still need to create or complete a Robot, start with Extracting data.
Create a Schedule
Dashboard
Navigate to Extract > Schedules and click New Schedule.
- Select the completed Robot to use
- Set the cadence (e.g. every 1 day, every 6 hours, every 1 week)
- Optionally provide start URLs and a budget
- Click Create
A name is generated from the cadence and Robot, such as
Daily nike_com_US run. You can provide a different Schedule name without
renaming the Robot.
The Robot selector shows only completed Robots.
API
export EXTRALT_API_KEY="your-api-key"
curl -s -X POST "https://api.extralt.com/v1/extract/schedules" \
-H "Authorization: Bearer $EXTRALT_API_KEY" \
-H "Idempotency-Key: schedule-create-example-1" \
-H "Content-Type: application/json" \
-d '{
"robot_id": "your-robot-id",
"cadence": {
"interval_amount": 1,
"interval_unit": "day"
},
"start_urls": ["https://example-store.com/products"],
"budget": 50
}' | jqThe response is 201 Created with { "id": "<schedule_id>" }.
Parameters
| Parameter | Required | Description |
|---|---|---|
robot_id | Yes | A completed Robot in your organization |
cadence.interval_amount | Yes | Number of intervals between runs (e.g. 1, 6, 12) |
cadence.interval_unit | Yes | hour, day, week, or month |
name | No | Schedule display name. Generated from cadence and Robot when omitted. |
start_urls | No | URLs to crawl. Must match the Robot's host. |
budget | No | Maximum number of Captures to produce per run. Each successful product-page Capture costs 2 credits. |
auto_enrich | No | If true, automatically run enrichment after each scheduled run. Defaults to false. |
Every scheduled Run increments the Robot's run_count. For example, if the
latest manual Run is nike_com_US_2, the next scheduled Run is
nike_com_US_3.
Cadence options
Schedules support flexible cadence intervals:
| Example | interval_amount | interval_unit |
|---|---|---|
| Every hour | 1 | hour |
| Every 6 hours | 6 | hour |
| Daily | 1 | day |
| Every 3 days | 3 | day |
| Weekly | 1 | week |
| Monthly | 1 | month |
Manage Schedules
Dashboard
Navigate to Extract > Schedules to see all your schedules in a table.
The table displays:
| Column | Description |
|---|---|
| Name | Schedule name |
| Robot | Which Robot the Schedule uses |
| Cadence | How often the Schedule creates a Run |
| Next run | When the next Run will be created |
| Last run | When the last Run was created |
| Status | Active, Paused, Paused (no credits), or Paused (payment failed) |
Actions available:
- Pause / Resume: toggle the schedule on or off
- Edit: change the name, cadence, start URLs, or budget
- Delete: remove the schedule permanently
API
# List schedules
curl -s "https://api.extralt.com/v1/extract/schedules" \
-H "Authorization: Bearer $EXTRALT_API_KEY" | jq
# Update a schedule (returns 204 No Content)
curl -s -X PATCH "https://api.extralt.com/v1/extract/schedules/$SCHEDULE_ID" \
-H "Authorization: Bearer $EXTRALT_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "cadence": { "interval_amount": 1, "interval_unit": "week" } }'
# Delete a schedule (returns 204 No Content)
curl -s -X DELETE "https://api.extralt.com/v1/extract/schedules/$SCHEDULE_ID" \
-H "Authorization: Bearer $EXTRALT_API_KEY"The editable fields are cadence, name, robot_id, budget, start_urls,
and auto_enrich. A replacement robot_id must identify another completed
Robot.
The list and read responses use snake_case and nest the Run inputs:
{ id, name, robot_id, robot_name, enabled, cadence: { interval_amount, interval_unit }, config: { start_urls, budget, auto_enrich }, next_run_at, last_run_at, ... }.
Pause and resume
You can pause a Schedule at any time. A user-paused Schedule stops creating Runs until you resume it.
Dashboard
Select a Schedule in the list, then choose Pause or Resume. A Schedule paused because of credits or payment cannot be resumed manually; Extralt resumes it when the underlying issue is resolved.
API
# Pause
curl -s -X POST "https://api.extralt.com/v1/extract/schedules/$SCHEDULE_ID/pause" \
-H "Authorization: Bearer $EXTRALT_API_KEY"
# Resume
curl -s -X POST "https://api.extralt.com/v1/extract/schedules/$SCHEDULE_ID/resume" \
-H "Authorization: Bearer $EXTRALT_API_KEY"Credits and automatic pauses
Scheduled Runs consume credits the same way as manual Runs: 2 credits per successful product-page Capture. Category, search, collection, and other discovery pages do not consume credits.
If your organization runs out of credits, all active schedules automatically pause. They show a Paused (no credits) status in the dashboard.
When credits become available again through a purchase or billing cycle,
Extralt automatically resumes Schedules paused for no_credits. Schedules
paused after a payment failure also resume automatically after the payment
issue is resolved. A Schedule that you paused manually remains paused.
See Credits & Billing for more on credit management.
Concurrency
If a Schedule's previous Run is still active when the next Run is due, the Schedule skips that execution and waits for the next interval. Runs from the same Schedule do not overlap.