List replies
Most recent replies, bounces, out-of-office notes and unsubscribes with the message text.
GET https://cotlet.dev/api/v1/mailshake/replies
Returns the newest replies to your sent emails, 25 to a page, newest first. type tells a real reply from a bounce, an out-of-office note, an unsubscribe or a delay notification; pass reply_type reply to get only real replies. Each item carries the plain-text body, the campaign and the recipient. recipient_email_address also matches part of an address, so a domain finds everyone at that company.
Parameters
| Name | Type | Description |
|---|---|---|
| reply_type enum | enum | reply, bounce, out-of-office, unsubscribe or delay-notification. Default: all types. |
| campaign_id integer | integer | Only replies in this campaign. |
| recipient_email_address string | string | An address, or part of one such as a domain. |
| per_page integer | integer | 1 to 25. Default: 25. |
| next_token string | string | Next page token from the previous call. |
Request
curl https://cotlet.dev/api/v1/mailshake/replies \
-H "Authorization: Bearer $COTLET_API_KEY" result = client.call("mailshake", "list_replies") const result = await cotlet.call('mailshake', 'list_replies'); cotlet call mailshake list_replies Example response
{
"results": [
{
"reply_id": 88140,
"type": "reply",
"action_date": "2026-10-21T14:12:00.000Z",
"recipient": {
"id": 771204,
"email_address": "dana@brightpath.example",
"full_name": "Dana Whitfield"
},
"campaign": {
"id": 4821,
"title": "Agency outreach Q4"
},
"subject": "Re: Quick question about your client reporting",
"body": "Hi Sam, we are open to a call. What does pricing look like?"
}
],
"next_token": null
}