Schema

    One schema for every sequencer

    All platforms normalize into the same tables on disk. Your agent queries them directly.

    Core tables

    • events
    • leads
    • campaigns
    • senders
    • replies
    • bounces
    • lead_attributes
    • lead_timeline

    Event types vary by platform (Smartlead, Instantly, HeyReach, Prosp, etc.) but map into the same events and lead_timeline structures.

    Example queries

    Pair with prompts from the agent prompts guide.

    Reply rate by sender domain (7 days)

    SELECT sender_domain, COUNT(*) AS replies
    FROM replies
    WHERE replied_at >= date('now', '-7 days')
    GROUP BY sender_domain
    ORDER BY replies DESC;

    Bounces this week by day

    SELECT date(bounced_at) AS day, COUNT(*) AS bounces
    FROM bounces
    WHERE bounced_at >= date('now', '-7 days')
    GROUP BY day
    ORDER BY day;

    Campaign performance summary

    SELECT c.name, COUNT(DISTINCT e.lead_id) AS leads, COUNT(e.id) AS events
    FROM campaigns c
    LEFT JOIN events e ON e.campaign_id = c.id
    GROUP BY c.id;

    Lead timeline for one contact

    SELECT event_type, channel, occurred_at, payload
    FROM lead_timeline
    WHERE lead_id = ?
    ORDER BY occurred_at;

    Segment reply rate by seniority

    SELECT la.seniority, COUNT(r.id) AS replies, COUNT(DISTINCT l.id) AS leads
    FROM leads l
    JOIN lead_attributes la ON la.lead_id = l.id
    LEFT JOIN replies r ON r.lead_id = l.id
    GROUP BY la.seniority;