---
title: "Bulk Resubscribe Users"
method: POST
path: "/emails/v1.0/bulk-resubscribe"
tags: ["Resubscribe"]
---

# Bulk Resubscribe Users

`POST /emails/v1.0/bulk-resubscribe`

## Request

- Base URL: `https://api-01.moengage.com`
- URL: `https://api-01.moengage.com/emails/v1.0/bulk-resubscribe`
- Auth: HTTP basic
- TypeScript: <https://skmtc.dev/moengage/apis/moengage-email-subscription-management-apis/docs/emails/v1.0/bulk-resubscribe/post.ts> (a function with typed inputs; its response is checked against the schema)

This API resubscribes users who have previously unsubscribed on the MoEngage platform and an external email vendor platform simultaneously. This API resets the unsubscribe flag to “false” for users on MoEngage and makes a call to an External Service Provider (ESP) like SendGrid to remove the email addresses (associated with the unsubscribed users) from their suppression list.

## Headers

- `MOE-APPKEY` string, required
- `MOE-PROJECT-CODE` string

## Request body

- ResubscribeRequest
  - `recipients` string, required: This field contains the email ids of the users who have resubscribed. **Note:** If an email address matches multiple profiles, all the profiles will be marked as resubscribed on the MoEngage dashboard (the unsubscribe flag will be set to false for the user).
  - `customer_id` string: This field denotes the unique identifier used to identify a user in MoEngage. Note that devices can be created for existing users only.
  - `esp` string, required: This field contains information about the Email Service Provider (esp) whose suppression list needs to be updated. For example, “esp”: “SENDGRID” would imply that the email address of the customers who have resubscribed to your brand need to be removed from SendGrid’s suppression list.
  - `update_esp` boolean: This field’s default value is false when it is not sent in the request payload. MoEngage calls the ESP to remove the email addresses from their email suppression list when this field is true.
  - `request_id` string, required: This field contains the value of the identifier for the request.

## Response `202`

The request has been successfully submitted for asynchronous processing.

- ResubscribeSuccessResponse: Success response body for the Bulk Resubscribe API (202 Accepted).
  - `message` string: This field contains a brief description of the request status.
  - `response_id` string: This field contains the unique identifier for the response and is present in the response only when the request is successful.

## Other responses

- `400`: Bad Request. Returned for issues like missing mandatory fields (e.g., `recipients`), invalid format, too many recipients (>100), or invalid ESP settings.
- `401`: Authorization Failure. Returned for issues like `MOE-APPKEY` header mismatch with Basic Auth username, missing Basic Auth credentials, or invalid authentication type.
- `405`: Method Not Allowed. Returned when a method other than POST is used (e.g., GET).
- `415`: Unsupported Media Type. Returned when the `Content-Type` header is missing or invalid.
- `429`: Rate Limit Breach. The request rate has exceeded the limit of 10 RPM.
- `500`: Internal Server Error.

---

[API](https://skmtc.dev/moengage/apis/moengage-email-subscription-management-apis.md) - [All operations](https://skmtc.dev/moengage/apis/moengage-email-subscription-management-apis/llms.txt) - [OpenAPI document](https://skmtc.dev/moengage/apis/moengage-email-subscription-management-apis/revisions/d430419491a1?raw)
