Beta — Problem Management is enabled per organization. If it isn’t enabled for yours, every endpoint on this page returns
404. Contact your account team to request access.ir.all and all.
Overview
A problem role, such as Problem Manager, describes a responsibility on a problem. Roles are defined once for your organization and assigned to users problem by problem:
Requests and responses use JSON:API with
Content-Type: application/vnd.api+json. Roles use the problem_roles resource type and assignments use problem_role_assignments. The API reads roles but doesn’t create or edit them.
Your role’s Problems permissions control access: read to list roles and assignments, and update to assign roles and remove assignments. A user who already holds a role on a problem can also manage role assignments on that problem.
Listing Problem Roles
GET /v1/problem_roles is paginated with page[number] and page[size], and sorted by position by default.
Each filter accepts one value or a comma-separated list, and also supports
[eq], [not_eq], [in], and [not_in].
sort accepts name, slug, position, enabled, created_at, and updated_at. Prefix with - for descending order.
Assigning a Role
POST /v1/problems/{problem_id}/role_assignments assigns a role to a user on a problem. Both attributes are required.
string
required
The role to assign. It must be an enabled role in your organization.
integer
required
The user to assign. They must be a member of your organization.
201 with the new assignment. The assigned user is notified and starts following the problem. A user can hold several roles on the same problem, but assigning the same role to the same user twice returns 422.
The response includes the problem_role and the user it refers to. Either is null when the caller doesn’t have permission to read it.
When a problem is created, its creator is assigned the Problem Manager role automatically if that role is enabled.
Listing and Removing Assignments
GET /v1/problems/{problem_id}/role_assignments lists a problem’s assignments, oldest first, paginated with page[number] and page[size].
DELETE /v1/problems/{problem_id}/role_assignments/{id} removes one assignment and returns it with 200. An assignment ID from another problem returns 404.