Как получить информацию о документе из сделки через REST API для отображения на сайте?

Как можно получить документ из сделки в Битрикс24 с помощью Rest API? В моем коде я использую метод 'crm.deal.get', но результат не содержит информации о документе. Что я делаю не так и как можно сделать вывод документа?
  • 20 июня 2024 г. 7:31
Ответы на вопрос 1
Для того чтобы получить информацию о документе из сделки через REST API в Битрикс24, вы можете воспользоваться методом 'crm.deal.get', но вам также необходимо использовать метод 'disk.folder.getlist' для получения списка всех документов, связанных с сделкой.

Пример кода для получения информации о документе из сделки:

```php
<?php

$dealId = 123; // Идентификатор сделки

$dealData = executeRestMethod('crm.deal.get', array('ID' => $dealId));

if ($dealData) {
    $dealFolderId = $dealData['UF_CRM_XXX']; // Параметр UF_CRM_XXX хранит идентификатор папки, где хранятся документы сделки
    
    $documentsData = executeRestMethod('disk.folder.getlist', array('id' => $dealFolderId));

    if ($documentsData) {
        foreach ($documentsData['items'] as $document) {
            // Вывод информации о документе
            echo "Имя документа: " . $document['name'] . "<br>";
            echo "Ссылка на документ: " . $document['downloadUrl'] . "<br>";
            // Другие необходимые данные о документе
        }
    }
}

function executeRestMethod($method, $params) {
    $queryUrl = 'https://ваш_портал/rest/' . $method . '.json';
    $queryData = http_build_query(array_merge($params, array('auth' => 'ваш_ключ_авторизации')));

    $curl = curl_init();
    curl_setopt_array($curl, array(
        CURLOPT_SSL_VERIFYPEER => 0,
        CURLOPT_POST => 1,
        CURLOPT_HEADER => 0,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_URL => $queryUrl,
        CURLOPT_POSTFIELDS => $queryData
    ));

    $result = curl_exec($curl);
    curl_close($curl);

    return json_decode($result, true);
}
?>
```

В данном примере кода использованы функции executeRestMethod для выполнения запросов к REST API Битрикс24. Поменяйте значения переменных $dealId, UF_CRM_XXX и 'ваш_ключ_авторизации' на актуальные для вашего случая.

Таким образом, вы можете получить информацию о документе из сделки и отобразить её на вашем сайте.
Похожие вопросы