Skip to main content

Resubscribe Contact

Reverse a contact's unsubscribe, making them mailable again.

This undoes an account-wide opt-out: the contact's status returns to subscribed and subscription.is_unsubscribed becomes false.

The request is idempotent — resubscribing a contact that is already subscribed returns 200 with the same state.

Resubscribing does not clear a suppression. A contact that is undeliverable — for example after a permanent bounce or a spam complaint — keeps status: "suppressed" and deliverability.is_suppressed: true, and stays held back from sending, because consent and deliverability are tracked separately. After resubscribing, check deliverability.is_suppressed in the response: if it is still true, the contact remains unmailable and resubscribing alone will not change that.

Request

POST /contacts/{uuid}/resubscribe

This endpoint takes no request body.

Path Parameters

ParameterTypeDescription
uuidstringContact's UUID

Example Request

curl -X POST "https://email.easy.tools/api/v1/contacts/550e8400-e29b-41d4-a716-446655440000/resubscribe" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"

Response

Success Response (200 OK)

Returns the full contact, identical in shape to Get Contact. A contact that was only unsubscribed comes back with status subscribed; a contact that is also suppressed stays suppressed.

{
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"email": "john@example.com",
"first_name": "John",
"last_name": "Doe",
"phone": "+48123456789",
"external_id": "customer_123",
"language": "en",
"country_code": "US",
"lists": [
{
"uuid": "a3f1c5d2-7e84-4b9f-8c63-1d0e2f3a4b5c",
"name": "Newsletter"
}
],
"custom_fields": [],
"status": "subscribed",
"subscription": {
"is_unsubscribed": false,
"unsubscribed_at": null
},
"deliverability": {
"is_suppressed": false,
"suppressed_at": null,
"is_bounced": false,
"last_bounce_type": null,
"last_bounced_at": null,
"is_complained": false,
"last_complained_at": null
},
"engagement": {
"last_sent_at": "2026-06-20T08:00:00Z",
"last_opened_at": "2026-06-21T19:03:00Z",
"last_clicked_at": null
},
"created_at": "2025-01-15T10:30:00Z",
"updated_at": "2025-01-15T10:30:00Z"
}
}

See Get Contact for the full field reference.

Error Responses

Not Found Error (404)

{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Contact with UUID '550e8400-e29b-41d4-a716-446655440000' not found"
}
}