Persons
Persons represent individual people in your CRM — the Relation_Person entity type. A Person stores identity and contact information such as name, email, phone number, and date of birth.
A Person (Relation_Person) is the entity itself — the individual record.
A Contact (Relationship_Person_Contact_Standard) is a Relationship that links a Person to an Organization, defining their role (e.g., "Jan is a contact at Acme Corp"). The same Person can be a Contact at multiple organizations.
A Person can also play commercial roles of your business — Suspect, Lead, Hot Prospect, Prospect, or Customer — each represented by the matching Relationship_Person_CommercialRelationship_* subtype.
Endpoints
List Persons
Retrieve a paginated list of persons.
/v1/odata/Relation_PersonSingle Person
Retrieve a single person by its ID.
/v1/odata/Relation_Person({id})With expanded relations:
/v1/odata/Relation_Person({id})?$expand=Address,Gender,LanguageCreate Person
Create a new person.
/v1/odata/Relation_PersonUpdate Person
Update an existing person. Provide only the fields to update.
/v1/odata/Relation_Person({id})Delete Person
Delete a person by ID.
/v1/odata/Relation_Person({id})Fields
Standard Fields (all entities)
These fields are present on every entity, including persons.
| Field | Type | Description |
|---|---|---|
ID | Guid | Primary key (UUID) |
_Type | String | Entity type discriminator (Relation.Person) |
_Name | String | Computed display name |
SortIndex | Double | Sorting order |
Person Fields
| Field | Type | Required | Description |
|---|---|---|---|
firstName | String | No | First name |
middleName | String | No | Middle name / prefix (e.g., "van", "de") |
lastName | String | Yes | Last name |
initials | String | No | Initials |
title | String | No | Title (e.g., "Mr.", "Ms.", "Dr.") |
suffix | String | No | Name suffix (e.g., "Jr.", "III") |
phoneNumber | String | No | Primary phone number |
mobilePhoneNumber | String | No | Mobile phone number |
emailAddress | String | No | Email address |
birthDate | Date | No | Date of birth (YYYY-MM-DD) |
birthDay | String | No | Birthday without year (MM-dd format) |
Inherited Fields (from Relation)
These fields are inherited from the parent Relation type and available on all persons.
| Field | Type | Description |
|---|---|---|
number | Double | Relation number |
picture | File | Profile picture |
debtorNumber | String | Debtor number |
creditorNumber | String | Creditor number |
iban | String | IBAN bank account number |
bic | String | BIC/SWIFT code |
bankName | String | Bank name |
facebook | String | Facebook URL |
twitter | String | Twitter/X URL |
linkedin | String | LinkedIn URL |
blog | String | Blog URL |
Relationships
| Relationship | Target Entity | Cardinality | Description |
|---|---|---|---|
| Address | Address | 1:N | Address |
| Gender | Datastore.Gender | N:1 | Gender (lookup value) |
| Language | Datastore.Language | N:1 | Preferred language (lookup value) |
| LegalEntity | LegalEntity | N:1 | Legal entity reference |
| Account | Relation.Person.Account | 1:1 | Account settings (nested type) |
| Suspect | Relationship_Person_CommercialRelationship_Suspect | N:N | Unqualified individual contact (top of funnel) |
| Lead | Relationship_Person_CommercialRelationship_Lead | N:N | Qualified individual lead |
| HotProspect | Relationship_Person_CommercialRelationship_HotProspect | N:N | Engaged individual showing buying signals |
| Prospect | Relationship_Person_CommercialRelationship_Prospect | N:N | Individual in active negotiation |
| Customer | Relationship_Person_CommercialRelationship_Customer | N:N | Signed individual customer |
| Contact | Relationship_Person_Contact_Standard | N:N | Person acting as a contact at an organisation |
| Employee | Relationship_Person_Contact_Employee | N:N | Person acting as an employee |
| Person Contact (base) | Relationship_Person_Contact | N:N | Base aggregate endpoint covering Standard Contact + Employee variants |
Expanding Relationships
/v1/odata/Relation_Person({id})?$expand=Address/v1/odata/Relation_Person({id})?$expand=Address,Gender,LanguageNavigating Relationships
You can navigate directly to related entities:
/v1/odata/Relation_Person({id})/Address/v1/odata/Relation_Person({id})/Gender/$refInline Relationship Updates
When creating or updating a person, you can include related entities inline:
{
"firstName": "Jan",
"lastName": "Jansen",
"emailAddress": "jan@example.com",
"Address": {
"street": "Herengracht 456",
"city": "Amsterdam",
"postalCode": "1017 CA",
"country": "NL"
}
}
You can also use binding links to reference existing lookup values:
{
"firstName": "Jan",
"lastName": "Jansen",
"Gender@odata.bind": "Datastore_Gender(gender-id-here)",
"Language@odata.bind": "Datastore_Language(language-id-here)"
}
Filtering Examples
/v1/odata/Relation_Person?$filter=lastName eq '{lastName}'&$top={top}/v1/odata/Relation_Person?$filter=contains(lastName, '{lastName}')&$top={top}/v1/odata/Relation_Person?$filter=firstName eq '{firstName}' and lastName eq '{lastName}'&$top={top}/v1/odata/Relation_Person?$filter=contains(emailAddress, '{emailAddress}')&$top={top}/v1/odata/Relation_Person?$filter=BirthDate gt {BirthDate}&$top={top}/v1/odata/Relation_Person?$filter=Gender/Name eq '{Name}'&$top={top}/v1/odata/Relation_Person?$filter=startswith(birthDay, '{birthDay}')&$top={top}/v1/odata/Relation_Person?$filter=contains(lastName, '{lastName}') and emailAddress ne null&$top={top}Linking Persons to Organizations
Persons and organizations are linked through Relationships. To make a Person a contact at an Organization, create a Relationship_Person_Contact_Standard:
POST /v1/odata/Relationship_Person_Contact_Standard
{
"Relation": {
"ID": "organization-id-here"
},
"Person": {
"ID": "person-id-here"
}
}
Query persons linked to an organization
$filter=_Type eq … on a Relationships navigation collection is silently ignored — see Filtering by Type. Fetch the full Relationships collection and filter the result client-side by inspecting each row's _Type.
/v1/odata/Relation_Organization({org-id})/RelationshipsQuery organizations linked to a person
/v1/odata/Relation_Person({contact-id})/Relationships