Visão Geral
A API de Monitoramento foi desenvolvida pela BigDataCorp para atender a processos que exigem maior recência das informações sem incorrer em restrições operacionais. Diferentemente das APIs de Enriquecimento, onde consultas frequentes são necessárias para obter dados atualizados, a API de Monitoramento gerencia a verificação dos registros desejados, e qualquer alteração identificada é enviada diretamente ao cliente.
O uso de dados atualizados é fundamental para a eficiência dos processos de decisão, sendo especialmente crítico em análise de crédito e avaliação de risco, garantindo decisões mais assertivas, reduzindo a inadimplência e melhorando a precisão das políticas financeiras.
Apesar do esforço contínuo da BigDataCorp em manter a qualidade e acurácia dos dados, com muitas fontes sendo capturadas diariamente, o acesso contínuo a essas informações recentes via APIs de Enriquecimento pode se tornar um impedimento devido a fatores operacionais e orçamentários. A API de Monitoramento resolve essa complexidade.
Casos de Uso
A API de Monitoramento é valiosa em cenários que exigem respostas rápidas a mudanças no perfil de um indivíduo ou empresa. A seguir estão alguns casos de uso em que esta API pode ser aplicada:
Acompanhe as informações de um indivíduo após sua inscrição em uma plataforma ou serviço.
Isso permite respostas ágeis a alterações como falecimento, processos judiciais, sanções ou exposição política, mantendo a base de clientes sempre atualizada.
Monitore clientes para identificar alterações cadastrais suspeitas.
Mudanças como múltiplos endereços em curto período ou inconsistências no status do documento, como CPF de titular falecido, podem indicar roubo de identidade ou fraude.
Acompanhe a saúde financeira de clientes e parceiros de forma contínua.
Alterações em indicadores financeiros, novas dívidas, como collections, ou o surgimento de processos judiciais, como processes, podem acionar uma reavaliação automática do risco de crédito.
Mantenha a conformidade regulatória em processos de AML/PLD.
O monitoramento contínuo permite identificar mudanças no status de Pessoa Politicamente Exposta, PEP, ou inclusão em listas de sanções nacionais e internacionais.
Definindo os Dados de Monitoramento
O primeiro passo para utilizar a API de Monitoramento, independentemente do fluxo de processo, é definir os datasets, campos e parâmetros a serem monitorados.
Ao realizar chamadas às APIs de Enriquecimento da Plataforma de Dados, dois campos são obrigatórios:
- Datasets: lista de todos os conjuntos de dados desejados.
- Q: parâmetros de consulta necessários para o processamento de cada dataset. Exemplo: o parâmetro
docé obrigatório para datasets de pessoas.
Todas as particularidades dos parâmetros devem ser verificadas durante a escolha dos dados a serem utilizados.
É possível definir o monitoramento de campos específicos dentro de cada dataset.
A seleção de campos deve ser feita de maneira cuidadosa, visto que alguns campos possuem alta frequência de atualização, mas podem não representar uma mudança significativa no dataset como um todo, o que pode gerar custos inesperados.
O monitoramento de campos específicos pode ser feito de duas formas:
- Utilizando a Seleção de Campos: permite limitar a resposta da API apenas aos campos estritamente necessários ao processo, otimizando o tráfego de dados e reduzindo a latência das requisições.
- Utilizando o
listen: permite monitorar campos específicos sem abrir mão de receber todos os dados possíveis do dataset.
Habilitando o Monitoramento
Após a definição dos dados, o próximo passo é habilitar o monitoramento, o que resulta na geração de um SubscriptionId. Este valor identifica o registro de monitoramento de forma única e deve ser armazenado para futuras alterações, se necessário.
Existem três maneiras de ativar o monitoramento:
Esta é a forma mais direta de habilitar o monitoramento.
Para isso, informe a opção no momento da chamada à API de enriquecimento por meio do campo Subscribe, juntamente com o SubscriptionHooks, que define o mecanismo de envio das atualizações.
É possível inscrever-se para monitoramento a partir do <Glossary>QueryID</Glossary> de uma chamada realizada anteriormente.
Neste caso, os datasets e parâmetros desejados são extraídos do registro original.
O parâmetro Datasets pode ser enviado na requisição para editar as configurações extraídas do QueryId. Isso permite selecionar apenas datasets específicos para monitoramento ou sobrescrever as configurações de campos a serem monitorados, por meio do parâmetro listen.
Não é permitido alterar filtros, ordenação, limite ou seleção de campos.
É possível habilitar o monitoramento para múltiplos documentos de uma só vez por meio da API de Processamento em Lote.
Esse processo permite maior agilidade e reduz a carga de trabalho necessária para a ativação do monitoramento.
Para realizar o processamento, é necessário possuir um arquivo de entrada com os parâmetros de cada chamada, separados por linhas, acessível por meio dos diferentes métodos aceitos pela API, conforme descrito aqui.
Atualizações de Monitoramento
A forma de envio das atualizações deve ser especificada no momento da inscrição através do campo SubscriptionHooks, mas pode ser modificada posteriormente. O envio das atualizações é feito de forma periódica, sendo o padrão de 15 dias, ajustável conforme a necessidade e volume monitorado.
O envio dos dados é feito individualmente para cada dataset incluído na assinatura que sofreu alteração. Por exemplo, se houverem atualizações em 3 de 5 datasets monitorados para um documento, ocorrerão 3 envios.
Este é o mecanismo mais simples e ágil para receber atualizações, pois dispensa infraestrutura complexa.
Ao receber o e-mail, será fornecido um link para download de um arquivo compactado, em formato ZIP e protegido por senha. A senha também estará contida na mensagem, juntamente com o total de atualizações.
| Parâmetro | Obrigatório? | Descrição | Valores Possíveis |
|---|---|---|---|
email | Sim | Endereço de e-mail para o qual as atualizações serão enviadas. | [email protected] |
copyemails | Não | E-mails adicionais separados por vírgula que serão adicionados em cópia no e-mail. | [email protected], [email protected], ... |
Recomendado para recebimento consolidado das atualizações em periodicidade predefinida, como diária, semanal ou mensal.
As informações são enviadas por meio das credenciais definidas na chamada, tipicamente para um servidor SFTP ou FTP.
| Parâmetro | Obrigatório? | Descrição | Valores Possíveis |
|---|---|---|---|
file | Sim | URL do servidor de arquivos, incluindo DNS e porta, com usuário e senha quando necessário. | sftp://user:password@dns:port ou ftp://user:password@dns:port |
remotefilepath | Não | Caminho no qual o arquivo será armazenado no servidor. O padrão é a raiz do diretório /. | /path/to/folder/ |
sshkeyauth | Não | Habilita a autenticação via chave RSA, SSH, para servidor SFTP. Se true, a chave SSH da BigDataCorp deve ser habilitada para o caminho especificado. | true ou false |
Este mecanismo exige o desenvolvimento de uma API, ou Web Service, dedicada para o recebimento dos dados.
| Parâmetro | Obrigatório? | Descrição | Valores Possíveis |
|---|---|---|---|
web | Sim | URL de acesso ao serviço de recebimento dos dados. | http://your-domain:1234 |
authorizationtoken | Não | Chave de acesso enviada no cabeçalho das requisições pela chave Authorization, com o prefixo Bearer. | YOUR_AUTH_TOKEN |
Se houver alguma mudança, os dados completos são enviados individualmente para cada dataset.
A estrutura JSON enviada segue os mesmos padrões de retorno das APIs de Enriquecimento.
Formatos de Saída dos Dados de Monitoramento
Os formatos de saída variam dependendo do mecanismo de envio (E-mail/Arquivo ou Webhook), mas a estrutura dos dados atualizados segue o padrão JSON das APIs de Enriquecimento.
Para envios por E-mail ou Arquivos, FTP/SFTP, o formato de saída primário é um arquivo compactado, em formato ZIP.
-
Arquivo Principal: o arquivo principal é gerado no formato ZIP, com o padrão de nomenclatura
ID_USER_DOMAIN_DATE.ZIP. -
Arquivos CSV: neste formato, o arquivo ZIP conterá diversos arquivos CSV, Comma Separated Values, para diferentes conjuntos de dados.
Esse formato permite fácil visualização e tratamento dos dados atualizados. Um dataset pode necessitar de um ou mais arquivos para compreender todos os seus dados em formato tabular.
Além dos arquivos com dados atualizados, também são entregues os seguintes arquivos:
- Dicionário de Dados.csv: descreve em detalhes cada coluna de dados.
- NOME-API_Atualizações.csv: contém as principais alterações encontradas para cada registro monitorado.
- Arquivo Completo.xlsx: arquivo de Excel com os dados de todos os arquivos CSV separados em abas. Ideal para uma pré-visualização manual dos dados.
-
Arquivos JSONL: nesta configuração, o arquivo ZIP conterá, individualmente, os dados de atualização para cadadataset monitorado.
Cada dataset monitorado será referente a um arquivo com a extensão TXT. Exemplo:
ID_USER_DOMAIN_DATE_DATASET.TXT.Dentro desses arquivos JSONL, cada linha corresponderá a um objeto JSON. Esse objeto JSON replica exatamente a estrutura de dados fornecida pela API de enriquecimento para o respectivo dataset, como
basic_dataoukyc.Esse formato é ideal para permitir o reaproveitamento das estruturas e tratamentos já realizados para os retornos das APIs de enriquecimento.
-
Configuração de Formato: é possível configurar o formato do arquivo de saída para os envios de monitoramento por meio do endpoint
/monitoramento/definirUsuario.O campo
OutputFileFormatdefine o formato como CSV ou JSONL. O padrão é CSV.
Para o mecanismo de Webhook, os dados são enviados diretamente em JSON.
O envio é feito de maneira individual, de modo que, se o monitoramento for referente a múltiplos datasets, apenas o dataset alterado será enviado por vez.
Essa regra evita a redundância de dados que não sofreram alterações.
A estrutura JSON enviada segue os mesmos padrões de retorno das APIs de Enriquecimento da BigData Corp.
Para um dataset de Pessoas, assumindo a chamada inicial de enriquecimento, a estrutura de retorno JSON será idêntica àquela esperada de uma requisição de enriquecimento bem-sucedida, mas limitada ao dataset que sofreu a atualização.
Cobrança
A cobrança pelo serviço de monitoramento incide sobre cada dataset que foi atualizado. O custo da atualização de um dataset é o mesmo de uma requisição padrão.
Exemplo: Se um usuário possui 1000 inscrições ativas para dois datasets (R$ 0,05 e R$ 0,07) e em um período ocorreram 100 alterações no primeiro e 200 no segundo, a cobrança total será de R$ 14,00 (0,05 x 100 + 0,07 x 200).
Observação: Não há cobrança sobre o uso dos endpoints de gerenciamento da própria API de Monitoramento (como listar, atualizar ou desabilitar).
Perguntas Frequentes
Perguntas Frequentes
Datasets on-demand podem ser monitorados?
Não. O monitoramento não está disponível para datasets das APIs de On-demand ou Marketplace.
Como sou cobrado pelo serviço?
A cobrança incide sobre cada dataset atualizado. O custo da atualização é o mesmo de uma requisição padrão para aquele dataset. Não há cobrança pelo uso dos endpoints de gerenciamento da API de Monitoramento, como listar, atualizar, testar ou desabilitar monitoramentos.
O que acontece se meu webhook ou servidor SFTP estiver indisponível?
A responsabilidade por manter o serviço de recebimento dos dados disponível é do cliente. A cobrança será computada sempre que uma alteração for identificada e enviada, independentemente de falhas no serviço de destino, como webhook, FTP ou SFTP.
Como posso testar minha configuração de monitoramento?
Utilize o endpoint /monitoramento/testar. Ele permite simular e validar as configurações de envio por e-mail, webhook, FTP ou SFTP a partir de um monitoramento ativo ou de uma consulta recente. O teste não gera cobrança, mas está sujeito ao limite de 500 requisições mensais.
É possível alterar uma inscrição de monitoramento depois de criada?
Sim. O endpoint /monitoramento/atualizar permite modificar os campos monitorados, por meio da configuração do listen, e o mecanismo de envio, por meio do SubscriptionHooks.
Como posso parar de monitorar um registro?
Utilize o endpoint /monitoramento/desabilitar. A desativação pode ser feita pelo SubscriptionId, pelo QueryId da consulta original ou pela combinação de parâmetros da chamada, como Api, Datasets e Parameters. Uma vez desabilitado, o monitoramento não pode ser reativado.
Qual a diferença entre usar a seleção de campos e o listen?
A seleção de campos, como basic\_data\[TaxIdStatus], limita o retorno da API apenas aos campos especificados, tanto na consulta inicial quanto nas atualizações. O listen, como basic\_data.listen(TaxIdStatus), monitora apenas as alterações nos campos especificados, mas, ao detectar uma mudança, envia o objeto completo do dataset na notificação.
Qual a frequência de envio das atualizações?
O envio é periódico, com padrão de 15 dias. Esse intervalo pode ser ajustado conforme a necessidade e o volume de registros monitorados.
Como configuro a autenticação para meu webhook ou servidor SFTP?
Para webhook, utilize o parâmetro authorizationtoken no SubscriptionHooks para enviar um token de autenticação no cabeçalho da requisição. Para SFTP com chave pública, use sshkeyauth{true} no SubscriptionHooks e garanta que a chave pública da BigDataCorp esteja autorizada no servidor. Para SFTP com chave privada, configure a chave por meio do campo SftpPrivateKey no endpoint /monitoramento/definirUsuario.
Endpoints da API de Monitoramento
A API de Monitoramento oferece funcionalidades de gerenciamento sem custos.
Endpoints da API de Monitoramento
| Funcionalidade | Endpoint | Descrição |
|---|---|---|
| Listar Inscrições | /monitoramento/listar | Lista todos os registros de monitoramento ativos para um domínio, suportando filtros e paginação. Retorna detalhes como SubscriptionId, Api, Datasets e TargetHook. |
| Detalhes de Monitoramento | /monitoramento/listar | Busca um registro específico pelo SubscriptionId ou pelas configurações da chamada, como Api, Datasets e Parameters. |
| Habilitar Monitoramento | /monitoramento/monitorar | Realiza a inscrição de monitoramento para um novo registro por meio do QueryId de uma chamada anterior. |
| Atualizar Monitoramento | /monitoramento/atualizar | Permite atualizar os campos monitorados, por meio de Datasets, ou o mecanismo de envio, por meio de SubscriptionHooks, usando SubscriptionId ou QueryId. |
| Desabilitar Monitoramento | /monitoramento/desabilitar | Desabilita um conjunto de registros de monitoramento. Uma vez desabilitado, não pode ser reativado. Pode ser feito via SubscriptionId, QueryId ou parâmetros da chamada original. |
| Diferenças de Monitoramento | /monitoramento/diferencas | Verifica mudanças entre resultados, comparando o registro mais recente com o mais antigo de um SubscriptionId, ou entre dois QueryIDs. Retorna detalhes das alterações encontradas por dataset. |
| Configurar Usuário | /monitoramento/definirUsuario | Permite configurar informações importantes para o funcionamento da API de Monitoramento, como chaves SFTP (SftpPrivateKey), formato de arquivo de saída (OutputFileFormat: CSV ou JSONL, padrão CSV) e detalhes de autenticação OAuth. |
| Histórico de Envios | /monitoramento/relatorio | Permite verificar o histórico de envios de monitoramento e os datasets monitorados, retornando informações paginadas. |
| Teste de Monitoramento | /monitoramento/testar | Simula e valida configurações do serviço, como alertas por e-mail, webhook ou arquivo, a partir de um monitoramento ativo ou consulta recente. É gratuito, limitado a 500 requisições mensais. |

