Autenticação
Para fazer requisições, toda chamada à API deve incluir um token de acesso no cabeçalho Authorization como Bearer <seu token>. O token é emitido pelo nosso Identity Service usando o fluxo OAuth 2.0 Implicit, por meio do endpoint /connect/authorize.
O host do Identity Service depende do ambiente. Para Desenvolvimento:
https://login-dev.accuscheduler.com(Desenvolvimento)
Para os ambientes de Teste e Produção, use o host do Identity Service correspondente fornecido pela Delage. O fluxo e os parâmetros são os mesmos — muda apenas o host.
Montando a requisição de autorização
Redirecione o navegador do usuário para o endpoint /connect/authorize com os seguintes parâmetros de query:
| Parâmetro | Descrição | Obrigatório |
|---|---|---|
| response_type | Deve ser token (fluxo OAuth 2.0 Implicit). | Sim |
| client_id | O seu identificador de cliente, fornecido pela Delage. | Sim |
| redirect_uri | Uma URL de callback previamente cadastrada para o seu client_id. O token é retornado nesta URL. | Sim |
| scope | Escopo solicitado. Use wms (acesso total à API). | Sim |
| state | Um valor aleatório opaco que você gera; é retornado sem alteração para validar a resposta e prevenir CSRF. | Recomendado |
A URL resultante fica assim (quebrada para leitura — envie como uma única URL):
https://login-dev.accuscheduler.com/connect/authorize
?response_type=token
&client_id=SEU_CLIENT_ID
&redirect_uri=https://seu-app.example.com/callback
&scope=wms
&state=STATE_ALEATORIO
Recebendo o token
Após o usuário se autenticar e autorizar, o Identity Service redireciona de volta para a sua redirect_uri com o token de acesso no fragmento da URL (#):
https://seu-app.example.com/callback#access_token=eyJhbGciOiJSUzI1NiIsImtpZCI6IkYxMDMyQzc1ND...&token_type=Bearer&expires_in=3600&scope=wms&state=STATE_ALEATORIO
Leia o access_token do fragmento e envie-o em toda requisição à API:
curl -X GET "https://<api-host>/api/Product/Product?relationalOperationalId=171" \
-H "Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkYxMDMyQzc1ND..."
O token expira após o número de segundos retornado emexpires_in. Solicite um novo token pelo mesmo fluxo quando ele expirar.
Updated 5 days ago
What’s Next
Did this page help you?