List leads

Leads from Lead Catcher with status, campaign, recipient and who they are assigned to.

GET https://cotlet.dev/api/v1/mailshake/leads

read

Lists leads, 100 to a page. A lead is a recipient who replied, or who matched the capture rules of the campaign. status is open, won, lost or ignored. Open leads need handling. assigned_to is the teammate who owns the lead, by default the person the campaign is assigned to. Use lead_id in update_lead_status, assign_lead, reply_to_lead and move_leads_to_campaign.

Parameters

Parameters: list_leads
NameTypeDescription
campaign_id integer integer Only leads from this campaign.
status enum enum open, won, lost or ignored. Default: all.
assigned_to_email string string Only leads assigned to this teammate.
search string string Only leads matching this name or email address.
per_page integer integer 1 to 100. Default: 100.
next_token string string Next page token from the previous call.

Request

cURL
curl https://cotlet.dev/api/v1/mailshake/leads \
  -H "Authorization: Bearer $COTLET_API_KEY"
Python
result = client.call("mailshake", "list_leads")
Node.js
const result = await cotlet.call('mailshake', 'list_leads');
CLI
cotlet call mailshake list_leads

Example response

JSON

{
  "results": [
    {
      "lead_id": 5530,
      "status": "open",
      "created": "2026-10-21T14:12:00.000Z",
      "campaign": {
        "id": 4821,
        "title": "Agency outreach Q4"
      },
      "recipient": {
        "id": 771204,
        "email_address": "dana@brightpath.example",
        "full_name": "Dana Whitfield"
      },
      "assigned_to": "lucy@northwind.example"
    },
    {
      "lead_id": 5531,
      "status": "open",
      "created": "2026-10-21T16:40:00.000Z",
      "campaign": {
        "id": 4821,
        "title": "Agency outreach Q4"
      },
      "recipient": {
        "id": 771205,
        "email_address": "omar@lumenlabs.example",
        "full_name": "Omar Haddad"
      },
      "assigned_to": "lucy@northwind.example"
    }
  ],
  "next_token": null
}

Sign in once. Your agent does the rest.

Sign up and add the apps you need. Free 7-day trial with 2,000 credits, no card needed.