Skip to content

Commit

Permalink
1.0.1
Browse files Browse the repository at this point in the history
  • Loading branch information
luizlaydner committed Oct 20, 2020
1 parent a5cce64 commit 4b8969b
Show file tree
Hide file tree
Showing 25 changed files with 238 additions and 18 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,14 @@

Mudanças relevantes na API do DICT serão documentadas aqui.

## [1.0.1] - 2020-10-20
### Adicionado
- campos CorrelationId e ResponseTime em todos Responses

### Alterado
- Regex para nomes de pessoas físicas passou a permitir apóstrofo (U+0027)
- Definição de SyncVerifierStart, para refletir como está implementado

## [1.0.0] - 2020-09-16
### Adicionado
- Seção com recomendações de desempenho
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/claims/AcknowledgeClaimResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<AcknowledgeClaimResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Claim>
<Type>OWNERSHIP</Type>
<Key>+5561988887777</Key>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/claims/CancelClaimResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CancelClaimResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Claim>
<Type>OWNERSHIP</Type>
<Key>+5561988887777</Key>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/claims/CompleteClaimResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CompleteClaimResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Claim>
<Type>OWNERSHIP</Type>
<Key>+5561988887777</Key>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/claims/ConfirmClaimResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ConfirmClaimResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Claim>
<Type>OWNERSHIP</Type>
<Key>+5561988887777</Key>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/claims/CreateClaimResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CreateClaimResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Claim>
<Type>OWNERSHIP</Type>
<Key>+5561988887777</Key>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/claims/GetClaimResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<GetClaimResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Claim>
<Type>OWNERSHIP</Type>
<Key>+5561988887777</Key>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/claims/ListClaimsResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ListClaimsResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<HasMoreElements>true</HasMoreElements>
<Claims>
<Claim>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/entries/CreateEntryResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CreateEntryResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Entry>
<Key>11122233300</Key>
<KeyType>CPF</KeyType>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/entries/DeleteEntryResponse.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<DeleteEntryResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Key>+5561988887777</Key>
</DeleteEntryResponse>
2 changes: 2 additions & 0 deletions openapi/examples/entries/GetEntryResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<GetEntryResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Entry>
<Key>11122233300</Key>
<KeyType>CPF</KeyType>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/entries/UpdateEntryResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<UpdateEntryResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Entry>
<Key>11122233300</Key>
<KeyType>CPF</KeyType>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<AcknowledgeInfractionReportResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<InfractionReport>
<TransactionId>E9999901012341234123412345678900</TransactionId>
<InfractionType>FRAUD</InfractionType>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CancelInfractionReportResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<InfractionReport>
<TransactionId>E9999901012341234123412345678900</TransactionId>
<InfractionType>FRAUD</InfractionType>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CloseInfractionReportResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<InfractionReport>
<TransactionId>E9999901012341234123412345678900</TransactionId>
<InfractionType>FRAUD</InfractionType>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CreateInfractionReportResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<InfractionReport>
<TransactionId>E9999901012341234123412345678900</TransactionId>
<InfractionType>FRAUD</InfractionType>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/infractions/GetInfractionReportResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<GetInfractionReportResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<InfractionReport>
<TransactionId>E9999901012341234123412345678900</TransactionId>
<InfractionType>FRAUD</InfractionType>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ListInfractionReportsResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<HasMoreElements>true</HasMoreElements>
<InfractionReports>
<InfractionReport>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/reconciliation/CreateCidSetFileResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CreateCidSetFileResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<CidSetFile>
<Id>1234</Id>
<Status>REQUESTED</Status>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<CreateSyncVerificationResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<SyncVerification>
<Participant>12345678</Participant>
<KeyType>CPF</KeyType>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/reconciliation/GetCidSetFileResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<GetCidSetFileResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<CidSetFile>
<Id>1234</Id>
<Status>AVAILABLE</Status>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/reconciliation/GetEntryByCidResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<GetEntryByCidResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<Cid>ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb</Cid>
<Entry>
<Key>11122233300</Key>
Expand Down
2 changes: 2 additions & 0 deletions openapi/examples/reconciliation/ListCidSetEventsResponse.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<ListCidSetEventsResponse>
<Signature></Signature>
<ResponseTime>2020-01-10T10:00:00Z</ResponseTime>
<CorrelationId>a9f13566e19f5ca51329479a5bae60c5</CorrelationId>
<HasMoreElements>true</HasMoreElements>
<Participant>12345678</Participant>
<KeyType>CPF</KeyType>
Expand Down
33 changes: 18 additions & 15 deletions openapi/openapi.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
openapi: 3.0.0
info:
title: DICT API
version: '1.0.0'
version: '1.0.1'
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0
Expand All @@ -10,21 +10,21 @@ info:
email: [email protected]
url: https://www.bcb.gov.br/estabilidadefinanceira/pagamentosinstantaneos
description: |-
O Diretório de Identificadores de Contas Transacionais - DICT - é o serviço do arranjo Pix que permite
buscar detalhes de contas transacionais com chaves de endereçamento mais convenientes para quem faz
O Diretório de Identificadores de Contas Transacionais - DICT - é o serviço do arranjo Pix que permite
buscar detalhes de contas transacionais com chaves de endereçamento mais convenientes para quem faz
um pagamento. Entre os tipos de chave atualmente disponíveis estão CPF, CNPJ, telefone, e-mail e EVP.
As informações retornadas pelo DICT permitem ao pagador confirmar a identidade do recebedor, proporcionando
uma experiência mais fácil e segura. Permitem também ao PSP do pagador criar a mensagem de instrução de
pagamento a ser enviada para o sistema de liquidação com os detalhes de conta do recebedor.
Para informações adicionais, consulte a [página do Pix](https://www.bcb.gov.br/estabilidadefinanceira/pagamentosinstantaneos).
# Segurança
## Autenticação
O DICT utiliza autenticação mútua TLS.
As definições de autenticação para essa API estão especificadas no
[manual de segurança do Pix](https://www.bcb.gov.br/content/estabilidadefinanceira/cedsfn/Manual%20de%20Seguranca%20do%20PIX%20v3.0.pdf).
As definições de autenticação para essa API estão especificadas no
[manual de segurança do Pix](https://www.bcb.gov.br/content/estabilidadefinanceira/cedsfn/Manual%20de%20Seguranca%20do%20PIX%20v3.1.pdf).
## Assinatura digital
Requisições que incluam ou alterem informações no DICT devem ser assinadas com
Expand All @@ -37,7 +37,7 @@ info:
sendo assinado (assinatura é um elemento filho).
Para mais detalhes sobre a forma de construir a assinatura, consulte o
[manual de segurança do Pix](https://www.bcb.gov.br/content/estabilidadefinanceira/cedsfn/Manual%20de%20Seguranca%20do%20PIX%20v3.0.pdf).
[manual de segurança do Pix](https://www.bcb.gov.br/content/estabilidadefinanceira/cedsfn/Manual%20de%20Seguranca%20do%20PIX%20v3.1.pdf).
## Limitação de requisições
Expand All @@ -53,15 +53,15 @@ info:
# Recomendações de desempenho
É altamente recomendável que as conexões HTTP para a comunicação com a API sejam reutilizadas, pois o custo de
É altamente recomendável que as conexões HTTP para a comunicação com a API sejam reutilizadas, pois o custo de
estabelecimento de uma conexão mTLS é muito alto em termos de latência. O uso de um _pool_ de conexões HTTP
é uma alternativa efetiva para reutilização de conexões. A API retorna o header [`Keep-Alive`](https://tools.ietf.org/html/rfc2068#section-19.7.1.1)
com o parâmetro `timeout`. Nele é informado o tempo em segundos que o servidor esperará antes de fechar a conexão caso não ocorram
requisições adicionais.
É recomendável também que se utilize compressão. Para que as respostas da API utilizem compressão, adicione nas
É recomendável também que se utilize compressão. Para que as respostas da API utilizem compressão, adicione nas
requisições o header `Accept-Encoding: gzip`. O envio de requisições com compressão não é suportado.
# Evolução da API
As seguintes mudanças são esperadas e consideradas retro-compatíveis (_backwards-compatibility_):
Expand Down Expand Up @@ -379,7 +379,7 @@ tags:
Cada participante deve realizar _polling_ periódico na lista de relatos para verificar se
existem novos relatos em que é parte. O recebimento do relato não implica em concordância.
Os níveis de serviço exigidos para as operações com relatos de infração estão definidos no
[Manual de Tempos do Pix](https://www.bcb.gov.br/content/estabilidadefinanceira/pix/Regulamento_Pix/IX.ManualdeTemposdoPix-versao1.1.pdf).
[Manual de Tempos do Pix](https://www.bcb.gov.br/content/estabilidadefinanceira/pix/Regulamento_Pix/IX.ManualdeTemposdoPix-versao1.1.pdf).
As relatos por motivo de fraude e PLD/FT são contabilizadas e retornadas ao
[consultar vínculo](#operation/getEntry). Se for cancelado, o relato deixa de ser contabilizado
Expand Down Expand Up @@ -474,8 +474,11 @@ paths:
Arrendonda-se o número para cima, por exemplo: 3 → 5, 190 → 500 .
### Limitação de requisições
A política de limitação (_rate-limiting_) funciona com base em cabeçalhos enviados na requisição.
A consulta a chaves do tipo EMAIL e PHONE está sujeita à política de limitação (_rate-limiting_) de requisições.
A limitação funciona com base em cabeçalhos enviados na requisição. Os cabeçalhos de requisição são obrigatórios
para todos os tipos de chaves. Na resposta, para consultas sujeitas à política de limitação, são enviados
cabeçalhos que informam detalhes sobre o estado dos _buckets_ associados ao participante e ao usuário final.
O parâmetro `PI-PayerId` é o identificador pseudonimizado do usuário final, vinculado a um participante.
Requisições vindas de um mesmo usuário, para um mesmo participante, devem usar o mesmo identificador.
Como sugestão de implementação, pode ser utilizado o valor hexadecimal da aplicação de
Expand Down Expand Up @@ -958,8 +961,8 @@ paths:
description: |-
Cancela reivindicação.
Para reivindicação de posse, status deve ser `WAITING_RESOLUTION` ou `CONFIRMED`. Se razão
de cancelamento for `DEFAULT_OPERATION`, prazo de validação de posse da chave do usuário
Para reivindicação de posse, status deve ser `WAITING_RESOLUTION` ou `CONFIRMED`. Se razão
de cancelamento for `DEFAULT_OPERATION`, prazo de validação de posse da chave do usuário
reivindicador deve ter passado.
Para portabilidade, status deve ser `WAITING_RESOLUTION`. Se razão de cancelamento for
Expand Down
Loading

0 comments on commit 4b8969b

Please sign in to comment.