Autenticação em detalhe

A API usa OAuth2 no fluxo password, com tokens no padrão JWT. O formato de entrada é x-www-form-urlencoded e a saída é JSON (UTF-8).

Parâmetros de entrada

ParâmetroOndeObrigatórioDescrição
x-api-keyheaderSimIdentifica a aplicação (Portal do Desenvolvedor)
contextheaderSimFixo: COBRANCA
Content-TypeheaderSimFixo: application/x-www-form-urlencoded
grant_typebodySimpassword (login) ou refresh_token (renovação)
usernamebodyPara passwordCódigo do Beneficiário (5) + Código da Cooperativa (4)
passwordbodyPara passwordCódigo de acesso gerado no Internet Banking
refresh_tokenbodyPara refresh_tokenRefresh token obtido na autenticação anterior
scopebodyPara passwordFixo: cobranca

Resposta

CampoDescrição
access_tokenToken JWT para autorizar as chamadas
token_typeBearer
refresh_tokenUsado para renovar sem reenviar username/password
expires_inExpiração do access_token, em segundos (exemplo do manual: 300)
refresh_expires_inExpiração do refresh_token, em segundos (exemplo do manual: 1800)
scopeEscopos do usuário (ex.: cobranca profile email)

Ciclo de vida do token, a regra que evita a maioria dos 401.

  1. Primeira autenticação: grant_type=password, com username e password.
  2. Reutilize o mesmo access_token em todas as chamadas até ele expirar. Não autentique a cada requisição.
  3. Renovação: quando o access_token expirar, chame com grant_type=refresh_token e o refresh_token, sem enviar username/password.
  4. Reautenticação: quando o refresh_token também expirar, volte ao passo 1.

Renovar o access_token com o refresh_token:

curl --location 'https://api-parceiro.sicredi.com.br/sb/auth/openapi/token' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --header 'x-api-key: SEU_X_API_KEY' \
  --header 'context: COBRANCA' \
  --data-urlencode 'grant_type=refresh_token' \
  --data-urlencode 'refresh_token=SEU_REFRESH_TOKEN'

⚠️

Os tempos de expiração podem variar entre Sandbox e Produção. Sempre leia expires_in e refresh_expires_in da resposta em vez de fixar 300/1800 no código.

Falhas comuns da autenticação

StatusSituação típica
400grant_type ausente ou inválido
401username/password inválidos, ou x-api-key ausente/inválido
404URL de autenticação incorreta
504Gateway Timeout — serviço não respondeu a tempo

(Sugestão de DX: incluir aqui um GIF curto mostrando a geração do código de acesso no Internet Banking e a obtenção do x-api-key no Portal, os dois pontos que mais geram dúvida.)



Did this page help you?