Mailjet logo Mailjet automation

Resend a Mailjet campaign to non-openers

Your newsletter went out on Wednesday and a large share of the list never opened it. A resend means a segment, a copy of the campaign, a new subject and a schedule, all clicked through in the Dashboard.

Cotlet does it in your own Mailjet account with get_campaign_report, create_segment, duplicate_campaign, update_campaign, set_campaign_recipients and schedule_campaign, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Can Mailjet do this on its own?

Mailjet's guides describe the Dashboard route above and no automatic resend to non-openers (checked 22 Oct 2026). The REST API has endpoints for segments, drafts, scheduling and sending, so a script can do it. The official MCP server is read-only: it can show the open numbers but cannot build the segment or send the resend.

How you do it in Mailjet today

  1. Open Campaigns, click the campaign name and read the Overview tab to see how many contacts opened and clicked.
  2. Go to Contacts, then Segmentation, click Create a segment, name it and add the filter "Not opened the campaign" for that campaign.
  3. Add the filter "Is subscribed to list" for your newsletter list and combine both with AND, so the segment holds only current subscribers.
  4. Back on Campaigns, open the Sent tab, click the cogwheel icon next to the campaign and choose Duplicate. Mailjet opens the Campaign Details page of the copy.
  5. On that page change the subject, pick the contact list, choose "Only send to a segment", select your segment and click "Calculate number of contacts" to check the count.
  6. Click Review & Send and schedule it. A scheduled campaign cannot be edited, so a typo means cancelling it and scheduling again.

How to resend a Mailjet campaign to non-openers

Prompt

In Mailjet, check how the "Autumn offer" campaign did. Make a segment of everyone on the Newsletter list who did not open it, duplicate the campaign with the subject "Last chance: Autumn offer", send it to that segment and schedule it for Monday 8:00 London time.
  1. 01

    Read the first send

    get_campaign_report returns what was delivered, opened and clicked, and how many emails blocked or bounced. A campaign sent a few hours ago still collects opens, so the agent says how old the send is and asks whether to wait.

  2. 02

    Build the segment with two filters

    create_segment gets match "all" with the filters "not opened the campaign" and "subscribed to list", and the list_id so Mailjet counts the matching contacts. The agent adds the subscribed filter every time, so people who unsubscribed since the first send stay out.

  3. 03

    Copy the campaign and change what must differ

    duplicate_campaign makes a draft from the sent campaign and update_campaign sets the new subject. The agent leaves the design alone, so the resend looks like the original.

  4. 04

    Aim the draft at the segment

    set_campaign_recipients picks the list and the segment, the same as "Only send to a segment" in the Dashboard. Nothing is sent yet.

  5. 05

    Schedule it with your OK

    schedule_campaign takes the date and time from your prompt, with the offset of your time zone. It reaches your contacts, so it waits for your OK by default.

What you get back

Example data

Autumn offer (sent Oct 14): 1,840 delivered, 702 opened, 96 clicked
Segment "Did not open: Autumn offer" created, 1,121 contacts match
Draft "Autumn offer, last chance" created from the original, subject "Last chance: Autumn offer"
Recipients: list Newsletter, segment "Did not open: Autumn offer"
Scheduled for Mon Oct 26, 08:00 (UTC+00:00) after your OK

Other ways to ask

  • Resend the Monday newsletter to everyone who did not click, with the subject "Did you see this?".
  • Do the same for every campaign from the last 7 days, but only create the drafts and schedule nothing.
  • Create the segment "Did not open: Autumn offer" and stop, I will review it in the Dashboard.
  • Every Friday, look at the newsletter sent on Wednesday and queue a resend to non-openers for Monday 8:00.

What Mailjet allows, and what to know first

  • Mailjet recalculates a segment at send time, so a contact who opens the first email before the resend goes out drops out of the audience.
  • Segmentation is included in the Essential, Premium and Custom plans, and not in Free or Starter.
  • The "not opened" filters need open tracking switched on in your Mailjet account settings.
  • Mailjet updates the Activity tabs of campaign statistics only during the first 7 days after the send.
  • Mailjet schedules a campaign up to 60 days ahead and does not let you edit it once scheduled.

schedule_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: Mailjet Help: Segmentation guide · Mailjet Help: Campaign Stats & Dashboard · Mailjet Help: How to copy or duplicate a campaign · Mailjet Help: Creating and sending your first campaign

Call create_segment from a script

curl

curl -X POST https://cotlet.dev/api/v1/mailjet/segments \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Did not open: Autumn offer","match":"all","conditions":[{"type":"campaign_not_opened","value":7164820931},{"type":"subscribed_to_list","value":10234567}],"list_id":10234567}'

Example response

{
  "segment_id": 2938471,
  "name": "Did not open: Autumn offer",
  "match": "all",
  "conditions": 2,
  "matching_contacts": 1121,
  "list_id": 10234567
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is mailjet_write → create_segment. Example data.

Schedule it in n8n, Make, Zapier or cron

Mailjet tools this automation uses

Cotlet Mailjet tools used to resend a Mailjet campaign to non-openers
Tool Parameters
get_campaign_report campaign_id
create_segment name, match, conditions, list_id
duplicate_campaign campaign_id, name
update_campaign campaign_id, name, subject, sender_name, sender_email
set_campaign_recipients campaign_id, list_id, segment
schedule_campaign campaign_id, send_at
All 14 Mailjet tools with descriptions

Frequently asked questions

Is a "not opened" segment a clean list to resend to?

It is a good first guess, not a clean one. Open tracking depends on the recipient loading images, so some people who read the email count as non-openers. Mailjet recalculates the segment at send time, so the audience can still shrink between scheduling and sending.

Is it safe to connect Mailjet to Cotlet?

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

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