Responses and Errors
Success Envelope
Single-resource and write responses use a standard success envelope:
{
"success": true,
"message": "Member retrieved successfully",
"data": {
"_id": "507f1f77bcf86cd799439011"
}
}
List responses include pagination metadata:
{
"success": true,
"message": "Members retrieved successfully",
"data": [],
"pagination": {
"currentPage": 1,
"totalPages": 5,
"totalItems": 47,
"itemsPerPage": 10,
"hasNextPage": true,
"hasPrevPage": false
}
}
Error Envelope
{
"success": false,
"message": "Invalid API key"
}
Validation failures may include an errors array.
{
"success": false,
"message": "Name is required; Valid email is required",
"errors": [
{
"type": "field",
"msg": "Name is required",
"path": "name",
"location": "body"
},
{
"type": "field",
"msg": "Valid email is required",
"path": "email",
"location": "body"
}
]
}
For public API validation failures, message contains an actionable summary suitable for displaying directly in an integration client such as Zapier. When errors is an array, use each item's path and msg to associate the reason with a request field.
Validation details use an errors array. Rate-limit failures use an errors object, so check its type before iterating. The success and message fields are shared by both forms.
Typical validation messages explain both the invalid value's expected format and where to obtain identifiers. For example:
{
"success": false,
"message": "memberId must be the RemyPass member _id returned by the members API",
"errors": [
{
"type": "field",
"msg": "memberId must be the RemyPass member _id returned by the members API",
"path": "memberId",
"location": "body"
}
]
}
Rate limit responses include limit, remaining, resetTime, and retryAfter inside the errors object.
Common Status Codes
200: Request succeeded201: Resource created400: Validation or bad request; inspectmessageand, when present,errors401: Missing, invalid, inactive, or expired API key403: Permission, plan, or access failure404: Resource or endpoint not found409: Event capacity reached or delivery already queued422: Pass instance is missing its organisation linkage429: Rate limit exceeded500: Server error; retry the request and contact support if it continues
All examples in the endpoint reference show the response fields available for that endpoint.