REST API endpoint
GET /v1/responsibilities
Current team responsibilities for a tracker, including who is assigned to each visible role.
Request
GET
https://api.nowmetrix.com/v1/responsibilities?site=TRACKER_ID
Use this endpoint to show operational responsibility data in internal tools without exposing email addresses or permission details.
Authentication
Requires an API key in the Authorization header: Authorization: Bearer nm_YOUR_KEY.
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
site |
string |
required | Tracker ID. The API key must have access to this tracker. |
cURL example
curl -H "Authorization: Bearer nm_YOUR_KEY" \
"https://api.nowmetrix.com/v1/responsibilities?site=TRACKER_ID"
Example response
{
"site": "TRACKER_ID",
"updated_at": "2026-06-26T14:24:30+02:00",
"timezone": "Europe/Zurich",
"active": true,
"date": "2026-06-26",
"responsibilities": [
{
"id": 12,
"name": "Homepage",
"assignee": {
"id": 935,
"name": "Maya Keller",
"initials": "MK",
"avatar_url": "https://imagedelivery.net/example/avatar/public"
},
"assigned_at": "2026-06-26 09:14:22"
},
{
"id": 13,
"name": "Video",
"assignee": null,
"assigned_at": null
}
]
}
Response fields
| Field | Type | Description |
|---|---|---|
site |
string |
Tracker ID used for the request. |
updated_at |
string |
Timestamp in the tracker timezone. |
timezone |
string |
Tracker timezone. |
active |
boolean |
Whether responsibility tracking is active for this tracker. |
date |
string |
Local tracker date in YYYY-MM-DD format. |
responsibilities[] |
array<object> |
Visible responsibility roles. |
responsibilities[].id |
integer |
Role ID. |
responsibilities[].name |
string |
Role name. |
responsibilities[].assignee |
object|null |
Assigned user, or null if nobody is assigned. |
responsibilities[].assignee.id |
integer |
Assigned user ID. |
responsibilities[].assignee.name |
string |
Assigned user's display name. |
responsibilities[].assignee.initials |
string |
Assigned user's initials. |
responsibilities[].assignee.avatar_url |
string |
Avatar URL, or an empty string if no avatar is available. |
responsibilities[].assigned_at |
string|null |
Assignment timestamp, or null if nobody is assigned. |
Freshness and caching
Responses are microcached per account, tracker, and assignment cache version for 10 seconds, with a 60-second stale window.
Errors
| HTTP | Code | Description |
|---|---|---|
| 400 | site_required |
The site query parameter is missing. |
| 401 | missing_token |
The Authorization header is missing. |
| 401 | invalid_token |
The token is invalid or revoked. |
| 403 | site_not_authorized |
The API key has no access to this tracker. |
| 429 | rate_limit_exceeded |
The rate limit has been exceeded. |
| 503 | redis_unavailable |
The realtime backend is temporarily unavailable. |
| 403 | account_not_resolved |
The account context could not be resolved. |
| 500 | encoding_failed |
The response could not be encoded. |
{
"error": {
"code": "invalid_token",
"message": "Bearer token is invalid or revoked."
}
}