Главная » Функционал » PHP и API » Описание использования базового API

Описание использования базового API

28.03.2011 в 18:21
Автор: Olsiva

ОБЩАЯ ИНФОРМАЦИЯ

Базовое API предствляет собой интерфейс получения данных со страниц пользовательского сайта. Это GET-only интерфейс, который позволяет только получать данные (страницы) модулей сайта, т.е. фактически работает с правами гостя (неавторизированного пользователя). На данный момент он доступен в 11 модулях: blog, board, dir, gb, load, news, photo, publ, stuff, forum, index. Включение возможности использования API проводится в панеле управления сайтом в разделе “Настройки” > “Общие настройки” > “Использовать API”

По умолчанию его использование отключено.

КАК ИСПОЛЬЗОВАТЬ

Формат данных, которые отдаются API - XML-RPC. Все обращения (запросы) к интерфейсу выполняются посредством GET-запросов. Использовать данную функцию можно следующим образом:

http://SITE_ADDRESS/api/MODULENAME/ANYRELPATH
где:
SITE_ADDRESS - адрес сайта пользователя, на котором используется API;
MODULENAME – модуль сайта;
ANYRELPATH – любая страница модуля, для которой разрешено использование API;

т.е. фактически, для использования интерфейса (если он активирован для сайта) достаточно вписать префикс /api/ между адресом сайта и именем модуля.

Пример использования:

Для получения, например, страницы:

http://blog.ucoz.ru/blog/ucoz_2010/2011-01-01-172

достаточно выполнить GET-запрос на:

http://blog.ucoz.ru/api/blog/ucoz_2010/2011-01-01-172

Пример использования api сторонними приложениям или скриптом:

http://phpexample.ucoz.net/publ/otobrazhenie_kontenta_po_kriteriju/1-1-0-10

ОПИСАНИЕ ВОЗВРАЩАЕМЫХ ДАННЫХ

API отдает данные для следующих типов страниц моделей сайта:

Типы страниц Модуль
страница рейтинга материала blog, board, dir, load, news, photo, publ
страница материалов пользователя blog, board, dir, load, news, photo, publ, stuff
страница конкретного материала blog, board, dir, load, news, photo, publ, stuff
страница материалов за день blog, news
страница материалов за месяц blog, news
страница материалов из категории (альбома) blog, board, dir, load, news, photo, publ, stuff
главная страница модуля blog, board, dir, load, news, photo, publ, stuff, gb, forum
страница списка тем с постами пользователя,
страница конкретного поста,
страница с последними постами в теме,
страница тем с поледними постами, страница списка участников,
страница темы,
страница форумов
forum
страница информации о пользователе,
история репутации,
список пользователей,
история предупреждений,
страница комментариев пользователя,
страница материалов пользователя,
список онлайн пользователей,
список неактивных материалов
index

Для страницы с материалом возвращается структура в теге

Code
<struct>
со списком полей: именем поля name
Code
<name>
и значением value
Code
<value>
для страниц с несколькими записями (материалами) возвращается массив структур для каждой записи (материала) в теге
Code
<array>

