Get head and lock
POST/v2/request-queues/:queueId/head/lock
Returns the given number of first requests from the queue and locks them for the given time.
If this endpoint locks the request, no other client or run will be able to get and lock these requests.
The response contains the hadMultipleClients boolean field which indicates
that the queue was accessed by more than one client (with unique or empty
clientKey).
Request
Path Parameters
Queue ID or username~queue-name.
WkzbQMuFYuamGv3YFQuery Parameters
How long the requests will be locked for (in seconds).
Example:60Possible values: <= 25
How many items from the queue should be returned.
Example:25A unique identifier of the client accessing the request queue. It must be a string between 1 and 32 characters long.
Example:client-abcStatus 200
Response Headers
{
"data": {
"limit": 3,
"queueModifiedAt": "2018-03-14T23:00:00.000Z",
"hadMultipleClients": true,
"lockSecs": 60,
"items": [
{
"id": "8OamqXBCpPHxyj9",
"retryCount": 0,
"uniqueKey": "http://example.com",
"url": "http://example.com",
"method": "GET",
"lockExpiresAt": "2022-06-14T23:00:00.000Z"
},
{
"id": "8OamqXBCpPHxyx9",
"retryCount": 0,
"uniqueKey": "http://example.com/a",
"url": "http://example.com/a",
"method": "GET",
"lockExpiresAt": "2022-06-14T23:00:00.000Z"
},
{
"id": "8OamqXBCpPHxy08",
"retryCount": 0,
"uniqueKey": "http://example.com/a/b",
"url": "http://example.com/a/b",
"method": "GET",
"lockExpiresAt": "2022-06-14T23:00:00.000Z"
}
]
}
}
Schema
data object required
A batch of locked requests from the request queue head.
- limit integer required
The maximum number of requests returned.
Example:1000 - queueModifiedAt string<date-time> required
The timestamp when the request queue was last modified. Modifications include adding, updating, or removing requests, as well as locking or unlocking requests.
Example:2018-03-14T23:00:00.000Z - queueHasLockedRequests boolean
Whether the request queue contains requests locked by any client (either the one calling the endpoint or a different one).
Example:true - clientKey string
The client key used for locking the requests.
Example:client-one - hadMultipleClients boolean required
Whether the request queue has been accessed by multiple different clients.
Example:true - lockSecs integer required
The number of seconds the locks will be held.
Example:60 items object[] required
The array of locked requests from the request queue head.
- id string required
A unique identifier assigned to the request.
Example:8OamqXBCpPHxyH9 - uniqueKey string required
A unique key used for request de-duplication. Requests with the same unique key are considered identical.
Example:GET|60d83e70|e3b0c442|https://apify.com - url string<uri> required
The URL of the request.
Example:https://apify.com - method string
The HTTP method of the request.
Example:GET - retryCount integer
The number of times this request has been retried.
Example:0 - lockExpiresAt string<date-time> required
The timestamp when the lock on this request expires.
Example:2022-06-14T23:00:00.000Z
- id string required
- limit integer required
Status 400
Bad request - invalid input parameters or request body.
{
"error": {
"type": "invalid-input",
"message": "Invalid input: The request body contains invalid data."
}
}
Schema
error object required
- type string requiredExample:
run-failed - message string requiredExample:
Actor run did not succeed (run ID: 55uatRrZib4xbZs, status: FAILED)
- type string requiredExample: