Contact Search Service
API Contract
REST
/api/v1/contacts/search
4 endpoints
GET
/api/v1/contacts/search/api/v1/contacts/search/remote
Trigger remote (Supabase) search for contacts
Public
Response Example
{
"data": [
{
"id": "usr_77Z2P",
"full_name": "Tobias Elstad",
"email": "tobias@org.no",
"role": "new_employee",
"org_id": "org_abc123"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 5
}
}
POST
/api/v1/contacts/search/api/v1/contacts/search/local
Filter a provided contact list locally (client-side subset filtering)
Public
Request Example
{
"query": "silje",
"contacts": [
{
"id": "usr_01J3K8X",
"full_name": "Ane Berg",
"email": "ane.berg@org.no"
},
{
"id": "pm_88A1C",
"full_name": "Silje Dahl",
"email": "silje.dahl@org.no"
}
]
}
Response Example
{
"data": [
{
"id": "pm_88A1C",
"full_name": "Silje Dahl",
"email": "silje.dahl@org.no"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 1
}
}
GET
/api/v1/contacts/search/api/v1/contacts/peer-mentors/search/remote
Remote search for peer mentors
Public
Response Example
{
"data": [
{
"id": "pm_88A1C",
"full_name": "Silje Dahl",
"specialty": "Integration",
"org_id": "org_abc123",
"available": true
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 2
}
}
POST
/api/v1/contacts/search/api/v1/contacts/peer-mentors/search/local
Filter a provided peer mentor list locally
Public
Request Example
{
"query": "inte",
"mentors": [
{
"id": "pm_88A1C",
"full_name": "Silje Dahl",
"specialty": "Integration"
},
{
"id": "pm_77B2D",
"full_name": "Knut Strand",
"specialty": "Logistics"
}
]
}
Response Example
{
"data": [
{
"id": "pm_88A1C",
"full_name": "Silje Dahl",
"specialty": "Integration"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 1
}
}