ApiBrasil.Data.Consulta (APIBrasil v0.0.1)

Copy Markdown View Source

Consultas por crédito (POST /consulta/{servico}/credits e afins).

Não usam DeviceToken — debitam o saldo/créditos da conta. O campo tipo do body define o produto consultado (ex: lista-socios, serasa-score-pf, spc-serasa); os tipos conhecidos estão em ApiBrasil.Generated.Catalog.consulta_tipos/0.

{:ok, cpf} = ApiBrasil.Data.Consulta.cpf(client, %{"cpf" => "00000000000"})

ApiBrasil.Core.CreditResponse.balance(cpf)
ApiBrasil.Core.CreditResponse.data(cpf)

Use ApiBrasil.Consulta para montar o body, inclusive em modo homologação:

alias ApiBrasil.{Consulta, Data}

"lista-socios"
|> Consulta.new()
|> Consulta.field("cnpj", "00000000000000")
|> then(&Data.Consulta.cnpj(client, &1))

# modo homologação (sandbox, sem cobrança)
"serasa-score-pj"
|> Consulta.new()
|> Consulta.homolog(true)
|> Consulta.field("cnpj", "00000000000000")
|> then(&Data.Consulta.cnpj(client, &1))

Além das consultas nomeadas, generic/4 chama qualquer serviço do catálogo (ApiBrasil.Generated.Catalog.consulta_servicos/0) e credits/3 devolve os créditos disponíveis:

Data.Consulta.generic(client, "cnh", %{"cpf" => "00000000000"})
Data.Consulta.credits(client, "cpf")

Summary

Functions

Consulta o RNTRC: POST /consulta/api-rntrc/credits.

Como api_rntrc/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta um CEP: POST /consulta/cep/credits.

Como cep/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Calcula a distância entre CEPs: POST /cep/distancia/calcular.

Consulta uma CNH: POST /consulta/cnh/credits.

Como cnh/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta um CNPJ: POST /consulta/cnpj/credits (ex: tipo = lista-socios).

Como cnpj/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta um CPF: POST /consulta/cpf/credits.

Como cpf/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta um registro no CRBM: POST /consulta/crbm/credits.

Como crbm/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta os créditos disponíveis de um serviço: GET /consulta/{servico}/credits.

Consulta um registro no CRM: POST /consulta/crm/credits.

Como crm/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta um registro no CRO: POST /consulta/cro/credits.

Como cro/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta o DDD na Anatel: POST /consulta/ddd-anatel/credits.

Como ddd_anatel/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Emite notas fiscais: POST /consulta/emissao-notas/credits.

Como emissao_notas/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Calcula o frete ANTT: POST /consulta/frete-antt/credits.

Como frete_antt/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Executa uma consulta genérica: POST /consulta/{servico}/credits.

Consulta a base de IPs: POST /consulta/geoip/credits.

Como geoip/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta o proxy seller: POST /proxy/seller/credits.

Consulta o birô Quod: POST /quod/cnpj/credits.

Rastreia uma encomenda: POST /consulta/rastreio/credits.

Como rastreio/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta a operadora de um telefone: POST /consulta/telefone/credits.

Como telefone/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta veicular na rota em inglês: POST /consulta/vehicles/credits.

Como vehicles/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta veicular: POST /consulta/veiculos/credits.

Como veiculos/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Consulta as bases veiculares dedicadas: POST /vehicles/base/000/{base} (base: dados | fipe).

Consulta a previsão do tempo: POST /consulta/weather-api/credits.

Como weather/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

Types

result()

@type result() :: {:ok, map()} | {:error, ApiBrasil.Core.Error.t()}

Functions

api_rntrc(client, body \\ nil, opts \\ [])