Имя поля Значение
BANCHANGE_NAME пользователь, установивший предупреждение
BANCHANGE_PROFILE профиль пользователя, установившего предупреждение
BANCHANGE_REASON причина предупреждения
BANCHANGE_TIME время предупреждения
BANCHANGE_VALUE повышен или понижен уровень предупреждений (-1/0/1)
CATEGORY_NAME имя категории материала
CATEGORY_URL ссылка на страницу категории материала
COMMENTS_NUM количество коментариев
COMMENTS_URL ссылка на страницу с коментариями
COMMENT_ANSWER ответ на комментарий
COMMENT_DATE дата комментария
COMMENT_LINK ссылка на комментарий
COMMENT_MESSAGE текст коментария
COMMENT_RATE рейтинг коментария
COMMENT_TIME время коментария
COMMENT_USERIP IP адрес автора коментария
DATE дата создания материала
ENTRY_URL ссылка на страницу материала
FORUM_DESCR описание раздела форума
FORUM_LINK ссылка на раздел форума
FORUM_NAME название раздела форума
LASTPOST_AUTHOR автор последнего поста
LASTPOST_AUTHORPROFILE профиль автора последнего поста
LASTPOST_LINK ссылка на последний пост
LASTPOST_TIME время последнего поста
LASTTOPIC_LINK ссылка на последнюю тему форума
LASTTOPIC_NAME название последней темы форума
LOADS_NUM количество загрузок материала
MATERIAL_ID идентификатор материала для конкретного модуля
MESSAGE текст или краткое описание материала
PHOTO_HEIGHT высота изображения
PHOTO_SIZE размер изображения
PHOTO_URL ссылка на изображение
PHOTO_WIDTH ширина изображения
POST_DATE дата поста
POST_DIRECTURL ссылка на пост
POST_ID идентификатор поста
POST_MESSAGE текст поста
POST_NUMBER порядковый номер поста
POST_TIME время поста
POST_TIMESTAMP время поста в формате timestamp
RATED количество оценок материала
RATING рейтинг материала
READS_NUM количество прочтений материала
REPCHANGE_ANSWER ответ на сообщение при смене репутации
REPCHANGE_ID идентификатор сообщения о смене репутации
REPCHANGE_NAME имя автора, изменившего репутацию
REPCHANGE_PROFILE профиль автора, изменившего репутацию
REPCHANGE_REASON причина изменения репутации
REPCHANGE_REF ссылка на страницу, где была изменена репутация
REPCHANGE_TIME время смены репутации
REPCHANGE_VALUE повышение/понижение репутации (-1/0/1)
REPLIES_NUM количестово ответов
RUNS_NUM количество запусков приложения
TIME время создания материала
TIMESTAMP время создания материала в формате timestamp
TITLE заголовок (тема, название) материала
TOPIC_DESCR описание темы форума
TOPIC_LINK ссылка на тему
TOPIC_NAME название темы
TOPIC_NUMS количество тем
TOPIC_PAGESNUM количество страниц в теме
UNACTIVEBLOG_LINK ссылка на страницу неактивных материалов в модуле blog
UNACTIVEBLOG_NUM количество неактивных материалов в модуле blog
UNACTIVEBOARD_LINK ссылка на страницу неактивных материалов в модуле board
UNACTIVEBOARD_NUM количество неактивных материалов в модуле board
UNACTIVEDIR_LINK ссылка на страницу неактивных материалов в модуле dir
UNACTIVEDIR_NUM количество неактивных материалов в модуле dir
UNACTIVEFAQ_LINK ссылка на страницу неактивных материалов в модуле faq
UNACTIVEFAQ_NUM количество неактивных материалов в модуле faq
UNACTIVEGB_LINK ссылка на страницу неактивных материалов в модуле gb
UNACTIVEGB_NUM количество неактивных материалов в модуле gb
UNACTIVELOAD_LINK ссылка на страницу неактивных материалов в модуле load
UNACTIVELOAD_NUM количество неактивных материалов в модуле load
UNACTIVENEWS_LINK ссылка на страницу неактивных материалов в модуле news
UNACTIVENEWS_NUM количество неактивных материалов в модуле news
UNACTIVEPHOTO_LINK ссылка на страницу неактивных материалов в модуле photo
UNACTIVEPHOTO_NUM количество неактивных материалов в модуле photo
UNACTIVEPUBL_LINK ссылка на страницу неактивных материалов в модуле publ
UNACTIVEPUBL_NUM количество неактивных материалов в модуле publ
UNACTIVESTUFF_LINK ссылка на страницу неактивных материалов в модуле stuff
UNACTIVESTUFF_NUM количество неактивных материалов в модуле stuff
USERBLOGENTRIES_LINK ссылка на страницу материалов пользователя в модуле blog
USERBLOGENTRIES_NUM количество материалов пользователя в модуле blog
USERBOARDENTRIES_LINK ссылка на страницу материалов пользователя в модуле board
USERBOARDENTRIES_NUM количество материалов пользователя в модуле board
USERCOMMENTENTRIES_LINK ссылка на страницу коментариев пользователя
USERCOMMENTENTRIES_NUM количество коментариев пользователя
USERDIRENTRIES_LINK ссылка на страницу материалов пользователя в модуле dir
USERDIRENTRIES_NUM количество материалов пользователя в модуле dir
USERFORUMENTRIES_LINK ссылка на страницу материалов пользователя в модуле forum
USERFORUMENTRIES_NUM количество материалов пользователя в модуле forum
USERLOADENTRIES_LINK ссылка на страницу материалов пользователя в модуле load
USERLOADENTRIES_NUM количество материалов пользователя в модуле load
USERNEWSENTRIES_LINK ссылка на страницу материалов пользователя в модуле news
USERNEWSENTRIES_NUM количество материалов пользователя в модуле news
USERPHOTOENTRIES_LINK ссылка на страницу материалов пользователя в модуле photo
USERPHOTOENTRIES_NUM количество материалов пользователя в модуле photo
USERPUBLENTRIES_LINK ссылка на страницу материалов пользователя в модуле publ
USERPUBLENTRIES_NUM количество материалов пользователя в модуле publ
USERSTUFFENTRIES_LINK ссылка на страницу материалов пользователя в модуле stuff
USERSTUFFENTRIES_NUM количество материалов пользователя в модуле stuff
USER_AGE возраст пользователя сайта
USER_AOL AOL пользователя сайта
USER_AVATAR аватар пользователя сайта
USER_AWARDS количество наград пользователя сайта
USER_BANNEDTILL дата разблокировки пользователя сайта
USER_BANRATING рейтинг предупреждений пользователя сайта
USER_BIRTHDAY дата рождения пользователя сайта
USER_CITY город проживания пользователя сайта
USER_COUNTRY страна проживания пользователя сайта
USER_EMAIL электронная почта пользователя сайта
USER_GENDER пол пользователя сайта
USER_GROUPID идентификатор группы пользователя сайта
USER_GROUPNAME название группы пользователя сайта
USER_HOMEPAGE домашняя страница пользователя сайта
USER_ICQ ICQ пользователя сайта
USER_ID идентификатор пользователя сайта/автора материала
USER_IPADDRESS IP адрес пользователя сайта
USER_ISVERIFIEDEMAIL проверен ли электронная почта пользователя сайта
USER_LASTVISIT дата последнего посещениая пользователя
USER_LOGTIMESTAMP время последней авторизации пользователя сайта в формате timestamp
USER_MSN MSN пользователя сайта
USER_NAME имя пользователя сайта/автора материала (логин)
USER_POSTSNUM количество сообщений пользователя сайта
USER_PROFILE профиль пользователя сайта
USER_RANK ранк пользователя сайта
USER_RANKNAME название ранка пользователя сайта
USER_REGDATE дата регистрации пользователя
USER_REGTIMESTAMP время регистрации пользователя сайта в формате timestamp
USER_REPUTATION репутация пользователя сайта
USER_SIGNATURE подпись пользователя сайта
USER_STATUS статус пользователя сайта
USER_UNETID UNET идентификатор пользователя сайта
USER_UNETPROFILE UNET профиль пользователя сайта
USER_USERNAME полное имя пользователя сайта/автора материала
USER_YAHOO YAHOO пользователя сайта
USER_ZODIAC знак зодиака пользователя сайта
VIEWS_NUM количество просмотров материала

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ

