Campaigns
List campaigns
Lists campaigns in the authenticated account. Results are paginated and can optionally include soft-deleted campaigns.
GET
/v1/campaignsAuthorization
bearerAuth AuthorizationBearer <token>
Use an account API key in the Authorization header: Authorization: Bearer f_....
In: header
Query Parameters
limit?integer
Number of rows to return. Defaults to 20; maximum 100.
Range
0 <= value <= 100Default
20offset?integer
Zero-based offset for pagination.
Range
0 <= valueDefault
0q?string
Case-insensitive prefix search across thread subject, participants, lead name/email/company, campaign name, thread tags, and message bodies (min 2 characters).
status?string
Campaign status filter.
Value in
- "draft"
- "scheduled"
- "running"
- "paused"
- "stopped"
tag_ids?string
Comma-separated campaign tag ids. Returns campaigns that have any of the listed tags.
include_deleted?boolean
When true, includes campaigns with deleted_at set.
Default
falsecurl -X GET "https://example.com/v1/campaigns"{ "data": [ { "id": "1d8dc901-3d2d-4d9f-9dcc-4f8b3aa1a1fb", "name": "Q2 Pipeline", "status": "running", "source": "manual", "created_at": "2026-05-21T18:00:00.000Z" } ], "limit": 20, "offset": 0, "total_count": 1}{ "error": { "type": "authentication_error", "code": "invalid_api_key", "message": "A valid Furnace API key is required" }}{ "error": { "type": "rate_limit_error", "code": "rate_limit_exceeded", "message": "Rate limit exceeded for this account" }}{ "error": { "type": "api_error", "code": "internal_error", "message": "Internal server error" }}