@spec api_rntrc(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta o RNTRC: POST /consulta/api-rntrc/credits.

api_rntrc!(client, body \\ nil, opts \\ [])

Como api_rntrc/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

cep(client, body \\ nil, opts \\ [])

Consulta um CEP: POST /consulta/cep/credits.

cep!(client, body \\ nil, opts \\ [])

Como cep/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

cep_distancia(client, body \\ nil, opts \\ [])

@spec cep_distancia(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Calcula a distância entre CEPs: POST /cep/distancia/calcular.

cep_distancia!(client, body \\ nil, opts \\ [])

@spec cep_distancia!(ApiBrasil.Client.t(), term(), keyword()) ::
  ApiBrasil.Core.CreditResponse.t()

Como cep_distancia/3, mas levanta ApiBrasil.Core.Error em caso de falha.

cnh(client, body \\ nil, opts \\ [])

Consulta uma CNH: POST /consulta/cnh/credits.

cnh!(client, body \\ nil, opts \\ [])

Como cnh/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

cnpj(client, body \\ nil, opts \\ [])

Consulta um CNPJ: POST /consulta/cnpj/credits (ex: tipo = lista-socios).

cnpj!(client, body \\ nil, opts \\ [])

Como cnpj/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

cpf(client, body \\ nil, opts \\ [])

Consulta um CPF: POST /consulta/cpf/credits.

cpf!(client, body \\ nil, opts \\ [])

Como cpf/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

crbm(client, body \\ nil, opts \\ [])

Consulta um registro no CRBM: POST /consulta/crbm/credits.

crbm!(client, body \\ nil, opts \\ [])

Como crbm/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

credits(client, service, opts \\ [])

Consulta os créditos disponíveis de um serviço: GET /consulta/{servico}/credits.

credits!(client, service, opts \\ [])

Como credits/3, mas levanta ApiBrasil.Core.Error em caso de falha.

crm(client, body \\ nil, opts \\ [])

Consulta um registro no CRM: POST /consulta/crm/credits.

crm!(client, body \\ nil, opts \\ [])

Como crm/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

cro(client, body \\ nil, opts \\ [])

Consulta um registro no CRO: POST /consulta/cro/credits.

cro!(client, body \\ nil, opts \\ [])

Como cro/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

ddd_anatel(client, body \\ nil, opts \\ [])

@spec ddd_anatel(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta o DDD na Anatel: POST /consulta/ddd-anatel/credits.

ddd_anatel!(client, body \\ nil, opts \\ [])

Como ddd_anatel/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

emissao_notas(client, body \\ nil, opts \\ [])

@spec emissao_notas(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Emite notas fiscais: POST /consulta/emissao-notas/credits.

emissao_notas!(client, body \\ nil, opts \\ [])

@spec emissao_notas!(ApiBrasil.Client.t(), term(), keyword()) ::
  ApiBrasil.Core.CreditResponse.t()

Como emissao_notas/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

frete_antt(client, body \\ nil, opts \\ [])

@spec frete_antt(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Calcula o frete ANTT: POST /consulta/frete-antt/credits.

frete_antt!(client, body \\ nil, opts \\ [])

Como frete_antt/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

generic(client, service, body \\ nil, opts \\ [])

Executa uma consulta genérica: POST /consulta/{servico}/credits.

Os serviços conhecidos estão em ApiBrasil.Generated.Catalog.consulta_servicos/0.

generic!(client, service, body \\ nil, opts \\ [])

Como generic/4, mas levanta ApiBrasil.Core.Error em caso de falha.

geoip(client, body \\ nil, opts \\ [])

Consulta a base de IPs: POST /consulta/geoip/credits.

geoip!(client, body \\ nil, opts \\ [])

Como geoip/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

proxy_seller(client, body \\ nil, opts \\ [])

@spec proxy_seller(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta o proxy seller: POST /proxy/seller/credits.

proxy_seller!(client, body \\ nil, opts \\ [])

Como proxy_seller/3, mas levanta ApiBrasil.Core.Error em caso de falha.

quod(client, body \\ nil, opts \\ [])

Consulta o birô Quod: POST /quod/cnpj/credits.

quod!(client, body \\ nil, opts \\ [])

Como quod/3, mas levanta ApiBrasil.Core.Error em caso de falha.

rastreio(client, body \\ nil, opts \\ [])

@spec rastreio(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Rastreia uma encomenda: POST /consulta/rastreio/credits.

rastreio!(client, body \\ nil, opts \\ [])

Como rastreio/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

telefone(client, body \\ nil, opts \\ [])

@spec telefone(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta a operadora de um telefone: POST /consulta/telefone/credits.

telefone!(client, body \\ nil, opts \\ [])

Como telefone/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

vehicles(client, body \\ nil, opts \\ [])

@spec vehicles(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta veicular na rota em inglês: POST /consulta/vehicles/credits.

vehicles!(client, body \\ nil, opts \\ [])

Como vehicles/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

veiculos(client, body \\ nil, opts \\ [])

@spec veiculos(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta veicular: POST /consulta/veiculos/credits.

veiculos!(client, body \\ nil, opts \\ [])

Como veiculos/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.

veiculos_base(client, base, body \\ nil, opts \\ [])

@spec veiculos_base(ApiBrasil.Client.t(), String.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta as bases veiculares dedicadas: POST /vehicles/base/000/{base} (base: dados | fipe).

veiculos_base!(client, base, body \\ nil, opts \\ [])

Como veiculos_base/4, mas levanta ApiBrasil.Core.Error em caso de falha.

weather(client, body \\ nil, opts \\ [])

@spec weather(ApiBrasil.Client.t(), term(), keyword()) ::
  {:ok, ApiBrasil.Core.CreditResponse.t()} | {:error, ApiBrasil.Core.Error.t()}

Consulta a previsão do tempo: POST /consulta/weather-api/credits.

weather!(client, body \\ nil, opts \\ [])

Como weather/3, mas devolve o resultado direto e levanta ApiBrasil.Core.Error em caso de falha.