members.dev
Docs
Members

List Members

Lists Members

GET
/v1/members

Authorization

HTTPBearer
AuthorizationBearer <token>

In: header

Query Parameters

search?|

Search members by name, email, phone, external ID, or short_id.

group_id?array<>|

Return only members with an active membership in one or more groups. Provide the parameter multiple times for multiple groups.

product_id?array<>|

Return only members on a non-canceled, non-expired subscription for one or more products. Provide the parameter multiple times for multiple products.

status?array<>|

Filter by member status. Omit to return only active members. Provide the parameter multiple times for multiple statuses.

email?|

Case-insensitive exact match on member email.

external_id?|

Exact match on external_id.

country_code?|

Exact match on address country_code (ISO 3166-1 alpha-2).

city?|

Case-insensitive exact match on address city.

postal_code?|

Exact match on address postal_code.

administrative_area?|

Case-insensitive exact match on address administrative_area.

custom_fields?|

JSON object of custom field filters. Keys are definition keys; values are a shorthand equality/in operand or an operator object (eq, neq, in, nin, contains, gt, gte, lt, lte). Multiple keys are ANDed.

page?integer

Page number

Default1
Range1 <= value
size?integer

Page size

Default50
Range1 <= value <= 100

Header Parameters

Members-Context?string

Members organization id (org_…) when the client has multiple organizations.

Default""

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X GET "https://api.members.dev/v1/members"
{
  "items": [
    {
      "id": "member_01KKSMB47VYGW97GFE67VGDK7M",
      "short_id": "XF42",
      "name": "John Doe",
      "external_id": "ext_abc123",
      "email": "string",
      "email_verified": false,
      "phone": {
        "number": "string",
        "country_code": "string"
      },
      "address": {
        "address_line_1": "string",
        "address_line_2": "string",
        "city": "string",
        "administrative_area": "string",
        "postal_code": "string",
        "country_code": "NZ"
      },
      "subscriptions": [
        {
          "id": "string",
          "product": {
            "product_id": "string"
          }
        }
      ],
      "group_ids": [
        "string"
      ],
      "custom_fields": {},
      "account_id": "string",
      "status": "draft",
      "archived_at": {},
      "pass": {
        "id": "string",
        "share_url": "string"
      },
      "created_at": null,
      "updated_at": null
    }
  ],
  "total": 0,
  "page": 1,
  "size": 1,
  "pages": 0
}
{
  "type": "https://api.members.dev/errors/invalid_credentials",
  "title": "Invalid credentials",
  "status": 401,
  "detail": "Invalid API Key or token.",
  "code": "invalid_credentials"
}
{
  "type": "https://api.members.dev/errors/not_linked_to_tenant",
  "title": "Not linked to tenant",
  "status": 403,
  "detail": "Not linked to this tenant",
  "code": "not_linked_to_tenant"
}
{
  "type": "https://api.members.dev/errors/member_not_found",
  "title": "Member not found",
  "status": 404,
  "detail": "No member exists with the given id in this organization.",
  "code": "member_not_found"
}
{
  "type": "https://api.members.dev/errors/members_context_required",
  "title": "Members context required",
  "status": 422,
  "detail": "This client has multiple organizations. Send the Members-Context header with the organization id (org_…) for this request.",
  "code": "members_context_required"
}
{
  "type": "https://api.members.dev/errors/rate_limit_exceeded",
  "title": "Rate limit exceeded",
  "status": 429,
  "detail": "Rate limit exceeded",
  "code": "rate_limit_exceeded"
}