Get the list of task results tasks.task.result.list
Scope:
taskWho can execute the method: any user with access to the task
The method tasks.task.result.list retrieves the list of results associated with a task.
Method Parameters
Required parameters are marked with *
|
Name |
Description |
|
taskId* |
The identifier of the task from which to retrieve results. The task identifier can be obtained when creating a new task or by using the get task list method |
Code Examples
How to Use Examples in Documentation
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"taskId":8017}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/tasks.task.result.list
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"taskId":8017,"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/tasks.task.result.list
// callListMethod: Retrieves all data at once. Use only for small selections (< 1000 items) due to high memory usage.
try {
const response = await $b24.callListMethod(
'tasks.task.result.list',
{ taskId: 8017 },
(progress: number) => { console.log('Progress:', progress) }
);
const items = response.getData() || [];
for (const entity of items) { console.log('Entity:', entity) }
} catch (error: any) {
console.error('Request failed', error)
}
// fetchListMethod: Retrieves data in parts using an iterator. Use it for large data volumes to optimize memory usage.
// The method implements iterative sampling using a generator, which
// allows processing data in parts and efficiently using memory.
try {
const generator = $b24.fetchListMethod('tasks.task.result.list', { taskId: 8017 }, 'ID');
for await (const page of generator) {
for (const entity of page) { console.log('Entity:', entity) }
}
} catch (error: any) {
console.error('Request failed', error)
}
// callMethod: Manually controls pagination through the start parameter. Use it for precise control of request batches. For large datasets, it is less efficient than fetchListMethod.
// of data retrieval through the start parameter. Suitable for scenarios where
// precise control over request batches is required. However, with large
// volumes of data, it may be less efficient compared to
// fetchListMethod: Retrieves data in parts using an iterator. Use it for large data volumes to optimize memory usage.
try {
const response = await $b24.callMethod('tasks.task.result.list', { taskId: 8017 }, 0);
const result = response.getData().result || [];
for (const entity of result) { console.log('Entity:', entity) }
} catch (error: any) {
console.error('Request failed', error)
}
try {
$response = $b24Service
->core
->call(
'tasks.task.result.list',
[
'taskId' => 8017
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
processData($result);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error listing task results: ' . $e->getMessage();
}
BX24.callMethod(
'tasks.task.result.list',
{
"taskId": 8017
},
function(result){
console.info(result.data());
console.log(result);
}
);
require_once('crest.php');
$result = CRest::call(
'tasks.task.result.list',
[
'taskId' => 8017
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
Response Handling
HTTP status: 200
{
"result": [
{
"id": 23,
"taskId": 8017,
"commentId": 3197,
"createdBy": 503,
"createdAt": "2025-07-15T14:30:00+02:00",
"updatedAt": "2025-08-19T16:45:48+02:00",
"status": 0,
"text": "The client signed the documents",
"formattedText": "The client signed the documents",
"files": []
},
{
"id": 21,
"taskId": 8017,
"commentId": 3199,
"createdBy": 503,
"createdAt": "2025-07-13T14:30:00+02:00",
"updatedAt": "2025-08-19T16:45:56+02:00",
"status": 0,
"text": "Sent documents to the client. The client promises to respond on [B]Monday[\/B].",
"formattedText": "Sent documents to the client. The client promises to respond on \u003Cb\u003EMonday\u003C\/b\u003E.",
"files": [1055,1057,1059,1061,1063]
}
],
"time": {
"start": 1755611166.509052,
"finish": 1755611166.542696,
"duration": 0.03364396095275879,
"processing": 0.00906991958618164,
"date_start": "2025-08-19T16:46:06+02:00",
"date_finish": "2025-08-19T16:46:06+02:00",
"operating_reset_at": 1755611766,
"operating": 0
}
}
Returned Data
|
Name |
Description |
|
result |
An array of objects, where each object describes a task result |
|
id |
The identifier of the result |
|
taskId |
The identifier of the task |
|
commentId |
The identifier of the comment marked as a result |
|
createdBy |
The identifier of the user who marked the result |
|
createdAt |
The date and time the result was marked in ISO 8601 format |
|
updatedAt |
The date and time of the last modification of the result in ISO 8601 format |
|
status |
The status of the result. Possible values:
The result becomes closed after the task is completed and retains this status after the task is resumed. Only new results in an unfinished task will be open. A comment with an open result cannot be added again to the result. If the result is closed, adding is possible |
|
text |
The text of the result |
|
formattedText |
The text of the result with formatting |
|
files |
A list of file identifiers attached to the result. Contains an empty array if there are no files in the comment |
|
time |
Information about the time taken for the request |
Error Handling
HTTP status: 400
{
"error":"100",
"error_description":"Invalid value {value} to match with parameter {commentId}. Should be value of type int."
}
|
Name |
Description |
|
error |
String error code. It may consist of digits, Latin letters, and underscores |
|
error_description |
Textual description of the error. The description is not intended to be shown to the end user in its raw form |
Possible Error Codes
|
Code |
Description |
Value |
|
|
Access denied. |
The user does not have access to the task or a task with such |
|
|
Invalid value {value} to match with parameter {commentId}. Should be value of type int. |
An invalid type value was passed in the |
Statuses and System Error Codes
HTTP Status: 20x, 40x, 50x
The errors described below may occur when calling any method.
|
Status |
Code |
Description |
|
|
|
An internal server error has occurred, please contact the server administrator or Bitrix24 technical support |
|
|
|
An internal server error has occurred, please contact the server administrator or Bitrix24 technical support |
|
|
|
The request intensity limit has been exceeded |
|
|
|
The current method is not allowed to be called using batch |
|
|
|
The maximum length of parameters passed to the batch method has been exceeded |
|
|
|
Invalid access token or webhook code |
|
|
|
The methods must be called using the HTTPS protocol |
|
|
|
The REST API is blocked due to overload. This is a manual individual block, to remove it you need to contact Bitrix24 technical support |
|
|
|
The REST API is available only on commercial plans |
|
|
|
The user whose access token or webhook was used to call the method lacks permissions |
|
|
|
The manifest is not available |
|
|
|
The request requires higher privileges than those provided by the webhook token |
|
|
|
The provided access token has expired |
|
|
|
The user does not have access to the application. This means that the application is installed, but the account administrator has allowed access to this application only for specific users |
|
|
|
The public part of the site is closed. To open the public part of the site on an on-premise installation, disable the option "Temporary closure of the public part of the site". Path to the setting: Desktop > Settings > Product Settings > Module Settings > Main Module > Temporary closure of the public part of the site |
Continue Learning
- Task Results: Overview of Methods
- Add Comment to Result tasks.task.result.addFromComment
- Remove Comment from Result tasks.task.result.deleteFromComment