How to Manage Subscribers Using the Icegram Express REST API
ProProgrammatically add, update, and manage subscriber records using the authenticated Icegram Express REST API endpoints.
The Icegram Express REST API enables developers to programmatically create, query, update, and delete subscribers and list memberships from custom external apps, CRMs, or server scripts.
1. Generate a REST API Key
- In your WordPress admin, navigate to Icegram Express > Settings > REST API.
- Select an Administrator user account from the dropdown.
- Click Generate new key.
- Copy and store your secret REST API Key safely.

2. API Endpoint & Headers
The standard REST API endpoint is:
https://example.com/wp-json/email-subscribers/v1/subscribers
Every request must include the following headers for authentication:
Content-Type:application/jsonusername: Your WordPress admin usernamepassword: Your generated REST API Key
3. API Operations
A. Add a New Subscriber (POST)
Endpoint: POST /wp-json/email-subscribers/v1/subscribers
Payload:
{
"email": "alex@example.com",
"first_name": "Alex",
"last_name": "Taylor",
"list_ids": [1, 2],
"list_status": "subscribed"
}
Example cURL Request:
curl --request POST "https://example.com/wp-json/email-subscribers/v1/subscribers" \
--header "Content-Type: application/json" \
--header "username: admin" \
--header "password: YOUR_API_KEY" \
--data '{
"email": "alex@example.com",
"first_name": "Alex",
"last_name": "Taylor",
"list_ids": [1],
"list_status": "subscribed"
}'

B. Update an Existing Subscriber (PUT)
Endpoint: PUT /wp-json/email-subscribers/v1/subscribers
Payload:
{
"contact_id": 42,
"first_name": "Alexander",
"last_name": "Taylor",
"list_ids": [1, 3],
"list_status": "subscribed"
}

C. Delete a Subscriber (DELETE)
Endpoint: DELETE /wp-json/email-subscribers/v1/subscribers
Payload:
{
"contact_id": 42
}
