Skip to main content
POST
https://localapi.lazydata.com.br
/
v1
/
search
/
person
Busca por CPF
curl --request POST \
  --url https://localapi.lazydata.com.br/v1/search/person \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "taxid": "<string>",
  "datasets": [
    "<string>"
  ],
  "additional": {},
  "mode": "<string>"
}
'
{
  "code": 200,
  "message": "Consulta realizada com sucesso.",
  "result": {
    "id": "9fcb573b-7f62-4774-978b-07e89dfef5f2",
    "status": "completed",
    "target": "person",
    "query": {
      "taxid": "00000000000",
      "datasets": ["person_basic_data"],
      "additional": {}
    },
    "cost": {
      "total": 0.05,
      "refunded": 0,
      "datasets": {
        "person_basic_data": {
          "charged": 0.05,
          "refunded": 0
        }
      }
    },
    "timing": {
      "total": 0.42,
      "datasets": {
        "person_basic_data": 0.42
      }
    },
    "errors": {},
    "datasets_status": {
      "person_basic_data": "completed"
    },
    "result": {
      "person_basic_data": {
        "name": "PESSOA FICTÍCIA",
        "tax_id": "00000000000",
        "birth_date": "1990-01-01"
      }
    },
    "created_at": "2026-06-22T12:00:00Z",
    "last_updated_at": "2026-06-22T12:00:01Z"
  }
}
Executa uma consulta de pessoa física por CPF usando os datasets informados no corpo da requisição. Essa consulta pode ser executada em modo síncrono ou assíncrono. No modo assíncrono, a API retorna um id para acompanhamento posterior do resultado.
{
  "code": 200,
  "message": "Consulta realizada com sucesso.",
  "result": {
    "id": "9fcb573b-7f62-4774-978b-07e89dfef5f2",
    "status": "completed",
    "target": "person",
    "query": {
      "taxid": "00000000000",
      "datasets": ["person_basic_data"],
      "additional": {}
    },
    "cost": {
      "total": 0.05,
      "refunded": 0,
      "datasets": {
        "person_basic_data": {
          "charged": 0.05,
          "refunded": 0
        }
      }
    },
    "timing": {
      "total": 0.42,
      "datasets": {
        "person_basic_data": 0.42
      }
    },
    "errors": {},
    "datasets_status": {
      "person_basic_data": "completed"
    },
    "result": {
      "person_basic_data": {
        "name": "PESSOA FICTÍCIA",
        "tax_id": "00000000000",
        "birth_date": "1990-01-01"
      }
    },
    "created_at": "2026-06-22T12:00:00Z",
    "last_updated_at": "2026-06-22T12:00:01Z"
  }
}

Corpo da requisição

taxid
string
required
CPF da pessoa consultada. Pontuação é aceita e removida automaticamente.
datasets
string[]
required
Lista de IDs dos datasets que serão consultados.
additional
object
Dados adicionais por dataset, quando algum dataset exigir parâmetros extras.
mode
string
default:"async"
Modo da consulta.
Valores aceitos para mode:
ValorDescrição
asyncInicia a consulta e retorna um id para acompanhar o resultado depois.
syncAguarda a conclusão da consulta e retorna os dados diretamente na resposta.
x-ambient
string
Use sandbox para executar uma chamada de teste sem consumo de saldo.
Para detalhes sobre chamadas de teste, consulte a página de ambiente de teste em /quickstart/sandbox.

Exemplo de corpo

{
  "taxid": "00000000000",
  "mode": "async",
  "datasets": ["person_basic_data"],
  "additional": {}
}
O CPF acima é fictício e serve apenas para demonstrar a estrutura da requisição. Em chamadas reais ou sandbox, informe um CPF válido para o ambiente utilizado.

Parâmetros adicionais por dataset

Alguns datasets podem exigir campos adicionais. Consulte additional_fields no endpoint de datasets e preços para saber quais campos devem ser enviados. Exemplo de envio de dados adicionais:
{
  "taxid": "00000000000",
  "mode": "async",
  "datasets": ["person_example_dataset"],
  "additional": {
    "person_example_dataset": {
      "state": "SP"
    }
  }
}

