Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

A documentação funcional pode ser encontrada em ...Plataforma de Coleta de Métricas

Procedimento de integração

...

Os endereços base em cada ambiente, bem como suas respectivas datas de validade são os abaixo:

Autenticação

O procedimento segue o fluxo de client_credentials da especificação oauth2, sendo que o acesso ao endpoint precisa ser feito usando uma conexão mTLS. As credenciais, bem como os certificados aceitos em cada um dos ambientes estão descritos abaixo:

Ambiente

Credenciais

Certificados

Sandbox/Piloto

client_id do Software Statement do diretório de sandbox

Certificado emitido pelo diretório central de sandbox

Produção

client_id do Software Statement do diretório de produção

Certificado emitido por autoridade certificadora aceita pelo ecossistema [1]

O endpoint de recuperação de token é: 

...

Para recuperar um token é necessário fazer uma chamada POST usando um payload com os seguintes campos:

client_id 

client_id do software statement ligado ao certificado usado no acesso

grant_type 

Fixo: client_credentials

Não há a necessidade do envio do client_secret, uma vez que a camada de transporte via certificado cliente já assegura a autenticidade do chamador. 

Os campos relevantes devolvidos por esse endpoint são: 

access_token 

Token no padrão jwt para acesso às APIs 

expires_in 

Número de segundos em que o token é válido 

token_type 

O tipo do token fornecido (nesse caso, Bearer) 

Exemplo

Envio de um request para o endereço de autenticação em sandbox: 

...

Bloco de código
POST https://api.pcm.sandbox.openfinancebrasil.org.br/report-api/v1/private/report 
Content-Type: application/json 
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IkFiT 

[
  {
  "timestamp": "2022-08-31T17:43:13.622Z",  
  "fapiInteractionId": "e67824fa-6b4d-448c-8101-304407259552",  
  "endpoint": "/open-banking/customers/v2/personal/financial-relations",  
  "statusCode": 200,  
  "httpMethod": "GET",  
  "processTimespan": 120,  
  "clientOrgId": "c160a6f5-e5df-5067-9e97-ec6fba62fd87",  
  "serverOrgId": "2a01e202-e8f0-5f5a-9651-ebc257371e6e",  
  }
]

Resposta

Bloco de código
200 Ok
Content-Type: application/json 

{ 
  "reportId": "9737cc7f-9854-4f57-aec6-7f1778c642d4", 
  "status": "ACCEPTED"
}

...

Bloco de código
{ 
  “role”: “CLIENT”,
  "timestamp": "2022-08-31T17:43:13.622Z", 
  "fapiInteractionId": "cd9a2e6b-0c33-403b-a8dd-544e95c63cd8", 
  "endpoint": "/invalid_endpoint", 
  “additionalInfo”: {
    “consentId”: “uri:banrisul:6096c7f6-53a0-4c53-bc95-9c8d48b9a6cf“,
    “personType”: “PF“
  }
  "statusCode": 200, 
  "httpMethod": "GET", 
  "processTimespan": 120, 
  "clientSSId": "clientSSId", 
  "endpointUriPrefix": "https://openbanking.instituicao.com.br/namespace" 
}

...

[1] Padrão de certificação do Open Finance Brasil v1v2.01