Autenticação Simplificada
Last updated
Last updated
A presente página apresenta uma versão simplificada do processo de autenticação. Caso este não seja suficiente para a sua aplicação, ou encontre algum erro, ou dificuldade, consulte: Autenticação Detalhada
Neste passo, deverão ser obtidos os seguintes dados, necessários para que possam aceder à nossa API comercial:
Identificador (a que chamamos "
OAUTH_CLIENT_ID
", ou simplesmente "client_id
", nos exemplos posteriores)Segredo (a que chamamos "
OAUTH_CLIENT_SECRET
", ou simplesmente "secret
", nos exemplos posteriores)Endereço de autenticação por OAuth (a que chamamos "
OAUTH_URL
" nos exemplos posteriores)Endereço de acesso à API (a que chamamos "
API_URL
" nos exemplos posteriores)
Os quatro dados de acesso acima indicados são todos obtidos directamente da empresa à qual se pretende aceder via API. Para os obter, deverá fazer o seguinte:
Entrar na empresa com uma conta de Empresário
Aceder através do menu à opção Empresa > Configurações > Dados API
Introduzir os dados do integrador, que irá receber os dados de acesso à API através de um link temporário, de 72h.
Abrir o link de acesso enviado no email
Neste passo, deverá ser feito um pedido GET ao endereço OAUTH_URL/auth com:
Na query do Url, os parâmetros:
client_id=OAUTH_CLIENT_ID
redirect_uri=OAUTH_REDIRECT_URL
response_type=code
scope=commercial
Nos headers, o seguinte:
Content-Type: application/json
O exemplo seguinte ilustra o pedido feito no terminal, usando o curl:
A resposta esperada é como a seguinte:
Utilizando o authorization_code recebido na resposta, deverá seguir o próximo passo
Neste passo, deverá ser feito um pedido POST ao endereço OAUTH_URL/token com:
No body do pedido, os parâmetros:
grant_type=authorization_code
code= o "authorization_code" obtido do passo anterior.
scope=commercial
Nos headers, os seguinte:
Content-Type: application/x-www-form-urlencoded
Accept: application/json
Authorization: o texto "Basic", seguido dum espaço, seguido dum texto formado pela concatenação do "client_id", seguido de ':', seguido do "secret", tudo codificado em base 64. Por exemplo, se o "client_id" fosse "test" e o "secret" fosse "abcdef", o valor deste header seria "Basic dGVzdDphYmNkZWY=", sendo "dGVzdDphYmNkZWY=" o texto "test:abcdef" em base 64.
O exemplo seguinte ilustra o pedido feito no terminal, usando o curl:
A resposta esperada é como a seguinte:
Daqui, tem então o access_token necessário para a utilização da API, referenciado nas restantes páginas de pedidos de exemplo