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

ParameterTypeRequiredDescription
pageintegerOptionalPage number, starting at 1. Default 1.
per_pageintegerOptionalLists per page, 1–100. Default 25.

Responses

StatusDescription
200OK. A page of your mailing lists (id, address, name, description, member_count), oldest first.
401Missing or invalid API key.

Code examples

cURL
curl https://api.wemail.io/v3/lists \
  -H "Authorization: Bearer afn_live_…"
Node.js
const res = await fetch("https://api.wemail.io/v3/lists", {
  headers: {
    Authorization: `Bearer ${process.env.WEMAIL_API_KEY}`,
  },
});
const data = await res.json();
Python
import os, requests

r = requests.get(
    "https://api.wemail.io/v3/lists",
    headers={"Authorization": f"Bearer {os.environ['WEMAIL_API_KEY']}"},
)
data = r.json()