tasks.flow.Flow.isExists
Проверить существование потока
Описание
Метод tasks.flow.Flow.isExists проверяет, существует ли поток с указанным именем. Если указан id, проверяет, существуют ли потоки с таким же именем, кроме указанного.
Параметры
flowData
object
обязательный
Объект с данными для проверки существования потока
name
string
обязательный
Название потока, которое нужно проверить
id
integer
необязательный
Идентификатор потока для исключения из проверки (необязательный).
Получить идентификатор можно методом создания нового потока tasks.flow.Flow.create или методом получения задачи tasks.task.get для задачи из потока
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"flowData": {
"name": "Flow Name"
}
}' \
https://your-domain.bitrix24.com/rest/_USER_ID_/_CODE_/tasks.flow.Flow.isExists
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-d '{
"flowData": {
"name": "Flow Name"
}
}' \
https://your-domain.bitrix24.com/rest/tasks.flow.Flow.isExists
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
// Shape of the payload returned in result (match the "response handling" section of the page)
type FlowIsExistsResult = {
exists: boolean
}
try {
const response = await $b24.actions.v2.call.make<FlowIsExistsResult>({
method: 'tasks.flow.Flow.isExists',
params: {
flowData: {
name: 'Flow Name',
},
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Flow exists:', result.exists)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function checkFlowIsExists() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'tasks.flow.Flow.isExists',
params: {
flowData: {
name: 'Flow Name',
},
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Flow exists:', result.exists)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', checkFlowIsExists)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
flow_data = {
"name": "Flow Name",
}
try:
bitrix_response = client.tasks.flow.flow.is_exists(
flow_data=flow_data,
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$response = $b24Service
->core
->call(
'tasks.flow.Flow.isExists',
[
'flowData' => [
'name' => 'Flow Name'
]
]
);
$result = $response
->getResponseData()
->getResult();
if ($result->error()) {
echo 'Error: ' . $result->error();
} else {
echo 'Info: ' . print_r($result->data(), true);
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error checking flow existence: ' . $e->getMessage();
}
BX24.callMethod(
'tasks.flow.Flow.isExists',
{
flowData: {
name: 'Flow Name'
}
},
function(result) {
if (result.error()) {
console.error(result.error());
} else {
console.info(result.data());
}
}
);
require_once('crest.php'); // подключение CRest PHP SDK
$flowData = [
"name" => "Flow Name"
];
// выполнение запроса к REST API
$result = CRest::call(
'tasks.flow.Flow.isExists',
[
'flowData' => $flowData
]
);
// Обработка ответа от Битрикс24
if ($result['error']) {
echo 'Error: '.$result['error_description'];
} else {
print_r($result['result']);
}
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "tasks.flow.Flow.isExists", b24.Params{
"flowData": b24.Params{
"name": "Flow Name",
},
})
if err != nil {
return fmt.Errorf("tasks.flow.Flow.isExists: %w", err)
}
var item struct {
Exists bool `json:"exists"`
}
if err := json.Unmarshal(res.Result, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.Exists)
Ответ
HTTP-статус: 200
{
"result": {
"exists": true
}
}
Возвращаемые данные
result
object
Объект с результатом операции
exists
boolean
Существует ли поток с указанным именем
Обработка ошибок
HTTP-статус: 400
{
"error": "0",
"error_description": "Flow not found"
}
| Код | Описание | Значение |
|---|---|---|
0 |
Доступ запрещен или поток не найден | Тариф портала не позволяет работать с потоками или у пользователя нет прав на выполнение проверки |
0 |
Unknown error |
Неизвестная ошибка |

