List mailing lists
List the mailing lists in your wemail workspace: each list has its own address, expands to its members on send and produces one event stream per recipient.
Mailing lists let you address a group of recipients by a single email — wemail expands the list on send and produces one event stream per member. This endpoint returns every list in the workspace.
How mailing lists work
A mailing list is an address you own — for example team@mail.acme.io — plus a set of members. Sending to the list address is a normal POST /v3/messages; wemail expands it at accept time into one message per member, each with its own id, its own events and its own one-click unsubscribe header. Members who are on a suppression list are skipped, and a member who unsubscribes leaves the list's mail without affecting the others. Lists are workspace-scoped and visible to every API key in the workspace.
Endpoints in this section
GET /v3/lists lists mailing lists (this page). POST /v3/lists creates one with its address. GET /v3/lists/{id}/members pages through members; POST /v3/lists/{id}/members adds a member and DELETE /v3/lists/{id}/members/{email} removes one. Suppression endpoints in the same section decide who may receive list mail at all.
GET /v3/lists
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | Optional | Page number, starting at 1. Default 1. |
per_page | integer | Optional | Lists per page, 1–100. Default 25. |
Responses
| Status | Description |
|---|---|
200 | OK. A page of your mailing lists (id, address, name, description, member_count), oldest first. |
401 | Missing or invalid API key. |
Code examples
curl https://api.wemail.io/v3/lists \
-H "Authorization: Bearer afn_live_…"const res = await fetch("https://api.wemail.io/v3/lists", {
headers: {
Authorization: `Bearer ${process.env.WEMAIL_API_KEY}`,
},
});
const data = await res.json();import os, requests
r = requests.get(
"https://api.wemail.io/v3/lists",
headers={"Authorization": f"Bearer {os.environ['WEMAIL_API_KEY']}"},
)
data = r.json()