# bot.uploadFileToCdnAndGetNewUrl()

### Залить файл на CDN и получить новую ссылку

```JavaScript
bot.uploadFileToCdnAndGetNewUrl(string $fileUrl, array|object|null $cdnConfig = null)
```

##### Описание:

Заливает файл на CDN и возвращает новую ссылку, а также доп. параметры с описанием файла.

##### Атрибуты:

<table border="1" id="bkmrk-%D0%98%D0%BC%D1%8F-%D0%A2%D0%B8%D0%BF-%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5-key-0" style="border-collapse: collapse; width: 100.001%; height: 89.1204px;"><tbody><tr style="height: 29.7917px; background-color: #ced4d9;"><td style="width: 33.3634%; height: 29.7917px;">Имя</td><td style="width: 33.3634%; height: 29.7917px;">Тип</td><td style="width: 33.3634%; height: 29.7917px;">Описание</td></tr><tr style="height: 29.7917px;"><td style="width: 33.3634%; height: 29.7917px;">fileUrl</td><td style="width: 33.3634%; height: 29.7917px;">string</td><td style="width: 33.3634%; height: 29.7917px;">URL файла</td></tr><tr style="height: 29.537px;"><td style="width: 33.3634%; height: 29.537px;">cdnConfig </td><td style="width: 33.3634%; height: 29.537px;">array|object|null </td><td style="width: 33.3634%; height: 29.537px;">Конфиг</td></tr></tbody></table>

##### Возвращает:

**array** - данные файла.

В случае успеха возвращает массив вида:

```JavaScript
[
	'result' => true,
	'type' => (string) $type,
	'url' => (string) $newUrl,
	'name' => (string) $fileName,
	'size_kb' => (float) $fileSizeKb,
	'max_size_by_type_kb' => (float) $maxFileSize,
]
```

Где

 $**type** – тип файла;

 $**newUrl** – ссылка на файла в CDN;

 $**fileName** – имя загруженного файла;

 $**fileSizeKb** – размер загруженного файла в Кб;

 $**maxFileSize** - максимальное ограничение размера файла в зависимости от типа файла.

 В случае провала возвращает массив вида:

```JavaScript
[
	'result' => false,
	'error' => true,
	'error_code' => (string) ‘вид ошибки’, // например 'error_when_upload' или ‘file_size_exceeded’
	'error_message' => (string) описание ошибки,
]

```