# People
# Events
--- PERSON_CREATED ---
{
"event": "PERSON_CREATED",
"data": {
"person_id": 123
}
}
--- PERSON_UPDATED ---
{
"event": "PERSON_UPDATED",
"data": {
"person_id": 123
}
}
# Validation
{
"first_name": [
"required",
"max:50",
],
"last_name": [
"required",
"max:50",
],
"country_id": [
"required",
"valid country id",
],
"domicile_address": [
"required",
"valid address"
],
"correspondence_address": [
"nullable",
"valid address",
],
"language_code": [
"required",
"in: nl, fr, en, de",
],
"birth_date": [
"required",
"date:Y-m-d",
"before:now"
],
"deceased": "boolean",
"gender": [
"required",
"in: M, F, X",
],
"national_register_number": [
"nullable",
"regex:/^\d{6}-\d{3}-\d{2}$/", // Format: 000000-000-00
"unique for people per country"
],
"phone_number": "max:20",
"phone_number_info": "max:255",
"phone_number_2": "max:20",
"phone_number_2_info": "max:255",
"phone_number_3": "max:20",
"phone_number_3_info": "max:255",
"phone_number_4": "max:20",
"phone_number_4_info": "max:255",
"fax_number": "max:20",
"fax_number_info": "max:255",
"fax_number_2": "max:20",
"fax_number_2_info": "max:255",
"email": [
"nullable",
"email",
"max:50"
],
"email_info": "max:255",
"email_2": [
"nullable",
"email",
"max:50",
],
"email_2_info": "max:255",
"email_3": [
"nullable",
"email",
"max:64"
],
"email_3_info": "max:255",
"external_data_sharing_allowed": "boolean",
"subscribed_to_kbrsf_newsletter": "boolean",
"subscribed_to_league_newsletter": "boolean",
"website": [
"nullable",
"url",
"max:180"
],
"remarks": [
"nullable",
"max:50"
],
}
# List
--- ENDPOINT ---
Domain: equidata
Paginated: true
Url: /people?page=2
Method: GET
--- EXAMPLE RESPONSE ---
{
// pagination meta,
"data": [
{
"id": 123,
"first_name": "Elise",
"last_name": "Jansen",
"national_register_number": "95012037854",
"deceased": false,
"birth_date": "1998-11-14",
"gender": "X",
"language_code": "fr",
"phone_number": "+32(0)315 572018",
"phone_number_info": null,
"phone_number_2": null,
"phone_number_2_info": null,
"phone_number_3": "+9631389685416",
"phone_number_3_info": null,
"phone_number_4": null,
"phone_number_4_info": null,
"fax_number": null,
"fax_number_info": null,
"fax_number_2": "05 0348195",
"fax_number_2_info": null,
"email": "celik.marie@schmitz.com",
"email_info": null,
"email_2": null,
"email_2_info": null,
"email_3": null,
"email_3_info": null,
"website": null,
"external_data_sharing_allowed": false,
"subscribed_to_kbrsf_newsletter": false,
"subscribed_to_league_newsletter": false,
"remarks": "Vel vel ullam eum quibusdam eligendi assumenda.",
"country": {}, // a country entity
"domicile_address": {}, // an address entity
"correspondence_address": null // OR an address entity
}
/* other entries */
]
}
# Show
--- ENDPOINT ---
Domain: equidata
Url: /people/123
Method: GET
--- EXAMPLE RESPONSE ---
{
"id": 123,
"first_name": "Elise",
"last_name": "Jansen",
"national_register_number": "95012037854",
"deceased": false,
"birth_date": "1998-11-14",
"gender": "X",
"language_code": "fr",
"phone_number": "+32(0)315 572018",
"phone_number_info": null,
"phone_number_2": null,
"phone_number_2_info": null,
"phone_number_3": "+9631389685416",
"phone_number_3_info": null,
"phone_number_4": null,
"phone_number_4_info": null,
"fax_number": null,
"fax_number_info": null,
"fax_number_2": "05 0348195",
"fax_number_2_info": null,
"email": "celik.marie@schmitz.com",
"email_info": null,
"email_2": null,
"email_2_info": null,
"email_3": null,
"email_3_info": null,
"website": null,
"external_data_sharing_allowed": false,
"subscribed_to_kbrsf_newsletter": false,
"subscribed_to_league_newsletter": false,
"remarks": "Vel vel ullam eum quibusdam eligendi assumenda.",
"country": {}, // a country entity
"domicile_address": {}, // an address entity
"correspondence_address": null // OR an address entity
}
# Create
--- ENDPOINT ---
Domain: equidata
Url: /people
Method: POST
--- EXAMPLE PAYLOAD ---
{
"first_name": "Elise",
"last_name": "Jansen",
"national_register_number": "950120-378-54",
"deceased": false,
"birth_date": "1998-11-14",
"gender": "X",
"language_code": "fr",
"phone_number": "+32(0)315 572018",
"phone_number_info": null,
"phone_number_2": null,
"phone_number_2_info": null,
"phone_number_3": "+9631389685416",
"phone_number_3_info": null,
"phone_number_4": null,
"phone_number_4_info": null,
"fax_number": null,
"fax_number_info": null,
"fax_number_2": "05 0348195",
"fax_number_2_info": null,
"email": "celik.marie@schmitz.com",
"email_info": null,
"email_2": null,
"email_2_info": null,
"email_3": null,
"email_3_info": null,
"website": null,
"external_data_sharing_allowed": false,
"subscribed_to_kbrsf_newsletter": false,
"subscribed_to_league_newsletter": false,
"remarks": "Vel vel ullam eum quibusdam eligendi assumenda.",
"country_id": 91,
"domicile_address": {
"street": "Bertranddreef",
"house_number": "11",
"box": "51",
"city": "Herstal",
"postal_code": "2630",
"region": "Waals-Brabant",
"country_id": 21
},
"correspondence_address": {
"street": "Maeshof",
"house_number": "94",
"box": "75",
"city": "Eupen",
"postal_code": "4280",
"region": "Luik",
"country_id": 113
}
}
--- EXAMPLE RESPONSE ---
{
"id": 123,
"first_name": "Elise",
"last_name": "Jansen",
"national_register_number": "95012037854",
"deceased": false,
"birth_date": "1998-11-14",
"gender": "X",
"language_code": "fr",
"phone_number": "+32(0)315 572018",
"phone_number_info": null,
"phone_number_2": null,
"phone_number_2_info": null,
"phone_number_3": "+9631389685416",
"phone_number_3_info": null,
"phone_number_4": null,
"phone_number_4_info": null,
"fax_number": null,
"fax_number_info": null,
"fax_number_2": "05 0348195",
"fax_number_2_info": null,
"email": "celik.marie@schmitz.com",
"email_info": null,
"email_2": null,
"email_2_info": null,
"email_3": null,
"email_3_info": null,
"website": null,
"external_data_sharing_allowed": false,
"subscribed_to_kbrsf_newsletter": false,
"subscribed_to_league_newsletter": false,
"remarks": "Vel vel ullam eum quibusdam eligendi assumenda.",
"country": {}, // a country entity
"domicile_address": {}, // an address entity
"correspondence_address": null // OR an address entity
}
# Update
--- ENDPOINT ---
Domain: equidata
Url: /people/123
Method: PUT
--- EXAMPLE PAYLOAD ---
{
"first_name": "Elise",
"last_name": "Jansen",
"national_register_number": "950120-378-54",
"deceased": false,
"birth_date": "1998-11-14",
"gender": "X",
"language_code": "fr",
"phone_number": "+32(0)315 572018",
"phone_number_info": null,
"phone_number_2": null,
"phone_number_2_info": null,
"phone_number_3": "+9631389685416",
"phone_number_3_info": null,
"phone_number_4": null,
"phone_number_4_info": null,
"fax_number": null,
"fax_number_info": null,
"fax_number_2": "05 0348195",
"fax_number_2_info": null,
"email": "celik.marie@schmitz.com",
"email_info": null,
"email_2": null,
"email_2_info": null,
"email_3": null,
"email_3_info": null,
"website": null,
"external_data_sharing_allowed": false,
"subscribed_to_kbrsf_newsletter": false,
"subscribed_to_league_newsletter": false,
"remarks": "Vel vel ullam eum quibusdam eligendi assumenda.",
"country_id": 91,
"domicile_address": {
"street": "Bertranddreef",
"house_number": "11",
"box": "51",
"city": "Herstal",
"postal_code": "2630",
"region": "Waals-Brabant",
"country_id": 21
},
"correspondence_address": {
"street": "Maeshof",
"house_number": "94",
"box": "75",
"city": "Eupen",
"postal_code": "4280",
"region": "Luik",
"country_id": 113
}
}
--- EXAMPLE RESPONSE ---
{
"id": 123,
"first_name": "Elise",
"last_name": "Jansen",
"national_register_number": "95012037854",
"deceased": false,
"birth_date": "1998-11-14",
"gender": "X",
"language_code": "fr",
"phone_number": "+32(0)315 572018",
"phone_number_info": null,
"phone_number_2": null,
"phone_number_2_info": null,
"phone_number_3": "+9631389685416",
"phone_number_3_info": null,
"phone_number_4": null,
"phone_number_4_info": null,
"fax_number": null,
"fax_number_info": null,
"fax_number_2": "05 0348195",
"fax_number_2_info": null,
"email": "celik.marie@schmitz.com",
"email_info": null,
"email_2": null,
"email_2_info": null,
"email_3": null,
"email_3_info": null,
"website": null,
"external_data_sharing_allowed": false,
"subscribed_to_kbrsf_newsletter": false,
"subscribed_to_league_newsletter": false,
"remarks": "Vel vel ullam eum quibusdam eligendi assumenda.",
"country": {}, // a country entity
"domicile_address": {}, // an address entity
"correspondence_address": null // OR an address entity
}