Sandbox
O sandbox reproduz o fluxo completo com um banco simulado: nenhum SMS é enviado e nenhuma proposta é registrada de verdade. Use-o durante toda a integração e a homologação.
Endereço
Seção intitulada “Endereço”https://sandbox-api.eagleix-corban.com.br
No momento, é o único ambiente disponível. A produção será liberada em breve.
Como o sandbox se comporta
Seção intitulada “Como o sandbox se comporta”| Sandbox | |
|---|---|
| Banco | Simulado: nada é enviado ao banco |
| Código SMS | Não há SMS; o código é sempre 123456 |
| Envio de código | Sem intervalo mínimo nem limite diário |
| Ofertas e link de assinatura | Fictícios |
| Avanço da proposta | Pelo simulador (abaixo) |
| Webhook | O cadastrado para o seu canal |
Cenários por CPF
Seção intitulada “Cenários por CPF”Para provocar cada situação, crie o link com um destes CPFs de teste (fictícios, com dígitos verificadores válidos). Qualquer outro CPF válido segue o fluxo sem falhas.
| CPF | O que acontece |
|---|---|
52998224725 (ou qualquer outro) |
Fluxo sem falhas: ofertas, proposta criada e link de assinatura |
00000000191 |
Cliente inelegível: a jornada termina na etapa de elegibilidade |
00000000272 |
Banco recusa o envio do código SMS |
00000000353 |
Elegível, mas sem nenhuma oferta |
00000000434 |
Banco indisponível na simulação (503) |
00000000515 |
Banco recusa a proposta na criação (proposta.falha) |
00000000604 |
Proposta criada, mas o link de assinatura não é gerado (a proposta permanece CRIADA) |
Simular o status da proposta
Seção intitulada “Simular o status da proposta”Depois que o cliente envia a proposta, você pode avançar o status como se a mudança viesse do banco:
curl -s -X POST https://sandbox-api.eagleix-corban.com.br/v1/links/$LINK_ID/proposta/simular \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"status":"FORMALIZADA"}'$body = '{"status":"FORMALIZADA"}'$body | curl.exe -s -X POST "https://sandbox-api.eagleix-corban.com.br/v1/links/$($env:LINK_ID)/proposta/simular" -H "Authorization: Bearer $env:ACCESS_TOKEN" -H "Content-Type: application/json" --data-binary "@-"$h = @{ Authorization = "Bearer $($env:ACCESS_TOKEN)" }$body = '{"status":"FORMALIZADA"}'Invoke-RestMethod -Method Post -Uri "https://sandbox-api.eagleix-corban.com.br/v1/links/$($env:LINK_ID)/proposta/simular" ` -Headers $h ` -ContentType "application/json" -Body $bodyconst res = await fetch(`https://sandbox-api.eagleix-corban.com.br/v1/links/${process.env.LINK_ID}/proposta/simular`, { method: 'POST', headers: { Authorization: `Bearer ${process.env.ACCESS_TOKEN}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ "status": "FORMALIZADA" }),})const data = await res.json()import os, requests
r = requests.request( "POST", f"https://sandbox-api.eagleix-corban.com.br/v1/links/{os.environ['LINK_ID']}/proposta/simular", headers={"Authorization": f"Bearer {os.environ['ACCESS_TOKEN']}"}, json={ "status": "FORMALIZADA" }, timeout=15,)print(r.status_code, r.json())Em Import, escolha Raw text e cole o comando. A variável {{ACCESS_TOKEN}} é criada na coleção.
curl --location --request POST 'https://sandbox-api.eagleix-corban.com.br/v1/links/{{LINK_ID}}/proposta/simular' \ --header 'Authorization: Bearer {{ACCESS_TOKEN}}' \ --header 'Content-Type: application/json' \ --data '{"status":"FORMALIZADA"}'Valores aceitos em status: FORMALIZADA, APROVADA, RECUSADA e CANCELADA.
O status só avança (voltar dá 409 transicao_invalida), e RECUSADA ou CANCELADA encerram a
proposta.
Caixa de entrada de webhooks
Seção intitulada “Caixa de entrada de webhooks”Para receber webhooks sem precisar de um servidor próprio, crie a caixa de entrada de teste do seu canal:
curl -s -X PUT https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor \ -H "Authorization: Bearer $ACCESS_TOKEN"curl.exe -s -X PUT "https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor" -H "Authorization: Bearer $env:ACCESS_TOKEN"$h = @{ Authorization = "Bearer $($env:ACCESS_TOKEN)" }Invoke-RestMethod -Method Put -Uri "https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor" ` -Headers $hconst res = await fetch('https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor', { method: 'PUT', headers: { Authorization: `Bearer ${process.env.ACCESS_TOKEN}`, },})const data = await res.json()import os, requests
r = requests.request( "PUT", "https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor", headers={"Authorization": f"Bearer {os.environ['ACCESS_TOKEN']}"}, timeout=15,)print(r.status_code, r.json())Em Import, escolha Raw text e cole o comando. A variável {{ACCESS_TOKEN}} é criada na coleção.
curl --location --request PUT 'https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor' \ --header 'Authorization: Bearer {{ACCESS_TOKEN}}'url: endereço que você cadastra como webhook.visualizacaoUrl: página que exibe cada evento recebido, com horário, tipo, número da tentativa, resultado da verificação da assinatura, corpo e headers. Atualiza-se automaticamente.- Botões Responder 200 e Responder 500: definem o status HTTP que a caixa devolve ao Corban. Com 500, você pode observar as retentativas e o reenvio manual.
- A caixa guarda os 50 eventos mais recentes.
DELETE /v1/sandbox/receptor/eventosapaga todos.
Para apagar os eventos guardados:
curl -s -X DELETE https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor/eventos \ -H "Authorization: Bearer $ACCESS_TOKEN"curl.exe -s -X DELETE "https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor/eventos" -H "Authorization: Bearer $env:ACCESS_TOKEN"$h = @{ Authorization = "Bearer $($env:ACCESS_TOKEN)" }Invoke-RestMethod -Method Delete -Uri "https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor/eventos" ` -Headers $hconst res = await fetch('https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor/eventos', { method: 'DELETE', headers: { Authorization: `Bearer ${process.env.ACCESS_TOKEN}`, },})const data = await res.json()import os, requests
r = requests.request( "DELETE", "https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor/eventos", headers={"Authorization": f"Bearer {os.environ['ACCESS_TOKEN']}"}, timeout=15,)print(r.status_code, r.json())Em Import, escolha Raw text e cole o comando. A variável {{ACCESS_TOKEN}} é criada na coleção.
curl --location --request DELETE 'https://sandbox-api.eagleix-corban.com.br/v1/sandbox/receptor/eventos' \ --header 'Authorization: Bearer {{ACCESS_TOKEN}}'