Organization Labels Notifier
API Contract
REST
/api/v1/organization-labels
8 endpoints
GET
/api/v1/organization-labels/api/v1/organization-labels
List all label entries across organizations, optionally filtered by organization_id
Auth Required
coordinatororg_adminglobal_admin
Response Example
{
"data": [
{
"key": "role.coordinator",
"value": "Program Coordinator",
"organization_id": "org_nhf_oslo",
"updated_at": "2026-03-20T10:00:00.000Z"
},
{
"key": "role.peer_mentor",
"value": "Aktivitetsvenn",
"organization_id": "org_nhf_oslo",
"updated_at": "2026-03-20T10:00:00.000Z"
},
{
"key": "activity_type.group_walk",
"value": "Gruppetur",
"organization_id": "org_hlf",
"updated_at": "2026-03-18T14:30:00.000Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 48
}
}
GET
/api/v1/organization-labels/api/v1/organization-labels/:organization_id
Get the full label map for a specific organization
Auth Required
peer_mentorcoordinatororg_adminglobal_admin
Response Example
{
"organization_id": "org_nhf_oslo",
"labels": {
"role.coordinator": "Program Coordinator",
"role.peer_mentor": "Aktivitetsvenn",
"activity_type.group_walk": "Gruppetur",
"activity_type.café_visit": "Kafé-besøk",
"report.participant_count": "Antall deltakere"
},
"updated_at": "2026-03-20T10:00:00.000Z"
}
POST
/api/v1/organization-labels/api/v1/organization-labels
Create a new label entry for an organization
Auth Required
org_adminglobal_admin
Request Example
{
"organization_id": "org_nhf_oslo",
"key": "role.coordinator",
"value": "Aktivitetsleder"
}
Response Example
{
"organization_id": "org_nhf_oslo",
"key": "role.coordinator",
"value": "Aktivitetsleder",
"created_at": "2026-03-26T09:15:00.000Z",
"updated_at": "2026-03-26T09:15:00.000Z"
}
PUT
/api/v1/organization-labels/api/v1/organization-labels/:organization_id
Replace the full label map for an organization (bulk upsert)
Auth Required
org_adminglobal_admin
Request Example
{
"labels": {
"role.coordinator": "Programleder",
"role.peer_mentor": "Aktivitetsvenn",
"activity_type.group_walk": "Fellestur",
"report.participant_count": "Deltakere"
}
}
Response Example
{
"organization_id": "org_nhf_oslo",
"updated_keys": 4,
"updated_at": "2026-03-26T09:20:00.000Z"
}
DELETE
/api/v1/organization-labels/api/v1/organization-labels/:organization_id
Remove all custom label overrides for an organization, reverting to defaults
Auth Required
org_adminglobal_admin
Response Example
{
"organization_id": "org_nhf_oslo",
"deleted_keys": 12,
"message": "All label overrides removed. Default labels will apply."
}
GET
/api/v1/organization-labels/api/v1/organization-labels/:organization_id/label
Resolve a single label key for an organization (maps to label(key))
Auth Required
peer_mentorcoordinatororg_adminglobal_admin
Response Example
{
"key": "role.coordinator",
"value": "Programleder",
"organization_id": "org_nhf_oslo",
"is_custom": true
}
POST
/api/v1/organization-labels/api/v1/organization-labels/:organization_id/load
Trigger label load/warm-up for a specific organization (maps to loadForOrganization)
Auth Required
coordinatororg_adminglobal_admin
Response Example
{
"organization_id": "org_nhf_oslo",
"loaded_keys": 18,
"loaded_at": "2026-03-26T09:25:00.000Z"
}
POST
/api/v1/organization-labels/api/v1/organization-labels/:organization_id/refresh
Force refresh of cached labels from source (maps to refresh())
Auth Required
coordinatororg_adminglobal_admin
Response Example
{
"organization_id": "org_nhf_oslo",
"refreshed": true,
"previous_updated_at": "2026-03-25T08:00:00.000Z",
"updated_at": "2026-03-26T09:25:30.000Z"
}