Documentação da API
Integre sua agência à Levve Pay: busque voos e hotéis em tempo real com poucas chamadas.
https://api.levvepay.com.brVisão geral
A API é organizada em torno de dois recursos: busca de voos e busca de hotéis. Todas as requisições e respostas usam JSON.
Os endpoints de busca são autenticados e gravam o histórico de buscas na conta da sua agência.
Autenticação
A API usa Bearer token (JWT). Autentique uma vez com as credenciais da sua agência e reutilize o token nas chamadas seguintes, até ele expirar.
curl -X POST https://api.levvepay.com.br/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "contato@suaagencia.com.br",
"password": "sua-senha"
}'{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "bearer"
}Envie o token no header em toda chamada autenticada:
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...Buscar voos
Retorna tarifas de voos disponíveis pra uma rota e data, ordenadas por preço.
curl -X POST https://api.levvepay.com.br/flights/search \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"origin": "GYN",
"destination": "VCP",
"departure_date": "2026-08-20",
"return_date": "2026-08-27",
"adults": 1,
"children": 0,
"cabin_class": "economy"
}'{
"success": true,
"source": "levve",
"search_id": 4821,
"results": [
{
"id": 1,
"airline": "LATAM",
"origin": "GYN",
"destination": "VCP",
"final_price": 739.90,
"currency": "BRL",
"departure_time": "06:10",
"arrival_time": "08:45",
"duration": "2h35",
"stops": 0
}
]
}cabin_class aceita economy, premium_economy, business ou first.
Buscar hotéis
Retorna hotéis disponíveis num destino, com preço, comodidades e avaliações.
curl -X POST https://api.levvepay.com.br/hotels/search \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"destination_query": "Rio de Janeiro",
"check_in_date": "2026-08-10",
"check_out_date": "2026-08-12",
"adults": 2,
"children": 0
}'{
"results": [
{
"name": "Hotel Hilton Copacabana",
"overall_rating": 4.7,
"reviews": 13295,
"rate_per_night": 1257.50,
"final_rate": 1332.50,
"currency": "BRL"
}
],
"notice": "Valores estimados e sujeitos à disponibilidade."
}Análise de crédito
Consulta score, dados cadastrais e poder aquisitivo de uma pessoa a partir do CPF. O resultado do dia fica em cache — a mesma consulta não é cobrada de novo.
curl -X POST https://api.levvepay.com.br/credito/consultas/cpf/12345678900 \
-H "Authorization: Bearer SEU_TOKEN"{
"id": 913,
"cpf": "12345678900",
"nome": "Maria da Silva",
"score_csb": "742",
"score_csba": "781",
"faixa_risco": "Baixo risco",
"status_http": 200,
"criado_em": "2026-08-08T14:32:10",
"resposta": {
"data": {
"body": {
"status": 200,
"DadosBasicos": {
"nome": "Maria da Silva",
"cpf": "12345678900",
"dataNascimento": "1990-04-12",
"sexo": "F",
"nomeMae": "Ana da Silva",
"situacaoCadastral": { "descricaoSituacaoCadastral": "REGULAR" }
},
"DadosEconomicos": {
"score": {
"scoreCSB": "742",
"scoreCSBA": "781",
"scoreCSBAFaixaRisco": "Baixo risco"
},
"poderAquisitivo": {
"poderAquisitivoDescricao": "Classe B",
"faixaPoderAquisitivo": "R$ 4.500,00 a R$ 9.000,00"
},
"renda": "6200.00"
},
"telefones": [{ "telefone": "(62) 99999-0000" }],
"emails": [{ "email": "maria@exemplo.com.br" }],
"enderecos": [
{ "tipoLogradouro": "Rua", "logradouro": "das Flores", "logradouroNumero": "123",
"bairro": "Centro", "cidade": "Goiânia", "uf": "GO", "cep": "74000-000" }
]
}
}
}
}Contas parceiras (não donas da plataforma) recebem uma versão reduzida do campo resposta — só nome, CPF, nascimento, situação cadastral, score e poder aquisitivo, sem telefones, e-mails ou endereços.
Lista as últimas consultas feitas pela sua conta (mais recentes primeiro).
curl https://api.levvepay.com.br/credito/consultas/historico?limit=50 \
-H "Authorization: Bearer SEU_TOKEN"Erros
Toda falha retorna o código HTTP correspondente e uma mensagem legível em detail:
{
"detail": "Token inválido ou expirado"
}| Código | Significado |
|---|---|
| 400 | Requisição inválida — dado obrigatório ausente ou incorreto |
| 401 | Token ausente, inválido ou expirado |
| 404 | Recurso não encontrado |
| 502 | Falha temporária ao consultar o fornecedor (companhia aérea ou hotel) |
