List scan events
GET /scans
Requires scans:read. Returns scan events belonging to the authenticated organisation. Results are ordered newest first by _id. Member and passInstance fields contain RemyPass IDs, not populated objects. Date bounds are inclusive; use UTC timestamps for unambiguous ranges.
Authorization
X-API-Key required
Parameters
| Name | Location | Type | Required | Default | Limits | Description |
|---|---|---|---|---|---|---|
page | query | integer | No | 1 | min 1 | Page number, defaults to 1 |
limit | query | integer | No | 10 | min 1, max 100 | Page size, defaults to 10, maximum 100 |
memberId | query | string | No | RemyPass member _id | ||
passInstanceId | query | string | No | RemyPass pass instance _id | ||
type | query | IN, OUT, IGNORED, STAMP_GIVEN, TICKET_REDEEMED | No | IN, OUT, IGNORED, STAMP_GIVEN, or TICKET_REDEEMED | ||
result | query | string | No | min length 1, max length 100 | Exact scan result | |
source | query | ios, android, web, mac, system, square | No | ios, android, web, mac, system, or square | ||
location | query | string | No | max length 500 | Exact scan location | |
startDate | query | string (date-time) | No | Inclusive ISO 8601 lower bound on createdAt | ||
endDate | query | string (date-time) | No | Inclusive ISO 8601 upper bound on createdAt; must be on or after startDate |
Request Examples
curl -X GET "https://api.remypass.com/api/v1/public/scans" \
-H "Accept: application/json" \
-H "X-API-Key: YOUR_API_KEY"Responses
| Status | Description |
|---|---|
200 | Success |
400 | Invalid request |
401 | Authentication required |
403 | Insufficient permissions |
429 | Rate limit exceeded. |
500 | Server error. |
200 Response Example
{
"success": true,
"message": "string",
"data": [
{
"_id": "string",
"member": "string",
"passInstance": "string",
"source": "ios",
"location": "string",
"input": "string",
"result": "string",
"reason": "string",
"type": "IN",
"createdAt": "2026-01-01T12:00:00.000Z",
"updatedAt": "2026-01-01T12:00:00.000Z",
"quantity": 1
}
],
"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
|