Skip to main content
PUT
https://api.mailgreet.com
/
api
/
v1
/
external
/
subscribers
/
{subscriberId}
curl -X PUT "https://api.mailgreet.com/api/v1/external/subscribers/550e8400-e29b-41d4-a716-446655440000" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "first_name": "Jane",
    "last_name": "Smith",
    "phone": "+0987654321",
    "custom_fields": {
      "company": "New Company Inc",
      "role": "CEO"
    }
  }'
{
  "success": true,
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "email": "john@example.com",
    "first_name": "Jane",
    "last_name": "Smith",
    "phone": "+0987654321",
    "status": "active",
    "custom_fields": {
      "company": "New Company Inc",
      "role": "CEO"
    },
    "updated_at": "2026-01-18T14:00:00Z"
  }
}

Overview

Update a subscriber’s profile information including their name, phone number, status, custom fields, and group memberships. Only include the fields you want to update.

Authentication

Authorization
string
required
Bearer token. Format: Bearer YOUR_API_KEY

Path Parameters

subscriberId
string
required
The unique identifier (UUID) of the subscriber to update.Example: 550e8400-e29b-41d4-a716-446655440000

Request Body

Only include the fields you want to update. Unspecified fields will remain unchanged.
first_name
string
Updated first name.
last_name
string
Updated last name.
phone
string
Updated phone number.
status
string
Updated status. Options:
  • active - Subscriber can receive emails
  • unsubscribed - Subscriber has opted out
group_ids
array
Array of group UUIDs. This will replace all current group memberships.
custom_fields
object
Object containing custom field key-value pairs. Merges with existing custom fields.

Response

success
boolean
Indicates if the update was successful
data
object
The updated subscriber object
curl -X PUT "https://api.mailgreet.com/api/v1/external/subscribers/550e8400-e29b-41d4-a716-446655440000" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "first_name": "Jane",
    "last_name": "Smith",
    "phone": "+0987654321",
    "custom_fields": {
      "company": "New Company Inc",
      "role": "CEO"
    }
  }'
{
  "success": true,
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "email": "john@example.com",
    "first_name": "Jane",
    "last_name": "Smith",
    "phone": "+0987654321",
    "status": "active",
    "custom_fields": {
      "company": "New Company Inc",
      "role": "CEO"
    },
    "updated_at": "2026-01-18T14:00:00Z"
  }
}

Examples

Unsubscribe a Subscriber

curl -X PUT "https://api.mailgreet.com/api/v1/external/subscribers/550e8400-e29b-41d4-a716-446655440000" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"status": "unsubscribed"}'

Add to Groups

curl -X PUT "https://api.mailgreet.com/api/v1/external/subscribers/550e8400-e29b-41d4-a716-446655440000" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "group_ids": [
      "group-uuid-1",
      "group-uuid-2"
    ]
  }'
Setting group_ids will replace all current group memberships. To add a subscriber to additional groups without removing existing ones, first fetch the current groups and include them in the array.