В ближайшее время возможность использования API будет добавлена еще в несколько других модулей системы. По мере добавления здесь будет изменяться и добавляться информация о его использовании.

ПОЛНАЯ ТАБЛИЦА СООТВЕТСТВИЯ ПОЛЕЙ СТРАНИЦАМ И МОДУЛЯМ


ОБНОВЛЕНИЯ

  • [13.05.2011] Добавлена возможность использовать ключ (API key) для базового API.

    Данная возможность позволяет разрешить использование API только для тех, кто знает ключ. Для всех остальных API не будет работать.Включить эту возможность можно в панели управления в разделе “Настройки” > “Общие настройки” > “Использовать API key”. Ключ генерируется автоматически.

    Если вы захотите изменить уже существующий ключ, то отключите и включите заново эту опцию, затем сохраните изменения.

    Использовать API при наличии ключа нужно посредством GET-запроса следующим образом:

    http://SITE_ADDRESS/api/MODULENAME/ANYRELPATH?apikey=APIKEY

Рейтинг: 16  (помогла ли Вам эта инструкция: да / нет)          Просмотров: 83438          Комментариев: 14
26.09.2014 в 11:10      +1  

Скажите, когда уже API будет доступен для модуля интернет-магазина?
13.02.2016 в 11:10      0  

Работа идет, надеюсь дождемся в этом году, возможно на лето, а может и раньше, детали  в материале - здесь.
13.12.2013 в 20:48      0  

Скажите когда будет API для Интернет-магазина?
10.11.2013 в 00:46      0  

Очень интересует получение количества сообщений на форуме (почему то нет в информации о пользователе) и информации о наградах.
09.04.2013 в 23:43      0  

Мне самому интересно что за функция эта аппи! Можете подробнее объяснить? Я тоже хотел бы вставить информер к себе на сайт http://www.samomu-interesno.ru/...
19.01.2013 в 00:03      0  

Отправляю запрос на
http://SITE_NAME/api/load/0-0-2-0-17
Выдает только 10 первых материалов. Как вывесть все?
14.11.2012 в 17:17      0  

Здравствуйте.

Столкнулся с проблемой в api каталога статей. Не могу получить xml ответ на запрос вида:
my_site/api/publ/2
при том, что на запрос my_site/api/publ/1 ответ корректный, если же подставить другой индекс категории, кроме 1, происходит редирект на my_site/publ/nazvanie_kategorii
Если это ошибка поправьте плиз, если нет, прокомментируйте: как сделать запрос на материалы отдельной категории?

Заранее благодарен.
04.11.2012 в 12:50      0  

Может быть кто-то уже спрашивал, возможно повторюсь.
Получить данные можно так:
Code
http://site.com/api/load/razdel/category/name_file/32-1-0-305?apikey=API key


но получить данные по короткой ссылке (без ЧПУ) не возможно:
Code
http://site.com/api/load/32-1-0-305?apikey=API key1


Это очень не удобно, можно ли это как-то исправить или обойти? Спасибо!

Андрей

Спам
04.03.2012 в 15:55      0  

Не пойму как его поставить в фото. Чтоб закрыть доступ к просмотру девушек. Куда вообще вставлять его не где нет вразумительного объяснения.

Ярослав

Спам
29.02.2012 в 16:56      0  

Подправьте ссылки на примеры или же сами продемонстрируйте коды (Желательно на javascript). Без них данная статья как тёмный лес

Fouad

Спам
28.02.2012 в 07:39      0  

Wait, I cnnaot fathom it being so straightforward.
1 2 »