List all of a member's identifiers
GET /api/members/{memberId}/identifier
Success: 200 OK
- Products: Operator (
FOH), Consumer (CONSUMER), Integrations (INTEGRATIONS) (any one of these products, not all) - Features: Online Bookings (
ONLINEBOOK), Online Joining (ONLINEJOIN), TRP Integration (TRP), Front of House Generic Access (FOHGENERIC) (any one of these features, not all)
Overview
Lists everything a member can present to identify themselves at a site: access cards, smartbands, keyfobs and digital tokens. These are the values an access-control reader matches against, so this is the endpoint you call to find out what a given member can currently get through a door or turnstile with.
A member normally holds more than one. The response merges the member's primary card with any additional identifiers held against them, and identifier types are tenant configuration — each type is flagged to allow one identifier per member or several, so repeated type values in the response are expected rather than a fault.
The one thing the response will not tell you is which entry is the primary card. There is no primary flag: id, type and createdOn are all you get. The system treats the type CARD as the primary card slot, and that slot is limited to 25 characters — a CARD-type identifier longer than that is held as an additional identifier instead. If your integration needs the primary card specifically, you cannot derive it reliably from this response alone.
Identifier values are unique across the whole member base, not just within one member, so an id you see here cannot also be in use by anyone else. Access is checked against the token: the member id in the route must match the member the token was issued for.
Endpoint
GET {base_url}/api/members/{memberId}/identifier
{base_url} is the environment URL issued to your integration. See Authenticating with Gladstone APIs.
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
memberId | integer (int32) | Yes | The member whose identifiers you want. Must match the member your token was issued for. A member id that does not exist returns 404. |
Sample request
curl -X GET '{base_url}/api/members/{memberId}/identifier' \
-H 'Authorization: Bearer {accessToken}' \
-H 'X-Use-SSO: true'Response fields
| Field | Type | Description |
|---|---|---|
[].id | string | The identifier value itself — the card number, token or tag value an access-control reader would read, not a surrogate key. Unique across all members, so no two members can hold the same value. A value acting as the primary card must be 1 to 25 characters; anything longer is held as an additional identifier instead. |
[].type | string | The identifier type code, from the identifier types configured for your organisation — the same list that decides whether a member may hold more than one of a given type. CARD is the type the system uses for the primary card. The full set of codes is tenant configuration, so read it rather than hard-coding it. |
[].createdOn | string (date-time) | When the identifier was recorded against the member. Nullable — treat a missing value as unknown rather than as the epoch, and do not rely on it to order identifiers or to pick out the primary card. |
Sample response
[
{
"id": "string",
"type": "string",
"createdOn": "2026-08-14T19:00:00Z"
}
]Errors
| Status | Meaning | When |
|---|---|---|
400 | Bad request | |
404 | Not found | MemberId {memberId} does not exist. |
500 | Internal server error |