Skip to main content

Autenticação

Para utilizar qualquer endpoint das APIs PBM, é obrigatório gerar um token JWT e enviá-lo em todas as requisições subsequentes.
Este token garante a segurança, integridade e identificação do cliente integrador.


Criando um token

Para gerar um token, utilize a mutation createToken, informando as credenciais fornecidas pela Funcional.

Dica

O mesmo token pode ser utilizado em várias requisições até sua expiração.
Reutilizar o token melhora significativamente a performance e reduz chamadas desnecessárias ao servidor.

🔒 O token gerado tem validade aproximada de 1 hora.

Parâmetros

ParâmetroTipoObrigatórioDescrição
loginStringSimLogin do usuário
passwordStringSimSenha do usuário

Exemplo de requisição

mutation {
createToken(
login: "usuario_exemplo"
password: "senha_exemplo"
) {
token
}
}

Exemplo de resposta

{
"data": {
"createToken": {
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3NjM2NDA2MDUsImV4cCI6MTc2MzY0NDIwNSwianRpIjoid3NVOUpGYXpCRHNwajVuNSIsImlzcyI6IlNTTyIsInN1YiI6IjI3M2Y5OTQ1LWJkZDgtNGEyNC04OWRiLTQ5ZTNlM2E3ZWEyOSIsInByb2ZpbGVzIjp7Im1hc3RlciI6W10sInBvaW50X29mX3NhbGVzX2J1eWVyIjpbIjAwMDI1NTI4MDAwMTE1Il19LCJuYW1lIjoiRmVybmFuZG8gVGVvZG9ybyBTYWx6YW5vIiwiaWRlbnRpdHkiOiIwNDAyMDQyODE2NiIsInV1aWQiOiIyNzNmOTk0NS1iZGQ4LTRhMjQtODlkYi00OWUzZTNhN2VhMjkiLCJlbWFpbCI6ImZlcm5hbmRvLnNhbHphbm9AZnVuY2lvbmFsY29ycC5jb20uYnIiLCJtb2JpbGVfbnVtYmVyIjoiNDM5OTEyODcxNDciLCJhdXRob3JpemVkX2FwcCI6dHJ1ZX0.shcz-8Q56d1j0ulCRZ0F6mQ7TmavFLTFUUTXlPMGIXgW8OmKqye4rhMQevjghl1iWeJ3YrKrvpV0PnuiilAOX0PyjBIRrzaQqZiF6hSFkVtqjXnKIFF0iok0FccTS_i_PDwJ6YEZ2do7-lwiYE0LdE7PafrT7iyQkMFjIcHujecHxpgjZvoQ_abinmq2F5QiI5JfkVSay7HqHUJyjjiKj9LQ6h1EijyeoYAd8w7_thYQc7AuWo_LtTRdC7fKyc7UPpS_hz_xIsjpm6DsIFDHz5ZAoopXpvdjR7iIqOWhFY_0_NegBezCpD0a2ntBScvC_ljO410L0pC92fJKf8JCODlvb7upMjuEBGVECzKT2YQHOI_T2XJagmKYRIwa78THYevq-WwG2eXV35tj4oucAZj_FQyAKCLlToRjb9zJJzYQtBCh8t39DOvfoS6AdTmnhZB66pbjc0aW-9DvjU00wDlvY06MnBcA5-iMIod_qIClaju88tOvRFBGzVVMTYeAbA370jK2jY8kvl7NsQMPv7o_Ib2jlXqtrcMuqalaseeJx65YA8bIl0qWI0qbTTR67SBV36oTGNBz4Uze3fAasOqjcqDsGVgECdpPZ6HjNwIJJVNyBvplj2ZcXlhF0TSWXpFNXbApJ8_CeynCrhTBgzk1c2cbgFor-AF9xTZL0_c"
}
}
}

Utilizando o token

Após gerar o token, ele deve ser enviado no header Authorization em todas as requisições GraphQL.

Exemplo:

POST /graphql
Content-Type: application/json
Authorization: Bearer {token_aqui}

🧩 Headers obrigatórios

Todos os métodos desta API utilizam obrigatoriamente os headers abaixo:

HeaderExemploObrigatórioDescrição
AuthorizationBearer eyJhbGciOi...SimToken JWT gerado no createToken
Content-Typeapplication/jsonSimFormato padrão para requisições GraphQL

⏱ Expiração do token

O token possui validade aproximada de 1 hora.

Caso o token expire, a API retornará erro de autenticação.

Para continuar utilizando os serviços, basta gerar um novo token via createToken.

⏱ Erro ao utilizar um token expirado

{
"errors": [
{
"message": "Unauthorized",
"path": [
"WsAcesso_insertOptinExternal"
],
"extensions": {
"code": "UNAUTHENTICATED",
"originalError": {
"message": "Unauthorized",
"statusCode": 401
}
}
}
],
"data": null
}

🔄 Fluxo resumido de autenticação

  1. Chame createToken, enviando login e password
  2. Receba o token JWT
  3. Envie o token no header Authorization em todas as requisições
  4. Quando o token expirar (~1 hora), gere um novo token
  5. Repita o processo conforme necessário