crm.productsection.list
Получить список разделов
Описание
Метод crm.productsection.list возвращает список разделов товаров по фильтру. Является реализацией списочного метода для разделов товаров. Ожидается, что в фильтре будет определён параметр CATALOG_ID. В противном случае разделы будут выбираться из каталога по умолчанию.
Параметры
select
array
необязательный
Массив содержит список полей, которые необходимо выбрать
filter
object
необязательный
Объект для фильтрации выбранных элементов
order
object
необязательный
Объект для сортировки выбранных элементов
Примеры запроса
catalogId=$(prompt "Введите ID каталога")
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"order": { "NAME": "ASC" },
"filter": { "CATALOG_ID": '"$catalogId"' },
"select": [ "ID", "NAME" ]
}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/crm.productsection.list
catalogId=$(prompt "Введите ID каталога")
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"order": { "NAME": "ASC" },
"filter": { "CATALOG_ID": '"$catalogId"' },
"select": [ "ID", "NAME" ],
"auth": "**put_access_token_here**"
}' \
https://**put_your_bitrix24_address**/rest/crm.productsection.list
// callListMethod: Получает все данные сразу. Используйте только для небольших выборок (< 1000 элементов) из-за высокой нагрузки на память.
var catalogId = prompt("Введите ID каталога");
try {
const response = await $b24.callListMethod(
'crm.productsection.list',
{
order: { "NAME": "ASC" },
filter: { "CATALOG_ID": catalogId },
select: [ "ID", "NAME" ]
}
);
const items = response.getData() || [];
for (const entity of items) { console.log('Entity:', entity); }
} catch (error) {
console.error('Request failed', error);
}
// fetchListMethod: Выбирает данные по частям с помощью итератора. Используйте для больших объемов данных для эффективного потребления памяти.
var catalogId = prompt("Введите ID каталога");
try {
const generator = $b24.fetchListMethod('crm.productsection.list', {
order: { "NAME": "ASC" },
filter: { "CATALOG_ID": catalogId },
select: [ "ID", "NAME" ]
}, 'ID');
for await (const page of generator) {
for (const entity of page) { console.log('Entity:', entity); }
}
} catch (error) {
console.error('Request failed', error);
}
// callMethod: Ручное управление постраничной навигацией через параметр start. Используйте для точного контроля над пакетами запросов. Для больших данных менее эффективен, чем fetchListMethod.
var catalogId = prompt("Введите ID каталога");
try {
const response = await $b24.callMethod('crm.productsection.list', {
order: { "NAME": "ASC" },
filter: { "CATALOG_ID": catalogId },
select: [ "ID", "NAME" ]
}, 0);
const result = response.getData().result || [];
for (const entity of result) { console.log('Entity:', entity); }
} catch (error) {
console.error('Request failed', error);
}
$catalogId = readline("Введите ID каталога");
try {
$response = $b24Service
->core
->call(
'crm.productsection.list',
[
'order' => ['NAME' => 'ASC'],
'filter' => ['CATALOG_ID' => $catalogId],
'select' => ['ID', 'NAME'],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
if ($result->more()) {
$result->next();
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error: ' . $e->getMessage();
}
var catalogId = prompt("Введите ID каталога");
BX24.callMethod(
"crm.productsection.list",
{
order: { "NAME": "ASC" },
filter: { "CATALOG_ID": catalogId },
select: [ "ID", "NAME" ]
},
function(result)
{
if(result.error())
console.error(result.error());
else
{
console.dir(result.data());
if(result.more())
result.next();
}
}
);
require_once('crest.php');
$catalogId = readline("Введите ID каталога: ");
$result = CRest::call(
'crm.productsection.list',
[
'order' => [ 'NAME' => 'ASC' ],
'filter' => [ 'CATALOG_ID' => $catalogId ],
'sel ect' => [ 'ID', 'NAME' ]
]
);
if (isset($result['error'])) {
echo "Error: " . $result['error_description'] . "\n";
} else {
echo '<PRE>';
print_r($result['result']);
echo '</PRE>';
}

