GET/activity
Workspace activity feed. 0 credits. Rate class: global. Not a full inbox — prefer type=reply_received for “last reply”. Feed may be empty until outreach events exist for the workspace.
Request
GET /activity?type=reply_received&limit=10
X-API-Key: sk_live_...
| Query | Required | Notes |
|---|---|---|
type | No | email_sent | follow_up_sent | reply_received | agent_replied | lead_excluded |
limit | No | 1–100, default 50 |
cursor | No | Opaque pagination cursor — reuse only with the same type filter |
Unfiltered lists only return the public types above.
Response
{
"events": [
{
"id": "evt_abc",
"type": "reply_received",
"timestamp": "2026-09-01T15:04:05.000Z",
"leadId": "lead_abc",
"leadName": "Jane Doe",
"companyName": "Acme Dental",
"campaignId": "search-xyz",
"messagePreview": "Thanks — can we talk Thursday?",
"handOffReason": null
}
],
"nextCursor": null
}
| Field | Type | Notes |
|---|---|---|
id | string | Event id |
type | string | Public allowlist only |
timestamp | string | ISO-8601 |
leadId | string | null | |
leadName | string | null | |
companyName | string | null | |
campaignId | string | null | |
messagePreview | string | null | ≤80 chars |
handOffReason | string | null |
Errors
| Error code | When |
|---|---|
validation_error | Bad type, or invalid / mismatched cursor (cursor must match the same type filter) |
Related
- Sampled insights: GET /insights/overview
- Leads waiting on you: GET …/leads?needsReply=true
MCP
Tool: get_recent_activity.