REST /api/v1/contacts 8 endpoints
GET /api/v1/contacts/api/v1/contacts

Get contacts for a role within an org

Public

Response Example

{
  "data": [
    {
      "id": "usr_01J3K8X",
      "full_name": "Ane Berg",
      "email": "ane.berg@org.no",
      "role": "peer_mentor",
      "org_id": "org_abc123",
      "avatar_url": "https://cdn.example.com/avatars/ane.png",
      "is_active": true
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 84
  }
}
GET /api/v1/contacts/api/v1/contacts/:id

Get a single contact by ID

Public

Response Example

{
  "id": "usr_01J3K8X",
  "full_name": "Ane Berg",
  "email": "ane.berg@org.no",
  "role": "peer_mentor",
  "org_id": "org_abc123",
  "avatar_url": "https://cdn.example.com/avatars/ane.png",
  "is_active": true,
  "created_at": "2025-09-14T08:22:00Z"
}
POST /api/v1/contacts/api/v1/contacts

Create a new contact entry

Public

Request Example

{
  "full_name": "Lars Haugen",
  "email": "lars.haugen@org.no",
  "role": "coordinator",
  "org_id": "org_abc123",
  "avatar_url": null
}

Response Example

{
  "id": "usr_02M5T9Y",
  "full_name": "Lars Haugen",
  "email": "lars.haugen@org.no",
  "role": "coordinator",
  "org_id": "org_abc123",
  "is_active": true,
  "created_at": "2026-01-10T11:04:00Z"
}
PUT /api/v1/contacts/api/v1/contacts/:id

Update a contact

Public

Request Example

{
  "full_name": "Lars Haugen",
  "email": "lars.h@org.no",
  "avatar_url": "https://cdn.example.com/avatars/lars.png",
  "is_active": true
}

Response Example

{
  "id": "usr_02M5T9Y",
  "full_name": "Lars Haugen",
  "email": "lars.h@org.no",
  "role": "coordinator",
  "org_id": "org_abc123",
  "is_active": true,
  "updated_at": "2026-03-01T09:15:00Z"
}
DELETE /api/v1/contacts/api/v1/contacts/:id

Remove a contact

Public

Response Example

{
  "success": true,
  "deleted_id": "usr_02M5T9Y"
}
GET /api/v1/contacts/api/v1/contacts/peer-mentors

Get peer mentors for a role within an org

Public

Response Example

{
  "data": [
    {
      "id": "pm_88A1C",
      "full_name": "Silje Dahl",
      "email": "silje.dahl@org.no",
      "specialty": "Integration",
      "org_id": "org_abc123",
      "available": true
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 12
  }
}
GET /api/v1/contacts/api/v1/contacts/search

Search contacts by query string, role and org

Public

Response Example

{
  "data": [
    {
      "id": "usr_01J3K8X",
      "full_name": "Ane Berg",
      "email": "ane.berg@org.no",
      "role": "peer_mentor",
      "org_id": "org_abc123"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 3
  }
}
GET /api/v1/contacts/api/v1/contacts/peer-mentors/search

Search peer mentors by query string, role and org

Public

Response Example

{
  "data": [
    {
      "id": "pm_88A1C",
      "full_name": "Silje Dahl",
      "email": "silje.dahl@org.no",
      "specialty": "Integration",
      "org_id": "org_abc123"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 2
  }
}

Additional Metadata

{
  "contract_summary": {
    "total_contracts": 410,
    "total_endpoints": 2416,
    "api_styles_used": [
      "rest"
    ]
  },
  "generated_at": "2026-03-26T06:55:53.316Z"
}