Obter estatísticas de vagas prioritárias de Job
Retorna estatísticas de vagas prioritárias de Job para uma região e um intervalo de tempo solicitados.
https://api2.transloadit.com/ priority_job_slot_statsRecupera o uso histórico de vagas prioritárias de Job para a região e o intervalo de tempo solicitados.
Para region: "all", os máximos regionais por minuto são somados para cada minuto e, em seguida, a maior soma por minuto é selecionada para cada bucket e para maxSlotCount. Os picos regionais podem ocorrer em instantes diferentes dentro do mesmo minuto, portanto esse valor pode exceder o pico simultâneo real entre regiões. O mesmo cálculo é usado por slot_count quando aggregation: "max".
Exemplo de requisição
Execute esta requisição em um shell no servidor com curl e um bearer token adequado em TRANSLOADIT_TOKEN. Se você precisar de um token, expanda a configuração abaixo.
Este exemplo também usa jq para codificar valores dinâmicos como JSON.
Precisa de um bearer token?
Em um shell confiável no servidor com curl e jq, defina TRANSLOADIT_KEY e TRANSLOADIT_SECRET com sua Auth Key e seu Auth Secret. Mantenha as duas credenciais e o token resultante em segredo; nunca execute esta configuração em código de navegador.
Primeiro, crie um token com os escopos exigidos por este endpoint. Sua Auth Key já deve conceder esses escopos.
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
Mantenha este shell aberto e execute a requisição abaixo. Reutilize o token enquanto ele continuar válido.
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"
Autenticação
Este endpoint aceita params assinados ou um token bearer. Consulte Autenticação para instruções de configuração.
Escopo necessário para a Auth Key ou o token bearer: queues:read.
Requisições assinadas exigem tanto uma signature quanto um timestamp params.auth.expires no futuro. Tokens Bearer não exigem nenhum dos dois.
Parâmetros de consulta
params(string JSON), obrigatório. Um objeto codificado em JSON cujas chaves suportadas estão listadas abaixo.signature(string). Obrigatório para requisições assinadas. Omita este campo ao usar um bearer token.
Chaves compatíveis dentro do campo params
Os campos de autenticação desta lista se aplicam a requisições assinadas. Com um bearer token, você pode omitir params.auth e o campo signature separado. Compare os parâmetros de requisição específicos de autenticação abaixo.
Esquema JSON completo
params: Somente os campos listados para este objeto são aceitos.
| Campo | Tipo e descrição |
|---|---|
params. | "avg" | "max" | nullSeleciona o uso médio ou máximo de vagas. A omissão ou o valor null assume por padrão o uso médio. |
params.obrigatório para requisições assinadas; opcional com um bearer token | Contém a chave de API da Transloadit e os metadados de autenticação por assinatura para uma requisição de vagas prioritárias de Job.
|
params.obrigatório | stringTimestamp de expiração no formato ISO 8601 situado no futuro. Obrigatório quando uma requisição é assinada ou exige autenticação por assinatura; requisições autenticadas por bearer podem omiti-lo. |
params.obrigatório | stringChave de API da Transloadit usada para autenticar as requisições |
params. | string | integerValor único e aleatório incluído nos parâmetros da requisição assinada para tornar cada assinatura única e evitar a reutilização acidental de assinaturas. |
params. | string | integerValor único e aleatório incluído nos parâmetros da requisição assinada para tornar cada assinatura única e evitar a reutilização acidental de assinaturas. |
params.obrigatório | string (comprimento mínimo: 1)Região a incluir, ou |
params.obrigatório | string (comprimento mínimo: 1)Data e hora em que a janela de estatísticas começa, no máximo 91 dias atrás. Recomenda-se ISO 8601; a API2 também preserva strings de data aceitas pelo seu parser atual. Um período de consulta mais longo é rejeitado com o erro de horário inválido do endpoint. |
Parâmetros de requisição por método de autenticação
Com parâmetros assinados
Inclua sua Auth Key como params.auth.key. Ao assinar a requisição, inclua um timestamp futuro em params.auth.expires e envie a assinatura no campo separado signature. As definições de campos abaixo usam caminhos dentro de params.
Esquema JSON completo
params: Somente os campos listados para este objeto são aceitos.
Usa as definições de campo acima: params.aggregation, params.auth, params.nonce, params.region, params.since
Com um token bearer
Envie o token bearer no cabeçalho Authorization. Você pode omitir params.auth e o campo signature separado. Os demais parâmetros obrigatórios continuam se aplicando. As definições de campos abaixo usam caminhos dentro de params.
Esquema JSON completo
params: Somente os campos listados para este objeto são aceitos.
Usa as definições de campo acima: params.aggregation, params.nonce, params.region, params.since
| Campo | Tipo e descrição |
|---|---|
params. | Contém a chave de API da Transloadit e os metadados de autenticação por assinatura para uma requisição de vagas prioritárias de Job.
|
params. | stringTimestamp de expiração no formato ISO 8601 situado no futuro. Obrigatório quando uma requisição é assinada ou exige autenticação por assinatura; requisições autenticadas por bearer podem omiti-lo. |
params. | stringChave de API da Transloadit usada para autenticar as requisições |
params. | string | integerValor único e aleatório incluído nos parâmetros da requisição assinada para tornar cada assinatura única e evitar a reutilização acidental de assinaturas. |
Resposta
Veja um exemplo de corpo de resposta:
{
"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
}
]
}sucesso 2xx
Corpo da resposta JSON. application/json text/plain; charset=utf-8
Esquema do corpo da resposta
Esquema JSON completo
A resposta contém apenas os campos listados para este objeto.
| Campo | Tipo e descrição | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
aggregationobrigatório | "avg" | "max" | ||||||||||
avgSlotCountobrigatório | number (mínimo: 0) | ||||||||||
granularityobrigatório | integer (mínimo exclusivo: 0)Duração de cada bucket de estatísticas em segundos. | ||||||||||
maxSlotCountobrigatório | integer (mínimo: 0) | ||||||||||
okobrigatório | string (sempre: "PRIORITY_JOB_SLOT_STATS_FOUND") | ||||||||||
statsobrigatório | Array<object>Esquema do item do array
|
HTTP 400
Corpo da resposta JSON. application/json text/plain; charset=utf-8
Esquema do corpo da resposta
Esquema JSON completo
Erros nomeados e o formato geral de erro
error: "PRIORITY_JOB_SLOT_STATS_INVALID_AGGREGATION"
aggregation deve ser "avg" ou "max".
A resposta pode conter campos adicionais.
error: "PRIORITY_JOB_SLOT_STATS_INVALID_TIME"
O horário since está ausente ou incorreto.
A resposta pode conter campos adicionais.
error: "PRIORITY_JOB_SLOT_STATS_MISSING_REGION"
É necessário informar uma region específica ou "all".
A resposta pode conter campos adicionais.
Formato geral de erro
HTTP 500
Corpo da resposta JSON. application/json text/plain; charset=utf-8
Esquema do corpo da resposta
Esquema JSON completo
Erros nomeados e o formato geral de erro
error: "PRIORITY_JOB_SLOT_STATS_ERROR"
Não foi possível carregar as estatísticas de vagas prioritárias de Job.
A resposta pode conter campos adicionais.
Formato geral de erro
Resposta de erro
Corpo da resposta JSON. application/json text/plain; charset=utf-8
Esquema do corpo da resposta
Esquema JSON completo
A resposta pode conter campos adicionais.
| Campo | Tipo e descrição |
|---|---|
assembly_id | string |
error | string (comprimento mínimo: 1) |
http_code | number | string
|
message | stringExplicação do erro legível por humanos. A redação pode variar; use o código |
reason | null | string | number | boolean | Array<qualquer valor> | objectQualquer um dos esquemas a seguir pode ser aplicado: nullnullstringstringnumbernumberbooleanbooleanArray<qualquer valor>Array<qualquer valor>Esquema do item do arrayqualquer valorobjectobjectEsquema de propriedade adicionalqualquer valor |