Autenticação
O sistema oferece duas APIs distintas para atender diferentes necessidades de integração:
API Gateway
Esta API é utilizada para operações do gateway de pagamento:
- Produção: https://api.sopague.com.br/gateway
- Homologação: https://api-hmg.sopague.com.br/gateway
- Arquitetura: Representational State Transfer (REST)
Outras APIs
Estas APIs são utilizadas para funcionalidades adicionais:
- Produção: https://integration.sopague.com.br/sopague
- Homologação: https://api-hmg.sopague.com.br/integration
- Arquitetura: Representational State Transfer (REST)
Este método é utilizado para obter um token de autenticação, necessário para executar outros métodos da API.
Pré-requisitos
Para acessar a API e consumir suas funcionalidades, siga os passos indicados abaixo:
-
Forneça os dados necessários para nossa equipe:
- CNPJ da empresa que realizará as transações;
- Razão Social da empresa;
- Dados de contato da equipe técnica responsável pela integração;
- IP do servidor de produção que realizará as solicitações.
-
Obtenha o userName e password após o envio das informações solicitadas.
-
Realize o login utilizando os endpoints de autenticação com o userName e password fornecidos.
-
Receba o token de autenticação no campo
accessToken
como resposta à solicitação. -
Inclua o token no header Authorization para acessar outros endpoints da API.
-
Renove o token antes de sua expiração para garantir a continuidade das operações.
Endpoints de Autenticação
De acordo com a API utilizada, os endpoints de autenticação são diferentes. A seguir, são apresentados os detalhes de cada um deles.
Endpoint da API De Gateway
POST
/api/auth/token
Requisição
Exemplo de requisição via REST com o corpo no formato JSON:
{
"userName": "string",
"password": "string"
}
Parâmetros da Requisição
HEADER | DESCRIÇÃO | TIPO | TAMANHO | OBSERVAÇÃO |
---|---|---|---|---|
UserName | Nome de usuário de acesso à API | String | 30 | Credenciais fornecidas pela |
Password | Senha do usuário de acesso à API | String | 256 | Credenciais fornecidas pela |
Resposta de Sucesso
- 🟢 200
{
"authenticated": true,
"created": "2023-01-01T14:25:28.913Z",
"expiration": "2023-01-01T14:25:28.913Z",
"accessToken": "string",
"message": "string"
}
Endpoint de Outras APIs
POST
/api/authentication/login
Requisição
Exemplo de requisição via REST com o corpo no formato JSON:
{
"userName": "string",
"password": "string"
}
Parâmetros da Requisição
HEADER | DESCRIÇÃO | TIPO | TAMANHO | OBSERVAÇÃO |
---|---|---|---|---|
UserName | Nome de usuário de acesso à API | String | 30 | Credenciais fornecidas pela |
Password | Senha do usuário de acesso à API | String | 256 | Credenciais fornecidas pela |
Resposta de Sucesso
- 🟢 200
{
"authenticated": true,
"created": "2023-01-01T14:25:28.913Z",
"expiration": "2023-01-01T14:25:28.913Z",
"accessToken": "string",
"message": "string"
}
Header de Autenticação
Em todas as chamadas à API (exceto para obtenção do token), é necessário incluir o seguinte header:
Key | Value |
---|---|
Authorization | Bearer eyJhbGciOiJSUzIlxdWVtZS[...]mj2m65fJfvmjdVXp6dQ |
Detalhes
- O tipo de autenticação
Bearer
nunca muda. - O valor do token (exemplo:
eyJhbGciOiJSUzIlxdWVtZS[...]mj2m65fJfvmjdVXp6dQ
) é obtido pelos métodos de autenticação.
Observações Importantes
- Tokens têm prazo de validade. É responsabilidade do sistema integrador renovar o token antes de sua expiração para continuar realizando chamadas.