API: различия между версиями

Материал из Энциклобогии
Перейти к навигации Перейти к поиску
мНет описания правки
(Уточнил, какие данные требуют разрешения)
Строка 15: Строка 15:
!colspan="3" align="left" |Список ключей JSON<ref>Список неофициальный, а значит может быть неполным или ошибочным. Уточнения приветствуются.</ref>
!colspan="3" align="left" |Список ключей JSON<ref>Список неофициальный, а значит может быть неполным или ошибочным. Уточнения приветствуются.</ref>
|-
|-
!Ключ || Тип || Описание  
!Ключ || Тип || Описание || Только с галочкой "Оперативные данные"
|-
|-
|arena_fight || Bool || Находится ли герой на арене, в заплыве или под землёй. (см. fight_type)
|arena_fight || Bool || Находится ли герой на арене, в заплыве или под землёй. (см. fight_type) || Да
|-
|-
|ark_completed_at || Строка || Время окончания ковчега (Есть только у тех, кто достроил ковчег)  
|ark_completed_at || Строка || Время окончания ковчега (Есть только у тех, кто достроил ковчег) || Нет
|-
|-
|alignment || Строка || Характер героя  
|alignment || Строка || Характер героя || Нет
|-
|-
|aura || Строка || Название ауры на герое, без времени(Если ауры нет, то ключа тоже нет)  
|aura || Строка || Название ауры на герое, без времени(Если ауры нет, то ключа тоже нет) || Да
|-
|-
|bricks_cnt || Число || Количество кирпичей (не в процентах, показывается даже если храм окончен или ещё не начат)  
|bricks_cnt || Число || Количество кирпичей (не в процентах, показывается даже если храм окончен или ещё не начат) || Нет
|-
|-
|clan || Строка || Название гильдии героя, пустая строка если её нет  
|clan || Строка || Название гильдии героя, пустая строка если её нет || Нет
|-
|-
|clan_position || Строка || Звание в гильдии (если гильдии нет, то пустая строка)  
|clan_position || Строка || Звание в гильдии (если гильдии нет, то пустая строка) || Нет
|-
|-
|diary_last || Строка || Последняя запись в дневнике  
|diary_last || Строка || Последняя запись в дневнике || Да
|-
|-
|distance || Число || Расстояние до столицы (при нахождении в любом городе 0)  
|distance || Число || Расстояние до столицы (при нахождении в любом городе 0) || Да
|-
|-
|exp_progress || Число || Количество опыта  
|exp_progress || Число || Количество опыта || Да
|-
|-
|expired || Bool || показатель неактуальности данных (ключ есть только если данные неактуальны)<ref>Для того, чтобы данные подавались в реальном времени, требуется периодическое (раз в час) посещение страницы героя, любая активность пользователя на ней или посещение героя одним из полноценных клиентов. Если ''expired = true'', то герой не посещался слишком давно и остальные данные уже не актуальны ''(знаем, что неудобно, но пока только так)''.</ref>
|expired || Bool || показатель неактуальности данных (ключ есть только если данные неактуальны)<ref>Для того, чтобы данные подавались в реальном времени, требуется периодическое (раз в час) посещение страницы героя, любая активность пользователя на ней или посещение героя одним из полноценных клиентов. Если ''expired = true'', то герой не посещался слишком давно и остальные данные уже не актуальны ''(знаем, что неудобно, но пока только так)''.</ref> || Да
|-
|-
|fight_type || Строка || Тип боя (sail - морской поход, arena - арена (ЗПГ в том числе), challenge - тренировка, dungeon - подземелье)  
|fight_type || Строка || Тип боя (sail - морской поход, arena - арена (ЗПГ в том числе), challenge - тренировка, dungeon - подземелье) || Да
|-
|-
|godpower || Число || Количество праны (для пенсионеров 0-200)  
|godpower || Число || Количество праны (для пенсионеров 0-200) || Да
|-
|-
|gold_approx || Строка || Приблизительное количество золота  
|gold_approx || Строка || Приблизительное количество золота || Нет
|-
|-
|gender || Строка || Пол героя  
|gender || Строка || Пол героя || Нет
|-
|-
|godname || Строка || Имя бога  
|godname || Строка || Имя бога || Нет
|-
|-
|health || Число || Здоровье героя  
|health || Число || Здоровье героя || Да
|-
|-
|inventory_max_num || Число || Максимальный размер инвентаря  
|inventory_max_num || Число || Максимальный размер инвентаря || Да
|-
|-
|inventory_num || Число || Количество вещей в инвентаре  
|inventory_num || Число || Количество вещей в инвентаре || Да
|-
|-
|inventory || Объект || Объект, содержащий список вещей в инвентаре (подробности ниже)  
|inventory || Объект || Объект, содержащий список вещей в инвентаре (подробности ниже) || Да<ref>Формально, данный ключ есть всегда, но без галочки он всегда пустой</ref>
|-
|-
|level || Число || Уровень героя  
|level || Число || Уровень героя || Нет
|-
|-
|max_health || Число || Максимальный запас здоровья  
|max_health || Число || Максимальный запас здоровья || Да
|-
|-
|motto || Строка || Девиз (может быть пустой строкой)  
|motto || Строка || Девиз (может быть пустой строкой) || Нет
|-
|-
|name || Строка || Имя героя  
|name || Строка || Имя героя || Нет
|-
|-
|pet || Объект || Объект, содержащий описание питомца (подробности ниже)  
|pet || Объект || Объект, содержащий описание питомца (подробности ниже) || Нет
|-
|-
|quest_progress || Число || % выполнения квеста  
|quest_progress || Число || % выполнения квеста || Да
|-
|-
|quest || Строка || Квест  
|quest || Строка || Квест || Да
|-
|-
|savings_completed_at || Строка || Дата окончания сбора пенсии (только у пенсионеров)  
|savings_completed_at || Строка || Дата окончания сбора пенсии (только у пенсионеров) || Нет
|-
|-
|temple_completed_at || Строка || Дата окончания храма (только у храмовладельцев)  
|temple_completed_at || Строка || Дата окончания храма (только у храмовладельцев) || Нет
|-
|-
|town_name || Строка || Город, в котором герой (пустая строка, если в поле)  
|town_name || Строка || Город, в котором герой (пустая строка, если в поле) || Да
|-
|-
|wood_cnt || Число || Количество поленьев (пока нет храма, ключ отсутствует)  
|wood_cnt || Число || Количество поленьев (пока нет храма, ключ отсутствует) || Нет
|-
|-
|}
|}

Версия от 00:40, 21 января 2017

Сервер Годвилля предоставляет программный доступ к большинству данных героя, который можно использовать для написания сторонних программ.

API доступен в двух форматах (JSON и XML):

godville.net/gods/api/<username>.json 

или (менее предпочтительно)

godville.net/gods/api/<username>.xml 

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

Данные обновляются раз в минуту, поэтому дергать сервер чаще смысла нет. При слишком частых запросах (существует ограничение “не больше 30 запросов за 10 минут в связке (бог+ip)”) данные героя перестают возвращаться, выводя соответствующее уведомление.

Кроме того, существует расширенное API, позволяющее писать полноценные клиенты с возможностью влияния на героя.

Примечания

  1. Список неофициальный, а значит может быть неполным или ошибочным. Уточнения приветствуются.
  2. Для того, чтобы данные подавались в реальном времени, требуется периодическое (раз в час) посещение страницы героя, любая активность пользователя на ней или посещение героя одним из полноценных клиентов. Если expired = true, то герой не посещался слишком давно и остальные данные уже не актуальны (знаем, что неудобно, но пока только так).
  3. Формально, данный ключ есть всегда, но без галочки он всегда пустой
  4. На данный момент нет информации о том как выглядит информация о контуженном питомце.