Criar um token bearer
Troca as credenciais da Auth Key por um bearer token com escopo definido.
https://api2.transloadit.com/ tokenEste endpoint troca sua Auth Key e
seu Auth Secret por um token Bearer de curta duração. Ele espelha
o fluxo client_credentials do OAuth 2.0, mas é tratado diretamente pela API da
Transloadit.
Os tokens são emitidos no lado do servidor por meio deste endpoint, usando sua Auth Key/Secret. Se você
expuser a criação de tokens por uma interface, chame /token a partir do seu backend (nunca diretamente do navegador).
Workspaces cancelados não podem criar novos tokens bearer. Para endpoints cuja documentação permite explicitamente leituras após o cancelamento, use a receita de leitura assinada com uma Auth Key ativa já existente. O faturamento tem sua própria receita de faturamento assinada.
As requisições devem usar application/x-www-form-urlencoded e HTTP Basic Auth:
Em um shell confiável no lado do 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 essa configuração em código de navegador.
Este exemplo solicita acesso de leitura/escrita a Assemblies e salva o access_token retornado como TRANSLOADIT_TOKEN para as requisições seguintes no mesmo shell. Para outro endpoint, use os escopos listados nele; a Auth Key já precisa concedê-los. Endpoints autenticados por uma Auth Key ou por um token bearer incluem a configuração de token apropriada em seus exemplos de requisição.
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=assemblies:read assemblies:write')"; 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
Autenticação
Este endpoint usa autenticação HTTP Basic com sua Auth Key e seu segredo.
Campos do formulário
Tipo de conteúdo: application/x-www-form-urlencoded
Os seguintes campos podem ser enviados no máximo uma vez: aud, grant_type, scope.
Esquema JSON completo
Formulário de requisição de token de credenciais de cliente do OAuth 2.0.
Campos além dos listados para este objeto são aceitos.
| Campo | Tipo e descrição |
|---|---|
aud | stringValor de audience opcional. Se omitido, o padrão configurado da implantação é usado ( |
grant_typeobrigatório | string (sempre: "client_credentials")Solicita um token usando as credenciais fornecidas por meio da autenticação HTTP Basic. |
scope | stringOpcional, lista de escopos separados por espaço ou vírgula. Se for omitido, o token herda todos os escopos concedidos à sua Auth Key. |
Usando o token
Envie o token como Authorization: Bearer <access_token> nas requisições à API. Quando uma requisição é autenticada com um Bearer token válido, a API2 considera a Signature Authentication como satisfeita e pula a validação da assinatura. A Signature Authentication só é exigida em requisições com chave/segredo.
As verificações de escopo continuam valendo. A audiência padrão api2 é aceita pelos endpoints comuns da API2 e é válida por 21.600 segundos por padrão. A audiência mcp é aceita pelo servidor MCP, rejeitada pelos endpoints comuns da API2 e válida por 604.800 segundos por padrão. Trate o valor expires_in da resposta como a fonte autoritativa.
Resposta
Veja um exemplo de corpo de resposta:
{
"access_token": "opaque-token",
"expires_in": 21600,
"scope": "assemblies:read assemblies:write",
"token_type": "Bearer"
}sucesso 2xx
Corpo da resposta JSON. application/json
Esquema do corpo da resposta
Esquema JSON completo
A resposta contém apenas os campos listados para este objeto.
| Campo | Tipo e descrição |
|---|---|
access_tokenobrigatório | string (comprimento mínimo: 1)O token a ser enviado no cabeçalho Authorization das requisições de API subsequentes. Mantenha-o em segredo. |
expires_inobrigatório | integer (mínimo exclusivo: 0)Tempo de vida do token em segundos a partir da emissão. Solicite um novo token depois que ele expirar. |
scopeobrigatório | string (comprimento mínimo: 1, comprimento máximo: 512)Escopos separados por espaço concedidos a este token. Padrão de validação (expressão regular)^(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)(?: (?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write))*$ |
token_typeobrigatório | string (sempre: "Bearer") |
HTTP 400
Corpo da resposta JSON. application/json
Esquema do corpo da resposta
Esquema JSON completo
Qualquer um dos esquemas a seguir pode ser aplicado:
error: "GET_ACCOUNT_UNKNOWN_AUTH_KEY"
Não foi possível obter o Workspace, esta é uma Auth Key desconhecida.
A resposta pode conter campos adicionais.
error: "TOKEN_INVALID_GRANT_TYPE"
Tipo de concessão inválido.
A resposta pode conter campos adicionais.
error: "TOKEN_INVALID_REQUEST"
Requisição de token inválida.
A resposta pode conter campos adicionais.
HTTP 401
Corpo da resposta JSON. application/json
Esquema do corpo da resposta
Esquema JSON completo
Qualquer um dos esquemas a seguir pode ser aplicado:
error: "SERVER_401"
Autorização necessária.
A resposta pode conter campos adicionais.
error: "TOKEN_INVALID_CREDENTIALS"
Credenciais de cliente inválidas.
A resposta pode conter campos adicionais.
HTTP 403
Corpo da resposta JSON. application/json
Esquema do corpo da resposta
Esquema JSON completo
Qualquer um dos esquemas a seguir pode ser aplicado:
error: "TOKEN_INVALID_AUDIENCE"
Audiência inválida.
A resposta pode conter campos adicionais.
error: "TOKEN_INVALID_SCOPE"
Escopo inválido ou não autorizado.
A resposta pode conter campos adicionais.
HTTP 429
Corpo da resposta JSON. application/json
Esquema do corpo da resposta
Esquema JSON completo
Limite de requisições atingido.
A resposta pode conter campos adicionais.
HTTP 500
Corpo da resposta JSON. application/json
Esquema do corpo da resposta
Esquema JSON completo
Erro inesperado.
A resposta pode conter campos adicionais.