Docs examples target https://api.scrapy.infralyon.com (not production https://api.scrapy.io).
Skip to main content

Schedules

Base path: https://api.scrapy.infralyon.com/v1/schedules

Auth required. Owner-scoped. Soft-delete on DELETE.

For a full walkthrough see Schedules guide.


List schedules

GET /v1/schedules?offset=0&limit=20
curl -s "https://api.scrapy.infralyon.com/v1/schedules?limit=20" \
-H "Authorization: Bearer $SCRAPY_API_KEY"

Response 200

{
"data": {
"items": [
{
"id": "…",
"publisher": "datadoping",
"slug": "instagram-profile-scraper",
"toolName": "Instagram Profile Scraper",
"runName": "nasa-daily",
"timezone": "UTC",
"frequency": "repeatedly",
"date": "2026-09-08",
"time": "09:00",
"repeatFrequency": "daily",
"inputsCount": 1,
"isActive": true,
"notificationsEnabled": false,
"createdAt": "2026-09-07T12:00:00.000Z"
}
],
"total": 1,
"offset": 0,
"limit": 20
}
}

Create schedule

POST /v1/schedules
Idempotency-Key: optional-unique-string
curl -s -X POST "https://api.scrapy.infralyon.com/v1/schedules" \
-H "Authorization: Bearer $SCRAPY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: my-client-key-1" \
-d '{
"publisher": "datadoping",
"slug": "instagram-profile-scraper",
"runName": "nasa-daily",
"timezone": "UTC",
"frequency": "repeatedly",
"date": "2026-09-08",
"time": "09:00",
"repeatFrequency": "daily",
"inputs": ["nasa"]
}'

Body

FieldRequiredNotes
publisheryesPublic publisher slug
slugyesTool slug
runNameyesDisplay name
timezoneyesIANA tz
frequencyyesone-time | repeatedly
dateyesYYYY-MM-DD
timeyesHH:MM
inputsyesNon-empty string[]
repeatFrequencyif repeatedlyevery_10_mins | hourly | daily | weekly | monthly

Responses

StatusMeaning
201Created ({ "data": { …schedule } })
400Validation
402Insufficient credits
404Tool not found / inactive
409Idempotency key still processing

Get schedule

GET /v1/schedules/{scheduleId}

200 with { "data": { … } } or 404.


Patch schedule

PATCH /v1/schedules/{scheduleId}

Body must include exactly one of:

{ "isActive": false }

or

{ "notificationsEnabled": true }
curl -s -X PATCH "https://api.scrapy.infralyon.com/v1/schedules/$SCHEDULE_ID" \
-H "Authorization: Bearer $SCRAPY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"isActive": false}'

Delete schedule

DELETE /v1/schedules/{scheduleId}

Soft-deletes and deactivates. Response:

{ "data": { "ok": true } }