Reserve Task

Reserves one available task for processing. The task enters a lease period defined by worktime.

Authentication

Requires authentication. Pass your API key via X-API-Key or Authorization: Bearer header.

Path Parameters

Parameter Type Description
id string The unique identifier of the scheduler

Request Body

Field Type Description
worktime string Lease duration as a Go duration string, such as 30s or 2m
1{
2  "worktime": "30s"
3}

Example Request

1curl -X POST "https://api.hola.cloud/schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890/tasks/reserve" \
2  -H "X-API-Key: YOUR_API_KEY" \
3  -H "Content-Type: application/json" \
4  -d '{
5    "worktime": "30s"
6  }'

Example Response

1HTTP/1.1 200 OK
2Content-Type: application/json
 1{
 2  "id": "task-x1y2z3",
 3  "payload": {
 4    "type": "send_email",
 5    "to": "user@example.com",
 6    "template": "welcome"
 7  },
 8  "lease_expires_at": "2025-06-21T12:02:01Z",
 9  "labels": ["project:onboarding", "priority:high"]
10}

If no task is available before the work window ends, the endpoint returns 204 No Content with an empty body.

Error Codes

Status Code Description
400 invalid_json Invalid JSON payload
400 validation_error Missing, invalid, or non-positive worktime
401 unauthorized Missing or invalid API key
500 internal_error Internal server error

Comments

Leave a comment