/{organizationId}/{mandateId}/booking/events/contact/{contactId}/attendancies/listList contact attendancies
Returns a list of all events the contact has attended for a given mandate
Required permissions:
mandate.read
event.read
Path Parameters
organizationIdstringrequired mandateIdstringrequired contactIdstringrequired Request Body required
Content-Type: application/json
limitintegeroptional Default: 50
minimum: 0
maximum: 100
offsetintegeroptional Default: 0
minimum: 0
maximum: 9007199254740991
returnCountbooleanoptional Default: false
checkInAvailablebooleanoptional searchTermstringoptional Authentication: X-API-Key
Request
curl --request POST 'https://cloud.campai.com/api/{organizationId}/{mandateId}/booking/events/contact/{contactId}/attendancies/list' \
--header 'X-API-Key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"sort": {},
"limit": 50,
"offset": 0
}'Responses
This endpoint returns different response codes based on the request outcome.
200Successful response
Content-Type: application/json
countintegerrequired minimum: 0
maximum: 9007199254740991
Response
{
"count": 0,
"attendancies": [
{
"_id": "000000000000000000000001",
"event": "000000000000000000000001",
"eventTitle": "string",
"booking": {
"booking": "000000000000000000000001",
"recordNumber": "string",
"paymentMethodPending": "unpaid",
"receipts": [
"000000000000000000000001"
],
"rateId": "string",
"rateName": "string",
"ratePrice": {
"taxCode": "string",
"account": 1,
"costCenter1": 1,
"costCenter2": 1
},
"ratePaidPrice": 0,
"usedPoints": 1,
"issuedPunchCardNumber": "string",
"punchCard": "000000000000000000000001",
"services": [
{
"service": "000000000000000000000001",
"serviceName": "string",
"options": [
{
"optionId": "string",
"optionName": "string",
"optionPrice": {
"taxCode": "string",
"account": 1,
"costCenter1": 1,
"costCenter2": 1
},
"optionPaidPrice": 0
}
]
}
],
"servicesPaidPrice": 0,
"discountCode": "string",
"formResult": {
"schema": [
{
"id": "string",
"label": "string",
"fields": [
{
"id": "string",
"type": "placeholder"
}
]
}
],
"data": {}
}
},
"checkedInAt": "2026-06-15T22:30:00Z",
"checkedInBy": {
"name": "string",
"type": "user",
"userId": "string",
"image": {
"resource": "string"
}
},
"eventDate": "2026-06-15T22:30:00Z",
"status": "waitlisted",
"bookingNumber": "string",
"role": "attendee"
}
]
}400Invalid input data
Content-Type: application/json
The error information
messagestringrequired The error message
codestringrequired The error code
An array of issues that were responsible for the error
Response
{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}401Authorization not provided
Content-Type: application/json
The error information
messagestringrequired The error message
codestringrequired The error code
An array of issues that were responsible for the error
Response
{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}403Insufficient access
Content-Type: application/json
The error information
messagestringrequired The error message
codestringrequired The error code
An array of issues that were responsible for the error
Response
{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}500Internal server error
Content-Type: application/json
The error information
messagestringrequired The error message
codestringrequired The error code
An array of issues that were responsible for the error
Response
{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}