Skip to main content

List members

GET /members

Requires the members:read permission.

Authorization​

X-API-Key required

Parameters​

NameLocationTypeRequiredDefaultLimitsDescription
limitqueryintegerNo10min 1, max 100
pagequeryintegerNo1min 1
searchquerystringNo
statusqueryactive, inactiveNo
typequeryMember, VisitorNoExact member category
titlequerystringNoExact title
locationquerystringNoCase-insensitive location search
flaggedquerybooleanNoWhether the member is flagged
joinDateFromquerystring (date)NoInclusive memberSince lower bound
joinDateToquerystring (date)NoInclusive memberSince end date
customFieldsquerystringNoJSON-encoded field filters; checkbox and date fields use their configured types
passStatusqueryhas_active, no_activeNoFilter on linked active passes
passExpiryFromquerystring (date)NoInclusive linked non-void pass expiry lower bound
passExpiryToquerystring (date)NoInclusive linked non-void pass expiry end date
walletStatusqueryadded, not_added, no_passNoFilter 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​

StatusDescription
200Members retrieved.
400Bad request. The top-level message explains what is invalid and, where applicable, the errors array contains structured field details.
401Missing or invalid API key.
403The caller is not allowed to access this resource.
429Rate limit exceeded.
500Server 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​

FieldTypeDescriptionAttributes
successboolean
messagestring
dataarray of object
Show child attributes
  • _id: string
  • title: Mr, Ms, Mrs, Miss, Sir, Madam, Dr, Rev — Optional member title or honorific.
  • name: string — Member full name.
  • firstName: string — Member first name.
  • lastName: string — Member last name.
  • email: string (email) — Member email address. Used for pass delivery emails when a pass is issued.
  • address: object
    Show child attributes
    • addressLine1: string
    • addressLine2: string
    • city: string
    • region: string — State, county, province, or region.
    • postalCode: string
    • country: string — Country name or ISO country code.
  • contactPreferences: object — Optional marketing communication preferences. Essential service communications are unaffected.
    Show child attributes
    • email: boolean
    • post: boolean
    • phone: boolean
  • memberId: string — External or organisation-defined member identifier.
  • memberSince: string (date-time) — Date the member joined. Defaults to the creation date when omitted.
  • type: Member, Visitor — Member category. Defaults to Member when omitted.
  • status: active, inactive — Member account status. Defaults to active when omitted.
  • location: string — Member location or branch.
  • phone: string — Member phone number.
  • dateOfBirth: string (date-time) — Member date of birth.
  • gender: male, female, other, prefer_not_to_say — Member gender.
  • notes: string — Internal member notes.
  • flagged: boolean — Whether the member is flagged for staff attention.
  • flagNote: string — Optional note shown when the member is flagged.
  • customFields: object — Organisation-defined custom field values keyed by custom field key. Use customFields only for fields configured by the organisation; use first-party fields such as phone, dateOfBirth, gender, and notes at the top level.
  • passes: array of object — Pass wrappers included by member list and lookup endpoints
    Show child attributes
    • passInstance: object
      Show child attributes
      • _id: string
      • serialNumber: string
      • status: active, inactive, expired, void
      • member: string or object
      • pass: string or object
      • recipientName: string
      • recipientEmail: string (email)
      • expiryDate: string (date-time)
      • issuedAt: string (date-time)
      • walletUrls: object
      • maxUses: integer — Maximum number of successful scans allowed for an event ticket. Defaults to 1 for tickets issued before multi-use support or when omitted.
      • usesRemaining: integer — Remaining successful scans available on an event ticket.
      • redeemedCount: integer — Number of successful event ticket redemptions.
      • lastRedeemedAt: string (date-time) — Timestamp of the latest successful event ticket redemption.
      • passType: generic, eventTicket, loyalty
      • customFields: object
      • eventTime: string (date-time)
      • eventName: string
      • seatInfo: object
      • recipientTitle: string
      • voided: boolean
      • voidedAt: string (date-time)
      • isNonMemberTicket: boolean
      • currentStamps: number
      • lifetimeStampsEarned: number
      • lastStampUpdate: string (date-time)
      • createdAt: string (date-time)
      • updatedAt: string (date-time)
      • membershipManaged: boolean — Included within member lookup pass wrappers
      • memberMembershipId: string — Managing membership _id, when included in a member lookup pass wrapper
    • issuedAt: string (date-time)
    • issuedBy: string or object
      Show child attributes
      • _id: string
      • name: string
      • email: string (email)
    • status: active, inactive, expired, void
    • expiryDate: string (date-time)
  • createdAt: string (date-time)
  • updatedAt: string (date-time)
  • walletSummary: object — Included on member list responses
    Show child attributes
    • total: integer
    • added: integer
    • status: no_pass, added, not_added
  • photo: string — Stored member photo URL
  • linkedMemberGroupId: string
paginationobject
Show child attributes
  • currentPage: integer
  • totalPages: integer
  • totalItems: integer
  • itemsPerPage: integer
  • hasNextPage: boolean
  • hasPrevPage: boolean