Resposta

code
integer
required
Código da resposta da API.
message
string
required
Mensagem descritiva da resposta.
result
object
required
Objeto principal da consulta. A estrutura varia de acordo com o modo de execução.

Retorno síncrono

Quando mode é sync, a resposta pode retornar code: 200 com os dados completos da consulta.

Estrutura de result

CampoTipoDescrição
idstringIdentificador único da consulta.
statusstringStatus final da consulta. Normalmente completed.
targetstringTipo da consulta. Para esta rota, retorna person.
queryobjectDados usados na consulta.
costobjectValores cobrados e estornados.
timingobjectTempo total e tempo individual por dataset.
errorsobjectErros por dataset, quando ocorrerem.
datasets_statusobjectStatus individual de cada dataset.
resultobjectResultado agrupado por dataset.
created_atstringData de criação da consulta em ISO 8601.
last_updated_atstringData da última atualização da consulta em ISO 8601.

Estrutura de result.query

CampoTipoDescrição
taxidstringCPF consultado, normalizado apenas com números.
datasetsarray<string>Datasets solicitados.
additionalobjectDados adicionais enviados por dataset.

Estrutura de result.cost

CampoTipoDescrição
totalnumberValor total debitado após regras de retorno e estorno.
refundednumberValor total estornado.
datasetsobjectDetalhamento de cobrança por dataset.

Estrutura de result.timing

CampoTipoDescrição
totalnumberTempo total da consulta em segundos.
datasetsobjectTempo individual de cada dataset em segundos.

Estrutura de result.errors

O campo errors retorna um objeto indexado pelo ID do dataset quando alguma base falha. Exemplo:
{
  "errors": {
    "person_example_dataset": {
      "code": 42025,
      "message": "Não foi possível consultar o provedor da consulta."
    }
  }
}

Estrutura de result.datasets_status

Objeto com o status individual de cada dataset. Exemplo:
{
  "datasets_status": {
    "person_basic_data": "completed",
    "person_example_dataset": "failed"
  }
}

Estrutura de result.result

Objeto indexado pelo ID do dataset. Cada chave contém o retorno do dataset correspondente.
{
  "result": {
    "person_basic_data": {
      "name": "PESSOA FICTÍCIA",
      "tax_id": "00000000000",
      "birth_date": "1990-01-01"
    }
  }
}
Campos descritos na estrutura do dataset podem não ser retornados em todas as consultas. Alguns dados dependem da disponibilidade da fonte e do CPF consultado.

Retorno assíncrono

Quando mode é async, a resposta inicial retorna code: 202 e o processamento continua em segundo plano.

Estrutura de result

CampoTipoDescrição
idstringIdentificador da consulta assíncrona.
statusstringStatus atual da consulta.
status_valuesarray<string>Lista de status possíveis.
datasetsarray<string>Datasets solicitados na consulta.
Status possíveis:
StatusDescrição
queuedConsulta criada e aguardando processamento.
processingConsulta em processamento.
completedConsulta finalizada com sucesso.
failedConsulta finalizada com falha.
Para consultar o resultado final, use o id retornado no endpoint de resultado assíncrono.

Respostas esperadas

As respostas possíveis estão exemplificadas no painel lateral da página.
StatusQuando ocorre
200Consulta síncrona concluída com sucesso.
202Consulta assíncrona iniciada com sucesso.
400Requisição inválida, CPF inválido, dataset ausente ou parâmetro incompatível.
401A chave da API está ausente, inválida ou não pôde ser autenticada.
403A credencial não possui escopo de consulta, o plano não permite acesso ou há bloqueio financeiro.

Fluxo recomendado

  1. Liste os datasets disponíveis em Datasets e preços.
  2. Selecione apenas datasets com active: true.
  3. Envie o CPF, os datasets e os campos adicionais necessários.
  4. Use mode: "async" para consultas com múltiplos datasets ou fontes online.
  5. Consulte o resultado pelo id retornado quando a chamada for assíncrona.