View Source ExDatacube (ExDatacube v0.3.1)
Wrapper de comunicação com à API da DataCube.
A API da DataCube conta com três grandes seções:
- Veículos (
ExDatacube.Veiculos
); - Cadastros (
ExDatacube.Cadastros
); - CNH (
ExDatacube.CNH
).
Cada uma dessas seções é implementada de forma independente, de modo que as configurações também precisam ser fornecidas independentemente.
opções-compartilhadas
Opções compartilhadas
Todas as funções de comunicação com a api compartilham as opções a seguir. Além de passar as opções para as funções, há a opção de definí-las globalmente através da configuração da aplicação:
config :ex_datacube, auth_token: "token"
config :ex_datacube, ExDatacube.Veiculos,
auth_token: "token",
adaptador: ExDatacube.Veiculos.Adaptores.Default
:auth_token
— token de autenticação à API.:adaptador
— Adaptador a ser utilizado nas chamadas. Por padrão, o adaptador usado é oModuloAPI.Adaptores.Default
que comunica-se com a api de produção. Há disponível também o adaptador de testesModuloAPI.Adaptores.Stub
que pode ser usado por bibliotecas como a Mox para realizar testes.:receive_timeout
— timeout da requisição. Default: 1 minuto.
Link to this section Summary
API Veículos
Retorna resultado da busca de veículos completa.
Retorna resultado da busca de veículos simplificada v2.
API CNH
Retorna CNH de motorista da base nacional.
API Cadastros
Retorna dados da empresa identificada pelo cnpj
.
Link to this section Types
Link to this section API Veículos
@spec consulta_nacional_completa(ExDatacube.Veiculos.placa(), shared_opts()) :: {:ok, ExDatacube.Veiculos.Veiculo.t()} | {:error, ExDatacube.API.error()}
Retorna resultado da busca de veículos completa.
options
Options
Veja a seção "Opções compartilhadas" na documentação do módulo para as opções possíveis.
exemplo
Exemplo
{:ok, %ExDataCube.Veiculos.Veiculo{} = veiculo} =
ExDatacube.consulta_nacional_completa("FLT9034")
@spec consulta_nacional_simples_v2(ExDatacube.Veiculos.placa(), shared_opts()) :: {:ok, ExDatacube.Veiculos.Veiculo.t()} | {:error, ExDatacube.API.error()}
Retorna resultado da busca de veículos simplificada v2.
options
Options
Veja a seção "Opções compartilhadas" na documentação do módulo para as opções possíveis.
exemplo
Exemplo
{:ok, %Veiculo{} = veiculo} =
ExDatacube.consulta_nacional_simples_v2("FLT9034")
Link to this section API CNH
@spec consulta_nacional_cnh(ExDatacube.CNH.cpf(), shared_opts()) :: {:ok, map()} | {:error, ExDatacube.API.error()}
Retorna CNH de motorista da base nacional.
options
Options
Veja a seção "Opções compartilhadas" na documentação do módulo para as opções possíveis.
exemplo
Exemplo
{:ok, map()} = ExDatacube.consulta_nacional_cnh("348.666.357-67")
Link to this section API Cadastros
@spec consulta_dados_cnpj(ExDatacube.Cadastros.cnpj(), shared_opts()) :: {:ok, map()} | {:error, ExDatacube.API.error()}
Retorna dados da empresa identificada pelo cnpj
.
options
Options
Veja a seção "Opções compartilhadas" na documentação do módulo para as opções possíveis.
exemplo
Exemplo
{:ok, map()} = ExDatacube.consulta_dados_cnpj("47.960.950/0001-21")