/{organizationId}/{mandateId}/crm/contacts/listList contacts
Returns a list of contacts for the mandate
Required permissions:
mandate.read
Permissions depending on contact type:
contact:member
contact:address
contact:customer
contact:sponsor
contact:contributor
contact:employee
contact:supplier
Path Parameters
organizationIdstringrequired mandateIdstringrequired Request Body required
Content-Type: application/json
limitintegeroptional Default: 50
minimum: 0
maximum: 100
offsetintegeroptional Default: 0
minimum: 0
maximum: 9007199254740991
returnCountbooleanoptional Default: false
searchTermstringoptional userAssignedbooleanoptional A stringified json object representing a property filter
teamIdstringoptional Authentication: X-API-Key
Request
curl --request POST 'https://cloud.campai.com/api/{organizationId}/{mandateId}/crm/contacts/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,
"contacts": [
{
"_id": "000000000000000000000001",
"mandates": [
"000000000000000000000001"
],
"types": [
"member"
],
"language": "en",
"name": "string",
"nameNormalized": "string",
"nameSort": "string",
"debtor": {
"account": 1,
"name": "string",
"nameNormalized": "string",
"nameSort": "string",
"totalOwedFromDebtor": -9007199254740991,
"totalOwedToDebtor": -9007199254740991,
"totalDeposit": -9007199254740991
},
"creditor": {
"account": 1,
"name": "string",
"nameNormalized": "string",
"nameSort": "string",
"totalOwedToCreditor": -9007199254740991,
"totalOwedFromCreditor": -9007199254740991
},
"groups": [
{
"type": "000000000000000000000001",
"number": "string",
"name": "string",
"contacts": 0,
"segments": [
"string"
],
"contactSegmentCounters": {},
"group": "000000000000000000000001"
}
],
"proofs": [
{
"type": "000000000000000000000001",
"typeName": "string",
"proof": "000000000000000000000001",
"status": "requested"
}
],
"certificates": [
{
"type": "000000000000000000000001",
"typeName": "string",
"certificate": "000000000000000000000001",
"status": "valid"
}
],
"segments": [
"string"
],
"tags": "string",
"teams": [
{
"team": "000000000000000000000001",
"role": "000000000000000000000001",
"roleName": "string",
"joinedAt": "2026-06-15T22:30:00Z"
}
],
"user": {
"token": "",
"claimedAt": "2026-06-15T22:30:00Z",
"actor": {
"name": "string",
"type": "user",
"userId": "string",
"image": {
"resource": "string"
}
}
},
"image": {
"resource": "string"
},
"address": {
"country": "string",
"zip": "string",
"city": "string",
"addressLine": "string"
},
"communication": {
"email": "",
"phone": "",
"mobilePhone": "",
"mailing": true,
"mailingTags": "string",
"mailingUnsubscriptions": [
{
"email": "string",
"unsubscribedAt": "2026-06-15T22:30:00Z",
"tags": [
"string"
],
"all": true
}
],
"greetings": "string"
},
"alternativeCommunications": [
{
"email": "",
"phone": "",
"mobilePhone": "",
"mailing": true,
"mailingTags": "string",
"mailingUnsubscriptions": [
{
"email": "string",
"unsubscribedAt": "2026-06-15T22:30:00Z",
"tags": [
"string"
],
"all": true
}
],
"id": "string",
"contact": "000000000000000000000001",
"contactTypes": [
"member"
],
"name": "string",
"description": "string"
}
],
"customFields": {},
"institution": {
"type": "business",
"name": "string"
},
"person": {
"salutation": "string",
"gender": "male",
"title": "string",
"firstName": "string",
"lastName": "string",
"institutionName": "string",
"printInstitutionOnAddress": true,
"birthdate": "string",
"age": 0,
"birthdateDayOfYear": 1
},
"member": {
"entryAt": "string",
"exitAt": "string",
"terminatedAt": "string",
"terminationReason": {
"code": "string",
"message": "string"
},
"membershipDuration": 0,
"entryAtDayOfYear": 1,
"exitAtDayOfYear": 1
},
"employee": {
"type": "internal",
"status": "active",
"position": "string",
"probationStartAt": "string",
"probationEndAt": "string",
"employmentStartAt": "string",
"employmentEndAt": "string",
"contractEndAt": "string",
"terminatedAt": "string",
"lastWorkingDayAt": "string"
},
"contributor": {
"status": "active",
"roleTitle": "string",
"contributionStartAt": "string",
"contributionEndAt": "string"
},
"contactNumbers": {},
"departments": [
{
"department": "000000000000000000000001",
"name": "string",
"color": "string",
"contactTypes": [
"member"
],
"entryAt": "string",
"exitAt": "string"
}
],
"activeDepartments": [
"000000000000000000000001"
],
"contactNumbersSort": {},
"issuedPasses": {},
"contracts": [
{
"startAt": "string",
"endAt": "string",
"pause": {
"ruleId": "string",
"startAt": "string",
"endAt": "string"
},
"contract": "000000000000000000000001",
"paymentInterval": "month",
"plan": {
"plan": "000000000000000000000001",
"name": "string"
}
}
],
"portalSynchronization": {
"ignore": true,
"status": "synchronized",
"lastSynchronizedAt": "2026-06-15T22:30:00Z",
"lastSeenAt": "2026-06-15T22:30:00Z",
"activatedAt": "2026-06-15T22:30:00Z",
"failedReason": "string",
"mailStatus": "pending",
"mailId": "string",
"mailError": "string",
"mailSentAt": "2026-06-15T22:30:00Z"
},
"eventim": {
"tixxId": "string",
"tixxCustomerNo": "string",
"communication": {
"mobilePhoneId": "string",
"phoneId": "string"
}
},
"network": {
"joinedAt": "2026-06-15T22:30:00Z",
"visibleFields": [
"string"
],
"reviewedAt": "2026-06-15T22:30:00Z",
"remindedAt": "2026-06-15T22:30:00Z"
},
"oldContactId": "000000000000000000000001"
}
]
}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": []
}