List members
GET /members
Requires the members:read permission.
Authorization
X-API-Key required
Parameters
| Name | Location | Type | Required | Default | Limits | Description |
|---|---|---|---|---|---|---|
limit | query | integer | No | 10 | min 1, max 100 | |
page | query | integer | No | 1 | min 1 | |
search | query | string | No | |||
status | query | active, inactive | No | |||
type | query | Member, Visitor | No | Exact member category | ||
title | query | string | No | Exact title | ||
location | query | string | No | Case-insensitive location search | ||
flagged | query | boolean | No | Whether the member is flagged | ||
joinDateFrom | query | string (date) | No | Inclusive memberSince lower bound | ||
joinDateTo | query | string (date) | No | Inclusive memberSince end date | ||
customFields | query | string | No | JSON-encoded field filters; checkbox and date fields use their configured types | ||
passStatus | query | has_active, no_active | No | Filter on linked active passes | ||
passExpiryFrom | query | string (date) | No | Inclusive linked non-void pass expiry lower bound | ||
passExpiryTo | query | string (date) | No | Inclusive linked non-void pass expiry end date | ||
walletStatus | query | added, not_added, no_pass | No | Filter on installed non-void passes |
Request Examples
curl -X GET "https://api.remypass.com/api/v1/public/members" \
-H "Accept: application/json" \
-H "X-API-Key: YOUR_API_KEY"Use Case Examples
List members with pagination
curl -X GET "https://api.remypass.com/api/v1/public/members?limit=25&page=1&search=john&status=active" \
-H "X-API-Key: YOUR_API_KEY"
Responses
| Status | Description |
|---|---|
200 | Members retrieved. |
400 | Bad request. The top-level message explains what is invalid and, where applicable, the errors array contains structured field details. |
401 | Missing or invalid API key. |
403 | The caller is not allowed to access this resource. |
429 | Rate limit exceeded. |
500 | Server error. |
200 Response Example
{
"success": true,
"message": "string",
"data": [
{
"_id": "507f1f77bcf86cd799439011",
"title": "Mr",
"name": "John Doe",
"firstName": "John",
"lastName": "Doe",
"email": "john@example.com",
"address": {
"addressLine1": "23 Gastons Road",
"addressLine2": "",
"city": "London",
"region": "Greater London",
"postalCode": "SW1A 1AA",
"country": "United Kingdom"
},
"contactPreferences": {
"email": true,
"post": true,
"phone": true
},
"memberId": "MEM001",
"memberSince": "2024-01-15T00:00:00.000Z",
"type": "Member",
"status": "active",
"location": "Main Street",
"phone": "+447700900123",
"dateOfBirth": "1990-04-20",
"gender": "male",
"notes": "Prefers email contact",
"flagged": true,
"flagNote": "Check eligibility before issuing renewal",
"customFields": {
"membershipLevel": "Gold",
"favoriteLocation": "Main Street",
"newsletterOptIn": true
},
"passes": [
{
"passInstance": {},
"issuedAt": null,
"issuedBy": null,
"status": null,
"expiryDate": null
}
],
"createdAt": "2026-01-01T12:00:00.000Z",
"updatedAt": "2026-01-01T12:00:00.000Z",
"walletSummary": {
"total": 1,
"added": 1,
"status": "no_pass"
},
"photo": "string",
"linkedMemberGroupId": "507f1f77bcf86cd799439011"
}
],
"pagination": {
"currentPage": 1,
"totalPages": 5,
"totalItems": 47,
"itemsPerPage": 10,
"hasNextPage": true,
"hasPrevPage": false
}
}
Response Fields
| Field | Type | Description | Attributes |
|---|---|---|---|
success | boolean | ||
message | string | ||
data | array of object | Show child attributes
| |
pagination | object | Show child attributes
|