VkUpload POST GET

Метод предназначен для загрузки файлов на сервер ВКонтакте и может быть полезен, когда нет возможности работать с серверами ВКонтакте напрямую (например, при разработке JavaScript приложения).


Запросы следует отправлять на адрес:

Анонимные запросы запрещены. Требуется авторизация.

Поддерживаются запросы методом GET и POST.

По умолчанию ответ сервера будет в формате JSON. Для получения ответа в другом формате, можно добавить расширение к файлу в адресе: .xml, .html или .txt. Например: /v2/VkUpload.xml Либо использовать HTTP-заголовок Accept: text/xml, text/html или text/plain.


Параметры

Имя параметра Тип Обязательный По умолчанию Описание
access_token String Да NULL Маркер доступа (access token) пользователя ВКонтакте, от имени которого будет выполнен запрос.
upload_method String Да NULL Название метода ВКонтакте, который должен использоваться для получения сервера для загрузки файлов. Например: photos.getUploadServer.
album_id Int64 Условно NULL Идентификатор фотоальбома на сервере ВКонтакте, если загружаются фотографии.
group_id Int64 Условно NULL Идентификатор группы на сервере ВКонтакте, если данные следует поместить в группу.
user_id Int64 Условно NULL Идентификатор пользователя ВКонтакте, если загружаемые данные следует связать с пользователем (как правило, по умолчанию будет использоваться пользователь, которому принадлежит маркер доступа (access_token)).
file HttpPostedFileBase[][] Условно NULL Массив файлов, которые следует передать во ВКонтакте.
url String[] Условно NULL Массив адресов файлов, которые следует скачать и передать во ВКонтакте.
Общие параметры

В таблице ниже представлен список параметров, которые могут быть использованы при запросе к любому методу API.

Имя параметра Тип Обязательный По умолчанию Описание
appId Int32 Нет NULL Идентификатор приложения.
appSecret String Условно NULL Секретный ключ приложения.
token String Нет NULL Маркер доступа клиента, полученный методом GetToken.
formatting ResponseFormatting Нет None Определяет параметры форматирования выдачи результатов.
details Boolean Нет False Позволяет отобразить дополнительную информацию о запросе.
cp String Нет UTF-8 Имя кодовой страницы.
lang Language Нет Auto Язык, на котором будут выдаваться системные сообщения. Этот параметр также можно использовать при работе со справочной информацией API.
auth Boolean Нет False При наличии этого параметра, сервер вернет ответ с кодом HTTP401 и потребует указание идентификатора приложения и секретного ключа в HTTP заголовке Authorization.

Результат

Возвращает результат типа StringResult.

Имя свойства Тип Описание
Исходное XML JSON
Value value value String Строка, содержащая ответ сервера ВКонтакте в формате JSON, как есть.
Messages messages messages Message[] Список сообщений системы.
Trace trace trace TraceItem[] Детальная информация о выполнении запроса. Добавляется, если параметр details имеет значение True.

Имя XML и JSON используется при выдаче результатов в XML и, соответственно, JSON.

Если имя XML начинается с символа «собака» (@), то значит в XML это имя будет использоваться в качестве имени атрибута, а не самостоятельного элемента.

Исходное имя - это имя, которое используется непосредственно в коде API.


Ошибки

При возникновении ошибок, будет возвращаен результат типа ErrorResult.

В таблице ниже представлен список ошибок, которые могут возникнуть при работе с методом VkUpload.

Ключ Код Описание
AccessDenied 1100 Ошибка возникает при попытке выполнить запрос без указания параметров доступа, либо при отсутствии разрешений на доступ к данным.
AddressIsBlacklisted 1121 Ошибка происходит, когда в параметре URL указан адрес, который находится в чёрном списке.
ArgumentNullOrEmpty 2001 Ошибка происходит, если один из обязательных параметров не указан или имеет пустое значение.
ExternalServiceError 5001 Возникает, если при запросе к удаленному серверу была получена ошибка.

Ключ и код соответствуют элементам перчисления ErrorCode.

В некоторых случаях, в ответе сервера могут содержать предупреждения (Warning) и сообщения о проблемах (Critical), которые можно найти в коллекции Messages. При этом, ответ сервера будет иметь тип StringResult.

Если метод содержит сообщения типа Critical, то можно считать, что работа метода завершена с ошибкой. Подобное поведение свойствено методам, в которых производится обработка списка данных, где каждый элемент списка является независимым от других элментов. Т.е. в таких случаях запрос может быть выполнен частично.


Примечания

Суммарное число файлов (file + url) не должно превышать пяти.

При получении от сервера ВКонтакте сообщения об ошибке, оно будет преобразовано в стандартное сообщение об ошибке API.

Ответ сервера ВКонтакте передается в виде строки в формате JSON. Для программной обработки, этот ответ следует десериализовать.

Вы можете указать любые другие параметры с префиксом vk_, которые будут переданы на сервер ВКонтакте при отправке файлов.


Статистика


Конструктор запросов

access_token:
upload_method:
album_id:
group_id:
user_id:
file:

Добавить еще

url:

Добавить еще


http:
lang:
auth:
cp: