> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sequenzy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Resend to Non-Openers

> Create a draft resend to subscribers who didn't open a sent campaign

Create a draft that resends a sent campaign to everyone in the same audience who didn't open it. The draft copies the campaign email and reuses the original audience with a "didn't open this campaign" rule added, so only people who haven't opened it yet are targeted.

This is only available 6 hours after the campaign finishes sending, which gives opens time to register. The response includes an estimate of how many subscribers haven't opened the original. The new draft is not sent automatically - review it, then schedule or send it.

## Request

<ParamField path="campaignId" type="string" required>
  ID of the sent campaign to resend to non-openers.
</ParamField>

```bash theme={null}
curl -X POST "https://api.sequenzy.com/api/v1/campaigns/camp_abc123/resend-to-non-openers" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## Responses

<ResponseExample>
  ```json 200 theme={null}
  {
    "success": true,
    "campaign": {
      "id": "camp_new123",
      "name": "April Launch (Non-openers)",
      "subject": "A quick update",
      "status": "draft",
      "labels": [],
      "emailId": "email_new123",
      "scheduledAt": null,
      "sentAt": null,
      "createdAt": "2026-06-11T10:00:00.000Z",
      "url": "https://sequenzy.com/dashboard/company/comp_abc123/campaign/camp_new123",
      "previewUrl": "https://sequenzy.com/dashboard/company/comp_abc123/campaign/camp_new123?step=review"
    },
    "estimatedNonOpenerCount": 842
  }
  ```

  ```json 400 theme={null}
  {
    "error": "Resending to non-openers is only available 6 hours after a campaign finishes sending."
  }
  ```

  ```json 401 theme={null}
  {
    "error": "Invalid API key"
  }
  ```

  ```json 404 theme={null}
  {
    "error": "Campaign not found"
  }
  ```

  ```json 500 theme={null}
  {
    "error": "Failed to create non-opener resend"
  }
  ```
</ResponseExample>
