API Hub Brasil
Tutorial Avançado

Como criar um Rastreador de Encomendas com Histórico e WhatsApp

Consultar uma API é fácil. O desafio real é entregar uma experiência rica para o usuário, permitindo ver o histórico completo do pacote sem poluir a interface inicial.


1. O Objetivo Final (Interativo)

O card abaixo é uma simulação do que vamos construir. Note o botão "Ver Histórico". Clique nele para ver o efeito sanfona (accordion) funcionando:

Simulação (Clique em "Ver Histórico"):

Entregue

Objeto entregue ao destinatário

São Paulo - SP
15/02/2026 às 14:30

Objeto saiu para entrega

São Paulo • 15/02 - 08:00

Encaminhado para São Paulo

Curitiba • 13/02 - 14:20

Objeto postado

Agência • 12/02 - 10:00
Enviar para Cliente

2. Preparando a Estrutura

Para criar esse efeito, precisamos dividir o HTML em duas partes: o Status Atual (sempre visível) e a Lista de Histórico (oculta por padrão).

3. O Código JavaScript (Lógica de Expandir)

Além de buscar na API, adicionamos uma função simples para alternar a visibilidade da div de histórico quando o usuário clicar no botão.

async function rastrearEncomenda(inputUsuario) {
    // ... (Código de validação e fetch API igual ao anterior) ...

    const ultimo = dados.eventos[0];
    const historico = dados.eventos.slice(1); // Pega do segundo em diante

    // Gera o HTML da Timeline
    const htmlTimeline = historico.map(e => `
        <div class="timeline-item">
            <div class="timeline-dot"></div>
            <p>${e.status}</p>
            <small>${e.local} • ${e.data} ${e.hora}</small>
        </div>
    `).join('');

    // Injeta no Container
    container.innerHTML = `
        <div class="card">
            <h2>${ultimo.status}</h2>
            <p>${ultimo.local}</p>
            
            <button onclick="document.getElementById('hist-oculto').style.display = 'block'">
                Ver Histórico Completo ⬇
            </button>
            
            <div id="hist-oculto" style="display: none; margin-top: 15px;">
                ${htmlTimeline}
            </div>
        </div>
    `;
}

🚀 Dica Pro: Bot do WhatsApp

Para enviar notificações automáticas (sem precisar clicar), você não pode usar apenas JavaScript no navegador. Você precisará de um servidor backend rodando 24 horas.