[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Resend a Privy email to people who did not open it

> Build the Did not open segment, copy the email with a new subject and schedule the resend 2 to 3 days after the first send in Privy. Hosted.

Source: https://cotlet.dev/integrations/privy-api-mcp-server/resend-campaign-to-non-openers

Your sale email went out on Tuesday and most of the list never opened it. The resend that could win them back needs a segment, a copy of the email and a new subject, and it is easy to skip.

Cotlet does it in your own Privy account with list\_campaigns, create\_segment, duplicate\_campaign and send\_email\_campaign, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=privy) [All Privy tools](https://cotlet.dev/integrations/privy-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can Privy do this on its own?

Privy's API and read-only MCP list campaigns and segments but create neither (checked 23 Oct 2026). Privy's help center describes the resend as a manual routine: build the segment, duplicate the email, change the subject and schedule it.

## How you do it in Privy today

1. Open Contacts > Segments, click Create Segment, name it, pick Did not open > a campaign in the Choose category dropdown, select the campaign and click Create.
2. The dropdown lists campaigns by name, not subject line, so a campaign with a vague name is renamed first: open it under Campaigns and edit the name in the upper left.
3. In Campaigns, open the menu beside the original email, choose Duplicate, and in the To field select the new segment.
4. Change the subject line. Privy's guide suggests lines such as "In case you missed it:".
5. Send or schedule the copy 2 to 3 days after the original, not within 24 hours and not after more than a week.

## How to resend a Privy email to people who did not open it

Prompt

```
Find the October sale email, make a segment of contacts who did not open it, copy the email with the subject "In case you missed it: our October sale", and schedule it for Thursday at 10:00.
```

1. 01  
### Find the original and check its age  
Your agent reads list\_campaigns with status sent and matches the title and send date. If it went out less than 24 hours ago or more than a week ago, the agent stops and tells you, because Privy advises a resend 2 to 3 days later.
2. 02  
### Build the segment  
create\_segment adds one condition, Email Engagement, Did not open, with the exact campaign name. Privy cannot edit conditions later, so the agent checks the name against list\_campaigns first and reports the mailable\_count it gets back.
3. 03  
### Copy the email  
duplicate\_campaign copies the design, sets the new subject and points the To field at the new segment. The copy stays a draft and reaches no one. The body is unchanged, which Privy says is fine, but you edit it in the Privy editor if the offer changed.
4. 04  
### Schedule it  
send\_email\_campaign sets the day and time from your prompt. You confirm the call by default, and the audience is fixed when you do.
5. 05  
### Report what is queued  
The agent returns the segment size, the new subject and the send time, so you can stop it with unschedule\_campaign before preparation starts.

### What you get back

Example data

```
Original: October sale announcement, sent Tue 20 Oct, 4820 delivered, 1930 opened
Segment: Did not open October sale, 2890 mailable
Draft: October sale resend, subject "In case you missed it: our October sale"
Scheduled for Thu 22 Oct, 10:00, after your OK
```

### Other ways to ask

- Resend last week's newsletter to non-openers on Monday morning, only if it was sent 2 or 3 days ago.
- Make the Did not open segment for my last 3 campaigns, but do not copy or send anything.
- Resend to non-openers and exclude the Current Customers smart segment.

## What Privy allows, and what to know first

- A Privy segment is dynamic: contacts join and leave as they meet its conditions, but the audience of a campaign is fixed when you approve the send.
- Privy cannot edit the conditions of a segment after it is created, so a wrong campaign name means a new segment.
- Privy tracks opens with an invisible image and counts no open when the recipient's client blocks images, so some people who read the email still land in Did not open.
- A contact who sits in more than one selected segment receives the email once.
- Privy warns against retargeting unengaged contacts after every campaign and recommends the resend for big sales, drops and brand updates.

send\_email\_campaign asks for your OK by default. To run it on a schedule without you, switch confirmation off for that tool in your dashboard.

Sources: [Privy Help: Resend an Unopened Campaign](https://help.privy.com/docs/guides/segmentation/resend-an-unopened-campaign.md) · [Privy Help: Use Custom and Smart Segments](https://help.privy.com/docs/learn/email-campaigns/segmentation.md) · [Privy Help: Review Email Performance](https://help.privy.com/docs/learn/email-campaigns/email-campaign-reporting.md) · [Privy Help: Send an Email Campaign](https://help.privy.com/docs/learn/email-campaigns/send-an-email-campaign.md)

## Call duplicate\_campaign from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/privy/campaigns/cmp_41c8/duplicate \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"October sale resend","subject_line":"In case you missed it: our October sale","segment_ids":["seg_7d20"]}'
```

Example response

```
{
"campaign_id": "cmp_5b92",
"title": "October sale resend",
"status": "draft",
"copied_from": "cmp_41c8",
"subject_line": "In case you missed it: our October sale",
"audience": {
"included_segments": [
"Did not open October sale"
],
"excluded_segments": []
}
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is privy\_write → duplicate\_campaign. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/privy-api-mcp-server.md#automations)

## Privy tools this automation uses

__Cotlet Privy tools used to resend a Privy email to people who did not open it__
| Tool | Parameters |
| --------------------- | ---------------------------------------------------------------------- |
| list\_campaigns | status, channel, page, per\_page |
| create\_segment | name, match, conditions |
| duplicate\_campaign | campaign\_id, name, subject\_line, segment\_ids, exclude\_segment\_ids |
| send\_email\_campaign | campaign\_id, send\_at, recipient\_timezone |

[All 13 Privy tools with descriptions](https://cotlet.dev/integrations/privy-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect Privy to Cotlet?

Yes. You sign in to Privy yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Privy 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.

## More Privy automations

- [Schedule a weekly Privy email campaign](https://cotlet.dev/integrations/privy-api-mcp-server/schedule-weekly-email-campaign.md)
- [Pause low-converting Privy popups](https://cotlet.dev/integrations/privy-api-mcp-server/pause-low-converting-popups.md)
- [Privy API and MCP server: every tool](https://cotlet.dev/integrations/privy-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to Privy.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Privy.

[Sign up free](https://cotlet.dev/app/signup?app=privy)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet.dev is built by Bart Krawczyk and Jake Slugocki, the founders of Take Group sp. z o.o., ul. Wincentego Janasa 4, 40-855 Katowice, Poland. KRS 0000871398, NIP 6342984273, VAT EU: PL6342984273. [About us](https://cotlet.dev/about.md)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.
