# crm.product.property.add

URL: https://chugunov.pro/api-bitrix24/crm/outdated/products/crm-product-property-add/
Проверено на Битрикс24 REST API, обновлено 11.09.2026 (ревизия источника fb39d6c).
Источник: официальная документация Битрикс24 (bitrix-tools/b24-rest-docs, лицензия MIT, © Bitrix). Справочник независимый, официальной документацией не является.

Добавить свойство товаров
Scope: `crm`
Кто может выполнять метод: администратор, пользователь с правом «Разрешить изменять настройки» в CRM

> Устаревший метод. Развитие метода остановлено. Используйте catalog.productProperty.add.

## Описание

Метод `crm.product.property.add` создает новое свойство товара.

## Параметры

- `fields` `array` — необязательный. Значения полей для создания свойства товара.
  Чтобы узнать требуемый формат полей, выполните метод [crm.product.property.fields](https://chugunov.pro/api-bitrix24/crm/outdated/products/crm-product-property-fields/) и посмотрите формат пришедших значений этих полей

## Примеры запроса

### JS

```js
try
{
    const getCatalogId = async () =>
    {
        try
        {
            const catalogListResponse = await $b24.callMethod(
                "crm.catalog.list",
                {filter: {"ORIGINATOR_ID": "", "ORIGIN_ID": ""}}
            );

            if (catalogListResponse.error())
            {
                console.error(catalogListResponse.error());
            }
            else
            {
                let catalogId = 0;
                if (catalogListResponse.total() !== 1)
                {
                    catalogId = 0;
                }
                else
                {
                    const data = catalogListResponse.getData().result;
                    if (data && data instanceof Array && typeof(data[0]) === "object" && data[0]["ID"])
                    {
                        catalogId = parseInt(data[0]["ID"]);
                    }
                }
                if (catalogId <= 0)
                {
                    console.error("Не удалось получить идентификатор товарного каталога CRM");
                }
                else
                {
                    await addPropertyExample(catalogId);
                }
            }
        }
        catch (error)
        {
            console.error(error);
        }
    };

    const addPropertyExample = async (catalogId) =>
    {
        try
        {
            const propertyAddResponse = await $b24.callMethod(
                "crm.product.property.add",
                {
                    fields: {
                        "ACTIVE": "Y",
                        "IBLOCK_ID": catalogId,
                        "NAME": "Свойство - HTML/текст",
                        "SORT": 500,
                        "DEFAULT_VALUE": {
                            "TYPE": "html",
                            "TEXT": "<u><b>Вкусные</b> \"<span style=\"color: #00a650;\">африканские бананы</span>\"</u>"
                        },
                        "USER_TYPE_SETTINGS": {
                            "HEIGHT": 300
                        },
                        "USER_TYPE": "HTML",
                        "PROPERTY_TYPE": "S"
                    }
                }
            );

            const result = propertyAddResponse.getData().result;
            console.dir(result);
        }
        catch (error)
        {
            console.error(error);
        }
    };

    const start = async () =>
    {
        await getCatalogId();
    };

    start();
}
catch (error)
{
    console.error(error);
}
```

### PHP

```php
try {
    $responseCatalog = $b24Service
        ->core
        ->call(
            'crm.catalog.list',
            [
                'filter' => ['ORIGINATOR_ID' => '', 'ORIGIN_ID' => ''],
            ]
        );

    $catalogId = 0;
    $resultCatalog = $responseCatalog
        ->getResponseData()
        ->getResult();

    if ($resultCatalog->total() !== 1) {
        $catalogId = 0;
    } else {
        $data = $resultCatalog->data();
        if ($data && is_array($data) && is_object($data[0]) && isset($data[0]["ID"])) {
            $catalogId = (int)$data[0]["ID"];
        }
    }

    if ($catalogId <= 0) {
        throw new Exception("Не удалось получить идентификатор товарного каталога CRM");
    } else {
        $responseProperty = $b24Service
            ->core
            ->call(
                'crm.product.property.add',
                [
                    'fields' => [
                        'ACTIVE'          => 'Y',
                        'IBLOCK_ID'       => $catalogId,
                        'NAME'            => 'Свойство - HTML/текст',
                        'SORT'            => 500,
                        'DEFAULT_VALUE'   => [
                            'TYPE' => 'html',
                            'TEXT' => '<u><b>Вкусные</b> "<span style="color: #00a650;">африканские бананы</span>"</u>',
                        ],
                        'USER_TYPE_SETTINGS' => [
                            'HEIGHT' => 300,
                        ],
                        'USER_TYPE'       => 'HTML',
                        'PROPERTY_TYPE'   => 'S',
                    ],
                ]
            );

        $resultProperty = $responseProperty
            ->getResponseData()
            ->getResult();

        echo 'Success: ' . print_r($resultProperty, true);
        // Нужная вам логика обработки данных
        processData($resultProperty);
    }

} catch (Throwable $e) {
    error_log($e->getMessage());
    echo 'Error adding product property: ' . $e->getMessage();
}
```

### BX24.js

```js
// Создание свойства пользовательского типа S:HTML
function addPropertyExample(catalogId)
{
    BX24.callMethod(
        "crm.product.property.add",
        {
            fields: {
                "ACTIVE": "Y",
                "IBLOCK_ID": catalogId,
                "NAME": "Свойство - HTML/текст",
                "SORT": 500,
                "DEFAULT_VALUE": {
                    "TYPE": "html",
                    "TEXT": "<u><b>Вкусные</b> \"<span style=\"color: #00a650;\">африканские бананы</span>\"</u>"
                },
                "USER_TYPE_SETTINGS": {
                    "HEIGHT": 300
                },
                "USER_TYPE": "HTML",
                "PROPERTY_TYPE": "S"
            }
        },
        function(result)
        {
            if(result.error())
                console.error(result.error());
            else
                console.dir(result.data());
        }
    );
}

function getCatalogId()
{
    BX24.callMethod(
        "crm.catalog.list",
        {filter: {"ORIGINATOR_ID": "", "ORIGIN_ID": ""}},
        function(result)
        {
            if(result.error())
            {
                console.error(result.error());
            }
            else
            {
                var catalogId = 0;
                if (result.total() !== 1)
                {
                    catalogId = 0
                }
                else
                {
                    data = result.data();
                    if (data && data instanceof Array && typeof(data[0]) === "object" && data[0]["ID"])
                    {
                        catalogId = parseInt(data[0]["ID"]);
                    }
                }
                if (catalogId <= 0)
                {
                    console.error("Не удалось получить идентификатор товарного каталога CRM");
                }
                else
                {
                    addPropertyExample(catalogId);
                }
            }
        }
    );
}

function start()
{
    getCatalogId();
}

start();
```

### PHP CRest

```php
require_once('crest.php');

// Function to add a custom property
function addPropertyExample($catalogId) {
    $result = CRest::call(
        'crm.product.property.add',
        [
            'fields' => [
                'ACTIVE' => 'Y',
                'IBLOCK_ID' => $catalogId,
                'NAME' => 'Свойство - HTML/текст',
                'SORT' => 500,
                'DEFAULT_VALUE' => [
                    'TYPE' => 'html',
                    'TEXT' => '<u><b>Вкусные</b> "<span style="color: #00a650;">африканские бананы</span>"</u>'
                ],
                'USER_TYPE_SETTINGS' => [
                    'HEIGHT' => 300
                ],
                'USER_TYPE' => 'HTML',
                'PROPERTY_TYPE' => 'S'
            ]
        ]
    );

    echo '<PRE>';
    print_r($result);
    echo '</PRE>';
}

// Function to get catalog ID
function getCatalogId() {
    $result = CRest::call(
        'crm.catalog.list',
        ['filter' => ['ORIGINATOR_ID' => '', 'ORIGIN_ID' => '']]
    );

    if ($result['error']) {
        echo 'Error: ' . $result['error_description'];
    } else {
        $catalogId = 0;
        if ($result['total'] !== 1) {
            $catalogId = 0;
        } else {
            $data = $result['result'];
            if ($data && is_array($data) && isset($data[0]['ID'])) {
                $catalogId = intval($data[0]['ID']);
            }
        }
        if ($catalogId <= 0) {
            echo "Не удалось получить идентификатор товарного каталога CRM";
        } else {
            addPropertyExample($catalogId);
        }
    }
}

// Start the process
getCatalogId();
```

Оригинал в официальной документации: https://apidocs.bitrix24.ru/api-reference/crm/outdated/products/crm-product-property-add.html
