Contact Edit Service
API Contract
REST
/api/v1/contacts
7 endpoints
GET
/api/v1/contacts/api/v1/contacts
List contacts (edit-context view)
Public
Response Example
{
"data": [
{
"contact_id": "c-00123",
"first_name": "Ingrid",
"last_name": "Solberg",
"email": "ingrid.solberg@example.no",
"phone": "+47 912 34 567",
"updated_at": "2026-01-05T08:44:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 154
}
}
GET
/api/v1/contacts/api/v1/contacts/:id
Get contact for editing
Public
Response Example
{
"contact_id": "c-00123",
"first_name": "Ingrid",
"last_name": "Solberg",
"email": "ingrid.solberg@example.no",
"phone": "+47 912 34 567",
"address": "Storgata 12, 0155 Oslo",
"date_of_birth": "1988-04-21",
"chapter_affiliations": [
"ch-01",
"ch-07"
],
"updated_at": "2026-01-05T08:44:00Z"
}
POST
/api/v1/contacts/api/v1/contacts
Create contact via edit form
Public
Request Example
{
"first_name": "Marte",
"last_name": "Kjeldsberg",
"email": "marte.k@example.no",
"phone": "+47 450 12 345",
"address": "Kongens gate 8, 0153 Oslo",
"date_of_birth": "1990-06-17",
"chapter_affiliations": [
"ch-02",
"ch-05"
]
}
Response Example
{
"contact_id": "c-00201",
"first_name": "Marte",
"last_name": "Kjeldsberg",
"email": "marte.k@example.no",
"phone": "+47 450 12 345",
"address": "Kongens gate 8, 0153 Oslo",
"date_of_birth": "1990-06-17",
"chapter_affiliations": [
"ch-02",
"ch-05"
],
"created_at": "2026-03-26T11:05:00Z",
"updated_at": "2026-03-26T11:05:00Z",
"save_result": "success"
}
PUT
/api/v1/contacts/api/v1/contacts/:id
Save contact edits (saveContactEdits)
Public
Request Example
{
"first_name": "Ingrid",
"last_name": "Solberg",
"email": "ingrid.s@updated.no",
"phone": "+47 912 34 567",
"address": "Storgata 12, 0155 Oslo",
"date_of_birth": "1988-04-21"
}
Response Example
{
"contact_id": "c-00123",
"first_name": "Ingrid",
"last_name": "Solberg",
"email": "ingrid.s@updated.no",
"phone": "+47 912 34 567",
"address": "Storgata 12, 0155 Oslo",
"date_of_birth": "1988-04-21",
"updated_at": "2026-03-26T12:20:00Z",
"save_result": "success"
}
DELETE
/api/v1/contacts/api/v1/contacts/:id
Delete contact
Public
Response Example
{
"contact_id": "c-00123",
"deleted": true,
"deleted_at": "2026-03-26T12:45:00Z"
}
PUT
/api/v1/contacts/api/v1/contacts/:id/chapter-affiliations
Update chapter affiliations for a contact
Public
Request Example
{
"chapter_ids": [
"ch-01",
"ch-04",
"ch-07"
]
}
Response Example
{
"contact_id": "c-00123",
"chapter_affiliations": [
"ch-01",
"ch-04",
"ch-07"
],
"updated_at": "2026-03-26T12:22:00Z",
"save_result": "success"
}
POST
/api/v1/contacts/api/v1/contacts/:id/refresh
Refresh contact state (refreshContactState)
Public
Response Example
{
"contact_id": "c-00123",
"first_name": "Ingrid",
"last_name": "Solberg",
"email": "ingrid.s@updated.no",
"phone": "+47 912 34 567",
"chapter_affiliations": [
"ch-01",
"ch-04",
"ch-07"
],
"assignment_status": "assigned",
"refreshed_at": "2026-03-26T12:22:30Z"
}