Битрикс: два способа отправить файл
 
 В битриксе с некоторых пор есть встроенный функционал для работы HTTP запросами. Т.е. не обязательно напрямую дёргать curl  или привлекать какой-нибудь Guzzle . Плюс это или минус - оставлю решать каждому самостоятельно. Тут покажу два варианта, как можно отправить файл встроенным битриксовым методом. Это нужно, например, при интеграции с каким-то API. Примеров не нашлось ни в официальной документации , ни в полезном разжёвывании .   Вариант в теле запроса через send()  Тут надо обратить внимание на заголовок: тип "multipart/form-data"; наличие вложения в виде файла "Content-Disposition". Сам файл отправляем в теле запроса через вызов содержимого файла $file->getContents().   $result = []; // Проверяем существование файла на сервере $file = new \Bitrix\Main\IO\File(     \Bitrix\Main\Application::getDocumentRoot() . '/upload/file.zip' ); if ($file->isExists()) {     $httpClient = new HttpClient(         [  ...
