Фотохостинг

Введение в API

Интерфейс прикладного программирования (API) представляет собой набор функций, методов и процедур, что позволяет использовать сторонние приложения для загрузки изображений. Проще говоря, это способ загружать фотографии без захода на непосредственно сайт Uploads.ru.

Возможности:

API вызовы

Параметры, которые можно использовать в вызове API:

upload

URL или изображение, переданное POST-методом. Система автоматически определяет, что вы загружаете.

resize_width

Если вы установите этот параметр, то размер изображения будет изменен.

thumb_width

Задает необходимую ширину превью. По умолчанию 360.

format

Желаемый формат вывода, значения могут быть json xml txt или redirect. Если вам нужно JSONP, включите в запрос callback вместе с параметром format=json.

family_unsafe

Установите параметр family_unsafe=1 если вы загружаете контент для взрослых.

callback

Обратный вызов для формата JSONP, чаще всего используется в качестве callback=? в JQuery.

Методы

Все параметры рассматриваются как REQUEST, поэтому вы можете использовать как POST так и GET методы, чтобы сделать вызов.

Простой пример вызова

Самый простой пример вызова. Скопируйте этот URL и откройте в вашем браузере.

http://uploads.ru/api?upload=http://www.google.com/images/srpr/nav_logo66.png

Так что, если мы хотим добавить больше параметров, это будет выглядеть следующим образом:

http://uploads.ru/api?upload=http://www.google.com/images/srpr/nav_logo66.png&resize_width=100&format=xml

API ответы

Речь идет о выходных данных вызовов API. В JSON и XML-ответах возвращаются подробные данные и они точно такие же, но в разных форматах. Ответные значения будут варьироваться в зависимости от статуса процесса.

Успешный ответ

status_code 200  
status_txt OK  
data img_name Имя файла
  img_url URL изображения
  img_view Просмотр изображения
  img_width Ширина изображения в пикселях
  img_height Высота изображения в пикселях
  img_attr HTML ширина и высота (аттрибуты)
  img_size Дружественный размер изображения
  img_bytes Размер изображения в байтах
  thumb_url URL файла превью
  thumb_width Ширина превью в пикселях
  thumb_height Высота превью в пикселях
  source Источник изображения
  resized Сообщает, был ли изменен размер изображения (0, 1)

Успешный ответ выведет data с информацией о загруженном изображении.

Ошибочный ответ

status_code 403
status_txt _ERROR_MSG__

Ошибочный ответ будет выводить только status_code и status_txt соответствующее сообщение об ошибке.

Форматы ответа

По умолчанию, данные возвращаются в JSON. Выходные данные контролируются параметром format={FORMAT}. Рассмотрим форматы выходных данных:

JSON(P)

format=json (или пустой format) вернет данные в JSON формате. Если вы добавите callback=? параметр, выходные данные будут в JSONP формате:

({"status_code":200,"status_txt":"OK","data":{"img_name":"abcde.png","img_url":"http:\/\/s1.uploads.ru\/abcde.png","img_view":"http:\/\/uploads.ru\/abcde.png","img_width":167,"img_height":288,"img_attr":"width=\"167\" height=\"288\"","img_size":"36.1 KB","img_bytes":37002,"thumb_url":"http:\/\/s1.uploads.ru\/t\/abcde.png","thumb_width":100,"thumb_height":90,"source":"http:\/\/www.google.com\/images\/srpr\/nav_logo66.png","resized":"0"}});

XML

format=xml вернет данные в XML формате:

<?xml version="1.0" encoding="UTF-8"?>
<response>
<status_code>200</status_code>
<status_txt>OK</status_txt>
<data>
        <img_name>abcde.png</img_name>
        <img_url>http://s1.uploads.ru/abcde.png</img_url>
        <img_view>http://uploads.ru/abcde.png</img_view>
        <img_width>167</img_width>
        <img_height>288</img_height>
        <img_attr>width="167" height="288"</img_attr>
        <img_size>36.1 KB</img_size>
        <img_bytes>37002</img_bytes>
        <thumb_url>http://s1.uploads.ru/t/abcde.png</thumb_url>
        <thumb_width>100</thumb_width>
        <thumb_height>90</thumb_height>
        <source>http://www.google.com/images/srpr/nav_logo66.png</source>
        <resized>0</resized>
</data>
</response>

RAW TEXT

format=txt вернет URL изображения.

REDIRECT

format=redirect произведет переадресацию на страницу просмотра изображения.