curl --request POST \
--url https://cronho.st/api/v1/schedules \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "Daily Health Check",
"description": "Check API health every day at 9 AM",
"cronExpression": "0 9 * * *",
"timezone": "America/New_York",
"endpoint": "https://api.example.com/health",
"httpMethod": "GET",
"headers": "{\"User-Agent\": \"Cronhost-Monitor\"}",
"maxRetries": 3,
"timeoutSeconds": 30
}
'{
"data": {
"id": "schedule_123",
"name": "Daily Health Check",
"cronExpression": "0 9 * * *",
"timezone": "America/New_York",
"endpoint": "https://api.example.com/health",
"httpMethod": "GET",
"isEnabled": true,
"nextRunAtUtc": "2024-01-15T14:00:00.000Z",
"createdAt": "2024-01-01T12:00:00.000Z",
"updatedAt": "2024-01-14T14:00:00.000Z",
"maxRetries": 3,
"timeoutSeconds": 30,
"description": "Check API health every day at 9 AM",
"body": "{\"key\": \"value\"}",
"headers": "{\"User-Agent\": \"Cronhost-Monitor\", \"Content-Type\": \"application/json\"}",
"lastRunAtUtc": "2024-01-14T14:00:00.000Z"
},
"success": true
}Create a new scheduled HTTP request with cron expression timing.
curl --request POST \
--url https://cronho.st/api/v1/schedules \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "Daily Health Check",
"description": "Check API health every day at 9 AM",
"cronExpression": "0 9 * * *",
"timezone": "America/New_York",
"endpoint": "https://api.example.com/health",
"httpMethod": "GET",
"headers": "{\"User-Agent\": \"Cronhost-Monitor\"}",
"maxRetries": 3,
"timeoutSeconds": 30
}
'{
"data": {
"id": "schedule_123",
"name": "Daily Health Check",
"cronExpression": "0 9 * * *",
"timezone": "America/New_York",
"endpoint": "https://api.example.com/health",
"httpMethod": "GET",
"isEnabled": true,
"nextRunAtUtc": "2024-01-15T14:00:00.000Z",
"createdAt": "2024-01-01T12:00:00.000Z",
"updatedAt": "2024-01-14T14:00:00.000Z",
"maxRetries": 3,
"timeoutSeconds": 30,
"description": "Check API health every day at 9 AM",
"body": "{\"key\": \"value\"}",
"headers": "{\"User-Agent\": \"Cronhost-Monitor\", \"Content-Type\": \"application/json\"}",
"lastRunAtUtc": "2024-01-14T14:00:00.000Z"
},
"success": true
}API key for authentication. Get your API key from the Cronhost dashboard.
Human-readable schedule name
1 - 255"Daily Health Check"
Valid cron expression defining when to run
"0 9 * * *"
IANA timezone identifier
"America/New_York"
Target HTTP endpoint URL
"https://api.example.com/health"
HTTP method to use for the request
GET, POST, PUT, DELETE, PATCH "GET"
Optional description of what the schedule does
1000"Check API health every day at 9 AM"
Request body for POST/PUT/PATCH requests
"{\"key\": \"value\"}"
HTTP headers as JSON string
"{\"User-Agent\": \"Cronhost-Monitor\", \"Content-Type\": \"application/json\"}"
Maximum number of retry attempts
0 <= x <= 103
Request timeout in seconds
1 <= x <= 30030