boxli is CRM-native, not CRM-adjacent. Engagement signals stream into HubSpot and Salesforce as contact properties, timeline events, and deal-linked records — in real time, with sub-500ms latency. Slack pings your reps the second a box is opened. Webhooks let you wire boxli into anything else.
Six native integrations and an open webhook surface. Beta and roadmap items called out — we'll tell you on the demo what's in production for your stack.
Native OAuth. Sends post as contact properties + timeline events. Deal attribution via hubspot_deals link. List-based campaign triggers.
OAuth in private beta. Lead and contact sync, custom object for sends, opportunity attribution. Open a pilot to enable.
Per-org incoming webhook or org-wide fallback. Triggers post to chosen channel with rep mention, contact context, and deep-link to send.
Track API webhooks fire on delivery, exception, and undeliverable events. Auto-refunds the credit on failure, pages assigned rep on success.
Subscription billing + per-design inventory line items. Webhooks reconcile inventory balance + send receipts. Org-scoped customer records.
Transactional email for delivery, scan alerts, low-credit warnings, team invites. Templated, per-org branded.
Video brochure hosting and per-recipient AI personalization. Integration scoped — telemetry will post to /api/ingest/engagement via HMAC.
Outbound webhooks on every signal. Inbound HMAC-signed ingest at /api/ingest/engagement. CSV fallback for batch loads.
Trigger boxli sends from any Zap. App listing in review. Webhook integration available today as an alternative.
Native step type for boxli sends inside Outreach sequences. In planning — works today via webhook.
Native cadence step. In planning — works today via webhook.
Two-way sync of engagement signals as program-member custom fields. On the roadmap for Q3.
Inbound engagement events are HMAC-SHA256 signed on every request and idempotent on external_event_id. Outbound webhooks fire on every signal, with retry-with-backoff.
POST /api/ingest/engagement
Headers:
content-type: application/json
x-boxli-signature: sha256=<hmac of body>
Body:
{
"external_event_id": "vendor_evt_abc123",
"external_send_id": "<sends.id or sends.external_ref>",
"event_type": "session_end",
"occurred_at": "2026-04-22T18:14:00Z",
"duration_sec": 142,
"lat": 39.7392, "lng": -104.9903,
"place_id": "ChIJ...", "place_label": "Denver, CO",
"play_sequence_num": 3
}Signature verification is timing-safe; replays land on the same row via the partial unique index on external_event_id. Sub-200ms happy path: insert plus counter RPC are synchronous, trigger evaluation runs in the background.
Configure per-trigger webhooks in the campaign builder. boxli POSTs the rollup row, the touched send, and the originating event. Retries on 5xx with exponential backoff. Dispatch failures are logged in trigger_fires for audit.
Full reference at /docs/api. CSV fallback at POST /api/ingest/engagement/csv for vendors that can't hit our webhook directly.
If your sales stack runs on something we haven't shipped yet — Apollo, Common Room, Default, Clay, Gong — and you're willing to be a design partner on the integration, we'll prioritize it.