Skip to main content
GET
https://api.mailgreet.com
/
api
/
v1
/
external
/
subscribers
curl -X GET "https://api.mailgreet.com/api/v1/external/subscribers?page=1&per_page=20&status=active" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "data": {
    "subscribers": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "email": "john@example.com",
        "first_name": "John",
        "last_name": "Doe",
        "status": "active",
        "created_at": "2026-01-13T12:00:00Z"
      },
      {
        "id": "660e8400-e29b-41d4-a716-446655440001",
        "email": "jane@example.com",
        "first_name": "Jane",
        "last_name": "Smith",
        "status": "active",
        "created_at": "2026-01-13T12:00:00Z"
      }
    ],
    "pagination": {
      "current_page": 1,
      "total_pages": 5,
      "total_count": 100,
      "per_page": 20
    }
  }
}

Overview

Retrieve a paginated list of all subscribers in your MailGreet account. Use query parameters to filter, search, and paginate the results.

Authentication

Authorization
string
required
Bearer token. Format: Bearer YOUR_API_KEY

Query Parameters

page
integer
default:"1"
Page number for pagination.
per_page
integer
default:"20"
Number of items per page. Maximum: 100.
status
string
Filter subscribers by status. Options:
  • active - Active subscribers
  • unsubscribed - Unsubscribed subscribers
  • bounced - Bounced email addresses
  • complained - Subscribers who marked emails as spam
Search by email address, first name, or last name. Case-insensitive.
group_id
string
Filter subscribers by group ID (UUID format).

Response

success
boolean
Indicates if the request was successful
data
object
curl -X GET "https://api.mailgreet.com/api/v1/external/subscribers?page=1&per_page=20&status=active" \
  -H "Authorization: Bearer YOUR_API_KEY"
{
  "success": true,
  "data": {
    "subscribers": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "email": "john@example.com",
        "first_name": "John",
        "last_name": "Doe",
        "status": "active",
        "created_at": "2026-01-13T12:00:00Z"
      },
      {
        "id": "660e8400-e29b-41d4-a716-446655440001",
        "email": "jane@example.com",
        "first_name": "Jane",
        "last_name": "Smith",
        "status": "active",
        "created_at": "2026-01-13T12:00:00Z"
      }
    ],
    "pagination": {
      "current_page": 1,
      "total_pages": 5,
      "total_count": 100,
      "per_page": 20
    }
  }
}

Examples

Search for Subscribers

curl -X GET "https://api.mailgreet.com/api/v1/external/subscribers?search=john" \
  -H "Authorization: Bearer YOUR_API_KEY"

Get Subscribers in a Group

curl -X GET "https://api.mailgreet.com/api/v1/external/subscribers?group_id=550e8400-e29b-41d4-a716-446655440000" \
  -H "Authorization: Bearer YOUR_API_KEY"

Paginate Through All Subscribers

async function getAllSubscribers() {
  let allSubscribers = [];
  let page = 1;
  let hasMore = true;

  while (hasMore) {
    const response = await fetch(
      `https://api.mailgreet.com/api/v1/external/subscribers?page=${page}&per_page=100`,
      {
        headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
      }
    );
    
    const data = await response.json();
    allSubscribers = allSubscribers.concat(data.data.subscribers);
    
    hasMore = page < data.data.pagination.total_pages;
    page++;
  }

  return allSubscribers;
}