Pre-event signals
AI-powered social signals for pre-event outreach.
Workspace-level config
Base path:
/api/v1/{workspace_id}/signals/
GET /api/v1/{workspace_id}/signals/weight-suggestions/
POST /api/v1/{workspace_id}/signals/apply-weight-overrides/
Authorization: Bearer <token>
Event-scoped signals
Base path:
/api/v1/{workspace_id}/events/{event_id}/
Signal configuration
GET …/signal-config/
POST …/signal-config/
POST …/signal-config/discover-speakers/
POST …/signal-config/confirm-speakers/
Signals list & actions
GET …/signals/
GET …/signals/summary/
GET …/signals/accuracy-report/
POST …/signals/run-scrape/
POST …/signals/bulk-enrich/
POST …/signals/bulk-approve/
PATCH …/signals/{signal_id}/
POST …/signals/{signal_id}/enrich/
POST …/signals/{signal_id}/convert-to-lead/
Typical workflow
- Configure signal sources on the event (
signal-config/) - Run scrape (
run-scrape/) — async via Celery - Review signals in list view (
GET …/signals/) - Enrich or approve in bulk
- Convert high-intent signals to leads (
convert-to-lead/)
Converted leads retain full pre-event context via:
GET /api/v1/{workspace_id}/leads/{lead_id}/pre-event-signals/
This is also shown in the lead overview and edit form (separate from editable notes).
Requirements
- Apify token for scraping (
APIFY_API_TOKENin backend env) - Celery worker for long-running scrape jobs