Algumas fontes de consulta do Plexi requerem a utilização de certificados digitais, e para utilizar seus próprios certificados através do Plexi você precisará cadastra-los.
URL Base:
Cadastrar certificados
Endpoint: POST /api/organizations/:cnpj/certificates
É possível cadastrar um certificado digital enviando seu conteúdo em formato pfx
codificado em base64
juntamente com a senha.
{ "name": "certificado-1", "certificate": { "pfx": "base64 encoded", "password": "123" } }
Também é possível enviar diretamente o conteúdo do certificado junto com sua chave privada, já descriptografada, ambos codificados em base64
{ "name": "certificado-1", "certificate": { "cert": "base64 encoded", "key": "base64 encoded" } }
O campo name
será o identificador do certificado, é este valor que será utilizado para utilização e gerenciamento do certificado após sua criação.
Atualizar certificado
Endpoint: PUT /organizations/:cnpj/certificates/:name
Para atualizar um certificado basta enviar os dados do certificado como na endpoint de criação, sem o campo name
no corpo.
{ "certificate": { "cert": "base64 encoded", "key": "base64 encoded" } }
ou
{ "certificate": { "pfx": "base64 encoded", "password": "123" } }
Listar certificados
Endpoint: GET /organizations/:cnpj/certificates
Exemplo de retorno:
[ { "name": "certificado-cliente-1", "certificate" : { "common_name": "FULANO DE TAL 1234567890", "fingerprint": "VXRpbC9IdG1sSnNvbkZpbmRlci5waHAK", "due_date": "2024-01-01T00:00:00Z" } }, { "name": "certificado-cliente-1", "certificate" : { "common_name": "FULANO DE TAL 1234567890", "fingerprint": "VXRpbC9IdG1sSnNvbkZpbmRlci5waHAK", "due_date": "2024-01-01T00:00:00Z" } }, ]
Os certificados no Plexi tem 3 status: active
, deleted
e expired
. Por padrão a listagem de certificados lista apenas os certificados active
, mas é possível mudar este comportamento adicionando o parâmetro status
desta forma: GET /organizations/:cnpj/certificates?status=status
Detalhes do certificado
Endpoint: GET /organizations/:cnpj/certificates/:name
Exemplo de retorno:
{ "name": "certificado-cliente-1", "certificate" : { "common_name": "FULANO DE TAL 1234567890", "fingerprint": "VXRpbC9IdG1sSnNvbkZpbmRlci5waHAK", "due_date": "2024-01-01T00:00:00Z" } }
Deletar certificado
Endpoint: DELETE /organizations/:cnpj/certificates/:name