Problem Tasks API
Access to problem tasks requires the problem-task scope; the problem scope does not give access to them.
List problem tasks
List all problem tasks for an account:
GET /problem_tasks
Response
status: 200 OK
[
{
"created_at": "2026-10-05T09:12:44-05:00",
"desired_completion_at": "2026-10-12T17:00:00-05:00",
"id": 154,
"member": {
"id": 18,
"name": "Ellen Brown",
"account": {
"id": "widget",
"name": "Widget International"
},
"nodeID": "..."
},
"position": 1,
"priority": "high",
"problem": {
"id": 2,
"subject": "SAP timeouts during month-end closing",
"nodeID": "..."
},
"problem_task_type": "investigation",
"status": "accepted",
"subject": "Correlate timeouts with the batch schedule",
"team": {
"id": 11,
"name": "Application Development",
"nodeID": "..."
},
"updated_at": "2026-10-06T11:03:17-05:00",
"nodeID": "..."
},
{
"created_at": "2026-10-05T09:15:02-05:00",
"desired_completion_at": null,
"id": 155,
"member": null,
"position": 2,
"priority": "medium",
"problem": {
"id": 2,
"subject": "SAP timeouts during month-end closing",
"nodeID": "..."
},
"problem_task_type": "workaround",
"status": "assigned",
"subject": "Move the invoice batch out of the closing window",
"team": {
"id": 11,
"name": "Application Development",
"nodeID": "..."
},
"updated_at": "2026-10-05T09:15:02-05:00",
"nodeID": "..."
},
"..."
]
The response contains these fields by default. Filtering and pagination are available to reduce/limit the collection of problem tasks.
This collection is served from the search index. A problem task appears in it shortly after it was created or updated, so a list retrieved immediately after a write may not contain the change yet. The subject filter matches the subject as a phrase rather than as a substring. Use Get a single problem task or Problems - Problem Tasks to read a problem task straight after a write.
Collection Fields
By default the following fields will appear in collections of problem tasks:
id subject problem problem_task_type priority status team member position desired_completion_at created_at updated_at
Obtain a different set of fields using the ?fields= parameter.
Filtering
Filtering is available for the following fields:
id problem subject problem_task_type priority status team member desired_completion_at closed_at created_at updated_at
A closed problem task is not found by a desired_completion_at filter.
Sorting
By default a collection of problem tasks is sorted ascending by position, and then by id.
The following fields are accepted by the ?sort= parameter:
id subject problem priority status team member position desired_completion_at closed_at created_at updated_at
Get a single problem task
GET /problem_tasks/:id
Response
status: 200 OK
{
"close_note": null,
"closed_at": null,
"closed_by": null,
"created_at": "2026-10-05T09:12:44-05:00",
"created_by": {
"id": 6,
"name": "Howard Tanner",
"account": {
"id": "widget",
"name": "Widget International"
},
"nodeID": "..."
},
"desired_completion_at": "2026-10-12T17:00:00-05:00",
"id": 154,
"instructions": "Collect the application logs of the last two weeks from the WDC-SAP-PRD01 server and compare the timeouts with the batch schedule.",
"manager": {
"id": 6,
"name": "Howard Tanner",
"account": {
"id": "widget",
"name": "Widget International"
},
"nodeID": "..."
},
"member": {
"id": 18,
"name": "Ellen Brown",
"account": {
"id": "widget",
"name": "Widget International"
},
"nodeID": "..."
},
"position": 1,
"priority": "high",
"problem": {
"id": 2,
"subject": "SAP timeouts during month-end closing",
"nodeID": "..."
},
"problem_task_type": "investigation",
"request": null,
"risk": null,
"status": "accepted",
"subject": "Correlate timeouts with the batch schedule",
"team": {
"id": 11,
"name": "Application Development",
"nodeID": "..."
},
"updated_at": "2026-10-06T11:03:17-05:00",
"attachments": [],
"nodeID": "..."
}
The response contains these fields.
Create a problem task
POST /problem_tasks
When creating a new problem task these fields are available. The problem_id field is required and selects the problem the task is added to.
Example
$ curl -H "Authorization: Bearer <oauth-token>" \
-H "X-Xurrent-Account: wdc" \
-X POST \
-d '{"problem_id":2,"subject":"Correlate timeouts with the batch schedule","problem_task_type":"investigation","priority":"high"}' \
https://api.xurrent.com/v1/problem_tasks
Only problem_id and subject are required. The task gets the team of the problem, the status assigned, the priority medium and the default type of the account, unless other values are provided.
Response
status: 201 Created
{
"created_at": "...",
"...": "..."
}
The response contains all fields of the created problem task and is similar to the response in Get a single problem task
Update a problem task
PATCH /problem_tasks/:id
When updating a problem task these fields are available.
Response
status: 200 OK
{
"created_at": "...",
"...": "..."
}
The response contains all fields of the updated problem task and is similar to the response in Get a single problem task
Problem tasks cannot be deleted.
Fields
- attachments
- Readonly aggregated Attachments
- close_note
- Optional text — The Close note field explains why the problem task was completed or canceled. It is required when the status is
completedorcanceled, and it is cleared when a closed problem task is reopened. - closed_at
- Readonly datetime — The Closed field is set to the current date and time when the problem task is completed or canceled. It is cleared when the problem task is reopened.
- closed_by
- Readonly reference to Person — The Closed by field is set to the person who completed or canceled the problem task. It is cleared when the problem task is reopened.
- created_at
- Readonly datetime — The date and time at which the problem task was created.
- created_by
- Readonly reference to Person — The person who created the problem task.
- desired_completion_at
- Optional datetime — The Desired completion field is used to specify the date and time by which the problem task is expected to be completed.
- id
- Readonly integer — The unique ID of the problem task.
- instructions
- Optional text (max 64KB) — The Instructions field is used to describe the work that needs to be done for the problem task.
- instructions_attachments
- Writeonly attachments The attachments used in the Instructions field.
- manager
- Readonly reference to Person — The Manager field shows the person who is selected in the Manager field of the problem that this problem task belongs to.
- member
- Optional reference to Person — The Member field is used to select the person to whom the problem task is assigned. The member must be a member of the selected team. A member is required unless the status is
assignedorcanceled. Clearing the member of an open problem task sets its status toassigned. Setting the status toacceptedmakes the API user the member, unless a member is provided. Completing a problem task without a member makes the API user the member, and moves the task to a team of the API user when they are not a member of its team. - position
- Optional integer — The Position field is used to specify the position of the problem task relative to the other tasks of the problem. Setting it moves the problem task and renumbers the other tasks of the problem. The position can only be set by someone who can see every task of the problem.
- priority
- Optional enum — The Priority field is used to indicate how important the problem task is for solving the problem. A problem cannot be solved while one of its tasks with priority
highis open. Valid values are: -
low: Low - Optionalmedium: Medium - Expected (default)high: High - Essential to the fix
- problem
- Required reference to Problem — The problem that the problem task belongs to. It is set with
problem_idwhen the problem task is created and cannot be changed afterwards. - problem_task_type
- Optional string — The reference of the problem task type, for example
investigation,workaround,corrective,preventive,verificationorother. The types are defined per account, see Problem Task Types Import. A problem task saved without a type gets the default type of the account (corrective). An unknown or disabled reference is rejected. - request
- Optional reference to Request — The request that is linked to the problem task.
- risk
- Optional reference to Risk — The risk that is linked to the problem task. This field is only available for accounts in which risk management is enabled.
- status
- Optional enum — The Status field is used to select the current status of the problem task. Valid values are:
-
assigned: Assigned (default)accepted: Acceptedin_progress: In Progresscompleted: Completedcanceled: Canceled
- subject
- Required string (max 255) — The Subject field is used to enter a short description of the objective of the problem task.
- team
- Optional reference to Team — The Team field is used to select the team to which the problem task is assigned. It defaults to the team of the problem.
- updated_at
- Readonly datetime — The date and time of the last update of the problem task. If the problem task has no updates it contains the
created_atvalue.