Create a member
POST /members
Requires the members:write permission.
Authorization
X-API-Key required
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
title | Mr, Ms, Mrs, Miss, Sir, Madam, Dr, Rev | No | Optional member title or honorific. |
name | string | Yes | Member full name. Required by the public API. firstName and lastName may also be provided and are stored separately. |
firstName | string | No | Optional member first name stored separately from the full name. |
lastName | string | No | Optional member last name stored separately from the full name. |
email | string (email) | Yes | Member email address. Used for pass delivery emails when a pass is issued. |
address | object | No | |
contactPreferences | object | No | |
memberId | string | No | Unique member identifier. Must not contain spaces. |
memberSince | string (date-time) | No | Date the member joined. Defaults to now when omitted. |
type | Member, Visitor | No | Member category. Defaults to Member when omitted. |
status | active, inactive | No | Member account status. Defaults to active when omitted. |
location | string | No | Member location or branch. |
phone | string | No | Member phone number. |
dateOfBirth | string (date) | No | Member date of birth. |
gender | male, female, other, prefer_not_to_say | No | Member gender. |
notes | string | No | Internal member notes. |
flagged | boolean | No | Whether the member is flagged for staff attention. |
flagNote | string | No | Optional note shown when the member is flagged. |
customFields | object | No | 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. |
issuePass | boolean | No | Set to true to issue a pass immediately after creating the member. |
passTemplateId | string | No | Required when issuePass is true. Use the id from the List pass templates endpoint. |
expiryDate | string (date-time) | No | Optional pass expiry date used when issuePass is true. |
Request Examples
curl -X POST "https://api.remypass.com/api/v1/public/members" \
-H "Accept: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"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": "string",
"memberSince": "2026-01-01T12: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
},
"issuePass": true,
"passTemplateId": "507f1f77bcf86cd799439011",
"expiryDate": "2026-01-01T12:00:00.000Z"
}'Use Case Examples
Create a new member
curl -X POST https://api.remypass.com/api/v1/public/members \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Dr. Sarah Johnson",
"firstName": "Sarah",
"lastName": "Johnson",
"email": "sarah.johnson@example.com",
"title": "Dr",
"memberId": "MEM001",
"memberSince": "2024-01-15T00:00:00.000Z",
"phone": "+447700900123",
"dateOfBirth": "1990-04-20",
"gender": "female",
"notes": "Prefers email contact",
"type": "Member",
"status": "active",
"customFields": {
"department": "Engineering",
"membershipLevel": "Premium"
}
}'
Create member with immediate pass issuance
curl -X POST https://api.remypass.com/api/v1/public/members \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Ms",
"name": "Emily Chen",
"email": "emily.chen@example.com",
"memberId": "MEM002",
"issuePass": true,
"passTemplateId": "507f1f77bcf86cd799439012",
"expiryDate": "2024-12-31T23:59:59.000Z"
}'
Responses
| Status | Description |
|---|---|
201 | Member created. |
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. |
500 | Server error. |
Response Fields
| Field | Type | Attributes |
|---|---|---|
success | boolean | |
message | string | |
data | object | Show child attributes
|