Constant Contact automation
Build a re-engagement list from Constant Contact non-openers
Contacts who never open your emails pull your open rate down, and every contact counts toward your plan. Before you remove anyone, you want one last email that goes only to them.
Cotlet does it in your own Constant Contact account with list_emails, list_email_contacts, get_contact, list_lists, create_list and add_contacts_to_list, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Can Constant Contact do this on its own?
Constant Contact has a Did not open report per email, and segments that can filter on email activity and be saved to a list, for Account Owners and Account Managers (checked 22 Oct 2026). The v3 API has a did-not-open tracking report per email and a bulk add to a list. Nothing joins several emails into one non-opener list, and the official MCP server (beta) is built for transactional email.
How you do it in Constant Contact today
- Go to Channels > Emails, set Status to Sent, click the three dots on an email and choose Reporting.
- Click the linked Did not open number to see the contacts who were sent the email and did not open it.
- Repeat for each recent email, because the report covers one email at a time, and note who shows up in all of them.
- In Contacts, select those people and use the Actions menu to add them to a list made for this send.
- To target by activity without lists, Contacts > Segments can filter on email activity, but a segment is evaluated again at send time, so the group can change before your email goes out.
How to build a re-engagement list from Constant Contact non-openers
Find contacts who did not open any of my last 3 sent emails, put them in a new list called Re-engage Oct 2026 and tell me how many there are. - 01
Pick the emails
list_emails with status sent gives the sends; the agent takes the last 3, or the ones inside the window you named.
- 02
Collect non-openers per email
list_email_contacts with type did_not_open returns one page per call; the agent follows the cursor to the end for each email and keeps only contact IDs that appear in every one.
- 03
Drop who should not get a send
get_contact checks each candidate. Anyone whose permission_to_send is unsubscribed, or who already sits in the target list, is skipped, so you never mail someone who opted out.
- 04
Make or reuse the list
list_lists shows whether Re-engage Oct 2026 exists. If not, create_list makes it, because a list needs a unique name; if it exists, the agent reuses it and does not create a second.
- 05
Add in batches
add_contacts_to_list takes up to 500 contact IDs per call, so 1,300 contacts go in three calls. Each call waits for your OK by default, because adding contacts can move your account into a higher contact tier and puts them on any email scheduled to that list.
What you get back
Sent emails checked: 3 (October newsletter, Webinar invite, Flash sale)
Did not open all 3: 212 contacts
Skipped 9 (unsubscribed) and 4 (already in the list)
Added 199 to Re-engage Oct 2026 Other ways to ask
- Use only emails sent in the last 60 days and skip anyone who clicked a link in any of them.
- Add contacts who did not open the last 3 emails to the existing list Win-back and tell me the new list size.
- List the non-openers but do not add anyone, so I can read the names first.
What Constant Contact allows, and what to know first
- A Constant Contact account holds up to 1,000 lists, and a contact can belong to up to 50 lists.
- Creating a list needs a name no other list has.
- One bulk add takes up to 500 contact IDs, so large groups go in several calls.
- Segments are for Account Owners and Account Managers, and a segment assigned to a campaign is evaluated when the campaign is scheduled to send.
- Constant Contact warns that an Account Manager who adds enough contacts can move the account into a higher contact tier and raise the invoice.
add_contacts_to_list asks for your OK by default. To run it on a schedule without you, switch confirmation off for that tool in your dashboard.
Sources: Constant Contact Help: View the details and reporting for a sent email · Constant Contact developers: Contact lists overview · Constant Contact developers: Segments overview · Constant Contact Help: Add and manage users in your account
Call add_contacts_to_list from a script
curl -X POST https://cotlet.dev/api/v1/constant-contact/lists/9d2e4b7a-1c3f-4a58-b6e0-7f8a2c5d1e90/contacts-to-lists \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"contact_ids":["c1a2b3d4-0001-4e5f-8a9b-1c2d3e4f5a01","c1a2b3d4-0002-4e5f-8a9b-1c2d3e4f5a02","c1a2b3d4-0003-4e5f-8a9b-1c2d3e4f5a03"]}' {
"list_id": "9d2e4b7a-1c3f-4a58-b6e0-7f8a2c5d1e90",
"requested": 3,
"added": 3
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is constant_contact_write → add_contacts_to_list. Example data.
Schedule it in n8n, Make, Zapier or cronConstant Contact tools this automation uses
| Tool | Parameters |
|---|---|
| list_emails | status, limit, cursor |
| list_email_contacts | email_id, type, limit, cursor |
| get_contact | contact_id |
| list_lists | limit, cursor |
| create_list | name, description |
| add_contacts_to_list | list_id, contact_ids, segment_id |
Frequently asked questions
Is it safe to connect Constant Contact to Cotlet?
Yes. You sign in to Constant Contact yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Constant Contact once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.
Give your agent access to Constant Contact.
Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Constant Contact.