Retrieve priority job slot statistics
Returns priority job slot statistics for a requested region and time range.
https://api2.transloadit.com/ priority_job_slot_statsRetrieves historical Priority Job Slot usage for the requested region and time range.
For region: "all", regional minute maxima are summed for each minute, then the largest
minute sum is selected for each bucket and for maxSlotCount. Regional peaks can occur at
different instants within the same minute, so this value can exceed the actual simultaneous
cross-region peak. The same calculation is used by slot_count when aggregation: "max".
Request example
Run this request in a server-side shell with curl and a suitable bearer token in TRANSLOADIT_TOKEN. If you need a token, expand the setup below.
This example also uses jq to encode dynamic values as JSON.
Need a bearer token?
In a trusted server-side shell with curl and jq, set TRANSLOADIT_KEY and TRANSLOADIT_SECRET to your Auth Key and Auth Secret. Keep both credentials and the resulting token secret; never run this setup in browser code.
First, create a token with this endpoint’s required scopes. Your Auth Key must already grant those scopes.
if ! TOKEN_RESPONSE="$(curl --fail-with-body -sS \
--request POST \
--url 'https://api2.transloadit.com/token' \
--user "${TRANSLOADIT_KEY:?Set TRANSLOADIT_KEY}:${TRANSLOADIT_SECRET:?Set TRANSLOADIT_SECRET}" \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'aud=api2' \
--data-urlencode 'scope=queues:read')"; then
printf '%s\n' "$TOKEN_RESPONSE" >&2
exit 1
fi
TRANSLOADIT_TOKEN="$(printf '%s' "$TOKEN_RESPONSE" |
jq -er '.access_token | strings | select(length > 0)')" || exit 1
Keep this shell open and run the request below. Reuse the token while it remains valid.
SINCE="$(date -u +%Y-%m-%dT00:00:00Z)"
PARAMS="$(jq -cn --arg since "${SINCE:?Set SINCE}" '{"region":"us-east-1","since":$since}')"
curl --fail-with-body -sS --request GET --get \
--url "https://api2.transloadit.com/priority_job_slot_stats" \
--header "Authorization: Bearer ${TRANSLOADIT_TOKEN:?Set TRANSLOADIT_TOKEN}" \
--data-urlencode "params=$PARAMS"
Authentication
This endpoint accepts signed params or a bearer token. See Authentication for setup instructions.
Required scope for the Auth Key or bearer token: queues:read.
Signed requests require both a signature and a future params.auth.expires timestamp. Bearer tokens do not require either.
Query parameters
params(JSON string), required. A JSON-encoded object whose supported keys are listed below.signature(string). Required for signed requests. Omit this field when using a bearer token.
Supported keys inside the params field
Authentication fields in this list apply to signed requests. With a bearer token, you can omit params.auth and the separate signature field. Compare the authentication-specific request parameters below.
Complete JSON Schema
params: Only the fields listed for this object are accepted.
| Field | Type and description |
|---|---|
params. | "avg" | "max" | nullSelects average or maximum slot usage. Omission or null defaults to average usage. |
params.required for signed requests; optional with a bearer token | Contains the Transloadit API key and signature-authentication metadata for a Priority Job Slots request.
|
params.required | stringISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it. |
params.required | stringTransloadit API key used to authenticate requests |
params. | string | integerUnique, random value included in signed request params to make each signature unique and prevent accidental signature reuse. |
params. | string | integerUnique, random value included in signed request params to make each signature unique and prevent accidental signature reuse. |
params.required | string (minimum length: 1)Region to include, or |
params.required | string (minimum length: 1)Date and time at which the statistics window begins, at most 91 days ago. ISO 8601 is recommended; API2 also preserves date strings accepted by its existing parser. A longer lookback is rejected with the endpoint’s invalid-time error. |
Request parameters by authentication method
With signed params
Include your Auth Key as params.auth.key. When signing the request, include a future params.auth.expires timestamp and send the signature in the separate signature field. The field definitions below use paths inside params.
Complete JSON Schema
params: Only the fields listed for this object are accepted.
Uses the field definitions above: params.aggregation, params.auth, params.nonce, params.region, params.since
With a bearer token
Send the bearer token in the Authorization header. You can omit params.auth and the separate signature field. Other required parameters still apply. The field definitions below use paths inside params.
Complete JSON Schema
params: Only the fields listed for this object are accepted.
Uses the field definitions above: params.aggregation, params.nonce, params.region, params.since
| Field | Type and description |
|---|---|
params. | Contains the Transloadit API key and signature-authentication metadata for a Priority Job Slots request.
|
params. | stringISO 8601 expiration timestamp in the future. Required when a request is signed or requires signature authentication; bearer-authenticated requests may omit it. |
params. | stringTransloadit API key used to authenticate requests |
params. | string | integerUnique, random value included in signed request params to make each signature unique and prevent accidental signature reuse. |
Response
Here’s an example response body:
{
"aggregation": "avg",
"avgSlotCount": 2,
"granularity": 300,
"maxSlotCount": 4,
"ok": "PRIORITY_JOB_SLOT_STATS_FOUND",
"stats": [
{
"avg_slot_count": 2,
"data_from_ts": 1789200000,
"max_slot_count": 4,
"slot_count": 2
}
]
}2xx success
JSON response body. application/json text/plain; charset=utf-8
Response body schema
Complete JSON Schema
The response contains only the fields listed for this object.
| Field | Type and description | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
aggregationrequired | "avg" | "max" | ||||||||||
avgSlotCountrequired | number (minimum: 0) | ||||||||||
granularityrequired | integer (exclusive minimum: 0)Duration of each statistics bucket in seconds. | ||||||||||
maxSlotCountrequired | integer (minimum: 0) | ||||||||||
okrequired | string (always: "PRIORITY_JOB_SLOT_STATS_FOUND") | ||||||||||
statsrequired | Array<object>Array item schema
|
HTTP 400
JSON response body. application/json text/plain; charset=utf-8
Response body schema
Complete JSON Schema
Named errors and the general error format
error: "PRIORITY_JOB_SLOT_STATS_INVALID_AGGREGATION"
aggregation must be either "avg" or "max".
The response may contain additional fields.
error: "PRIORITY_JOB_SLOT_STATS_INVALID_TIME"
since time is missing or incorrect.
The response may contain additional fields.
error: "PRIORITY_JOB_SLOT_STATS_MISSING_REGION"
Must provide a specific region, or "all".
The response may contain additional fields.
General error format
HTTP 500
JSON response body. application/json text/plain; charset=utf-8
Response body schema
Complete JSON Schema
Named errors and the general error format
error: "PRIORITY_JOB_SLOT_STATS_ERROR"
Could not load Priority Job Slot statistics.
The response may contain additional fields.
General error format
Error response
JSON response body. application/json text/plain; charset=utf-8
Response body schema
Complete JSON Schema
The response may contain additional fields.
| Field | Type and description |
|---|---|
assembly_id | string |
error | string (minimum length: 1) |
http_code | number | string
|
message | stringHuman-readable explanation of the error. Its wording can vary; use the |
reason | null | string | number | boolean | Array<any value> | objectAny of the following schemas may apply: nullnullstringstringnumbernumberbooleanbooleanArray<any value>Array<any value>Array item schemaany valueobjectobjectAdditional property schemaany value |