---
title: "List memberships by IDs"
method: POST
path: "/memberships/list"
tags: ["Memberships"]
---

# List memberships by IDs

`POST /memberships/list`

Fetch the latest details of loyalty memberships from the provider's system using memberships' unique IDs.

## Headers

- `Accept-Language` string

## Request body

- ListMembershipsRequest — Request payload for fetching the latest details of loyalty memberships using their unique provider IDs.
  - `mewsEnterpriseId` string, uuid, required — The identifier of the Mews enterprise on whose behalf the request has been made.
  - `providerEnterpriseId` string — An optional identifier of the enterprise from the loyalty provider on whose behalf the request has been made.
  - `providerMembershipIds` ProviderMembershipId[], required — Array of membership IDs to retrieve.

## Response `200`

List matching memberships.

If a membership with requested `providerMembershipId` is not found in the result set, it will be requested again later.

Memberships with `status` of `notFound` will be removed on Mews' side.

- ListMembershipsResponse — Response payload containing an array of membership details for the requested provider membership IDs.
  - `data` Membership[], required — Array of matching memberships, if any membership is not found, return it with state `notFound`.
    - `providerMembershipId` string, required — Unique internal identifier of membership from the loyalty provider. Can be the same as `membershipNumber` if no other value is needed.
    - `membershipNumber` string, required — Member code or number, typically on loyalty card.
    - `tier` string
    - `points` integer
    - `status` 'pending' | 'enrolled' | 'canceled' | 'declined' | 'notFound', required
    - `expiresAt` string, date-time
    - `deeplinkUrl` string, uri

## Other responses

- `400` — Bad Request - Returned when the request is invalid, such as missing required fields or containing data in an incorrect format.
- `401` — Unauthorized
- `408` — Request Timeout
- `422` — Unprocessable Content - Used when the request is syntactically valid but fails due to business logic constraints.
- `500` — Internal Server Error

---

[API](https://skmtc.net/mews/apis/pos-api.md) · [All operations](https://skmtc.net/mews/apis/pos-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mews/pos-api/versions/33ecaa6c7266/schema)
