Pular para o conteúdo principal

Como Autenticar na Admin API

info

Caso não esteja familiarizado com nosso processo de autenticação, recomendamos a leitura da sessão Fluxo de Autenticação.

Para obter o access_token da Admin API, você irá precisar das seguintes informações:

  • CLIENT_ID e CLIENT_SECRET.
  • X-DeliveryDireto-ID da loja com a qual se quer integrar.
  • username e password gerados através do gerenciador de acessos API.

Tendo essas informações em mãos, você poderá fazer uma chamada POST para https://deliverydireto.com.br/admin-api/token informando os seguintes parâmetros no header:

  • X-DeliveryDireto-ID deve ser preenchido com o identificador da loja.
  • X-DeliveryDireto-Client-Id deve ser preenchido com o CLIENT_ID recebido através do nosso formulário de cadastro de desenvolvedor parceiro.
  • Content-Type com o valor application/json.

No corpo da requisição (body) deve conter um JSON no seguinte formato:

info

Para gerar o token de acesso da Admin API deve-se usar o grant_type com o valor password

JSON da requisição para gerar o token de accesso
{
"grant_type": "password",
"client_id": "<CLIENT_ID>",
"client_secret": "<CLIENT_SECRECT>",
"username": "<email gerado através do gerenciador de acessos API>",
"password": "<senha gerado através do gerenciador de acessos API>"
}

Exemplo de chamada para gerar o token de acesso utilizando cURL:

Exemplo chamada cURL para gerar o access_token
curl --location --request POST 'https://deliverydireto.com.br/admin-api/token' \
--header 'X-DeliveryDireto-ID: <X-DeliveryDireto-ID da loja>' \
--header 'X-DeliveryDireto-Client-Id: <CLIENT_ID>' \
--header 'Content-Type: application/json' \
--data-raw '{
"grant_type": "password",
"client_id": "<CLIENT_ID>",
"client_secret": "<CLIENT_SECRECT>",
"username": "<email gerado através do gerenciador de acessos API>",
"password": "<senha gerado através do gerenciador de acessos API>"
}'

Após a chamada ter sido executada, uma resposta será retornada com o access_token e o refresh_token.

No corpo da requisição (body) deve conter um JSON no seguinte formato:

Exemplo do retorno
{
"token_type": "Bearer",
"expires_in": 21600,
"access_token": "eyJ0eX...",
"refresh_token": "def5..."
}
info

O access_token deve estar presente no header de todas as demais chamadas dos endpoints da Admin API.

Exemplo de uso do access_token nos demais Endpoints da Admin API
curl --location --request GET 'https://deliverydireto.com.br/admin-api/v1/orders' \
--header 'X-DeliveryDireto-ID: <X-DeliveryDireto-ID da loja>' \
--header 'X-DeliveryDireto-Client-Id: <CLIENT_ID>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <access_token>'