Skip to main content
GET
/
api
/
campaigns
List Campaigns
curl --request GET \
  --url https://app.puffle.ai/api/campaigns \
  --header 'Authorization: Bearer <token>'
{
  "campaigns": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "name": "<string>",
      "daily_limit": 4503599627370495,
      "stop_on_reply": true,
      "open_tracking": true,
      "signature": "<string>",
      "skip_other_campaigns": true,
      "operating_hours": {},
      "stats": {
        "total": 4503599627370495,
        "sent": 4503599627370495,
        "replied": 4503599627370495,
        "bounced": 4503599627370495,
        "completed": 4503599627370495,
        "timed_out": 4503599627370495,
        "connection_sent": 4503599627370495,
        "connected": 4503599627370495,
        "message_sent": 4503599627370495,
        "contacted": 4503599627370495
      },
      "created_at": "2023-11-07T05:31:56Z",
      "updated_at": "2023-11-07T05:31:56Z",
      "sender_accounts": [
        {
          "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "email_address": "<string>",
          "provider_account_id": "<string>",
          "display_name": "<string>",
          "status": "<string>",
          "first_name": "<string>",
          "last_name": "<string>",
          "daily_limit": 4503599627370495,
          "weekly_connection_limit": 4503599627370495,
          "weekly_message_limit": 4503599627370495,
          "is_premium": true
        }
      ],
      "node_count": 4503599627370495
    }
  ]
}
CLI:
puffle campaign

Overview

Returns every campaign owned by the caller, sorted so active and paused campaigns appear before drafts and completed campaigns. Each item includes status, stats, flattened sender accounts, and node_count. Use this as the campaign index for dashboards, agent boot checks, and campaign selection flows.

AI agent notes

An empty campaigns array is a valid state. To inspect sequence nodes, detailed campaign settings, or lead-level progress, call Get campaign or the relevant child endpoint for the selected campaign. Do not infer sender readiness from this endpoint alone; use List Senders or Get senders for campaign when planning sends.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Response

Array of caller-owned campaigns.

campaigns
object[]
required