Skip to content

Delegations

Delegations route requests to temporary coverage contacts when the original participant member is unavailable or has delegated responsibility.

MethodPathRequired scope
GET/api/v1/delegationsapi:delegations:read
POST/api/v1/delegationsapi:delegations:write
GET/api/v1/delegations/:idapi:delegations:read
PATCH/api/v1/delegations/:idapi:delegations:write
DELETE/api/v1/delegations/:idapi:delegations:write
Terminal window
curl "https://roster.example.com/api/v1/delegations?project_id=proj_123&status=active&limit=25" \
-H "Authorization: Bearer ${ROSTER_API_KEY}"

Supported filters include project_id, participant_id, delegator_user_id, delegate_user_id, scope, status, and limit. scope accepts all_participants or participant; status accepts active, expired, revoked, or upcoming; limit accepts values from 1 to 100.

Delegation reads use the same visibility model as the dashboard: admins can read all delegations; project owners can read participant-scoped delegations for owned participants when the delegator is represented on that participant; other non-admin callers can read only their own eligible delegation context. Delegation writes still require admin access, project ownership for the participant, or the caller’s own eligible delegation context.

Terminal window
curl -X POST "https://roster.example.com/api/v1/delegations" \
-H "Authorization: Bearer ${ROSTER_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"delegate_user_id": "drec_delegate",
"delegator_user_id": "drec_delegator",
"scope": "participant",
"participant_id": "part_123",
"starts_at": "2026-05-27",
"ends_at": "2026-06-27"
}'