У Game-Score API 2 разные входные точки - одна для тестирования (Sandbox) и одна для реального использования. Тестовая входная точка находится по адресу http://game-score.net/apisandbox/. Базы данных входной точки Sandbox режиме обнуляются ежедневно и каждый клиент может установить точное время для этой операции.
Входная точка для реального использования находится по адресу http://game-score.net/api/. Все данные, собранные с помощью этой точки сохраняются пока приложение активно, так что будьте осторожны при его использовании. Во время разработки и тестирования нужно использовать режим Sandbox и переключится в рабочий режим, как только приложение готово.
Game-Score API можно использовать через POST или GET запросы. API поддерживает как XML, так и JSON протоколы. Сервер автоматически разпознает тип и детали запросов и возвращенный ответ будет того же типа
Метод | Адрес |
---|---|
POST | api/json/ |
Метод | Адрес |
---|---|
GET | api/json/ |
Структура адреса (URL )используется для форматирования и запросов к серверу. После api/ находится дескриптор протокола JSON /json/ или XML /xml/. Вслед за дескриптором находится имя API метода. В конце адреса находятся параметры метода, которые уникальны для каждого метода. При GET вызовах параметры передаются как URL_PARAM
Метод | Адрес |
---|---|
GET | api/json/methodName |
Инициализирует новую сессию. Ответ содержит идентификатор созданной сессии. Метод используется для того, чтобы отслеживать, сколько игр сыграно во время одной сессии. Метод нужно вызывать сразу после старта игры/инициализации приложения.
Метод | Адрес |
---|---|
GET/POST | api/json/startSession/ api/xml/startSession/ |
Тип | Параметры | Величины |
---|---|---|
var | appId | string |
appId
appId должен быть отправлен с каждым клиентским запросом. appId можно скопировать из административной панели в секции 'Приложения'. appId используется для валидации приложений и их статуса
Статус | Ответ |
---|---|
200 | {
"success": |
403 | {"error":"API key is missing."} |
401 | {"error":"Invalid API key."} |
500 | {"error":"Something went wrong. Please try again later."} |
Записывает новый резултат в таблицу результатов. Если значение параметра highscore установить на true, в ответе будет присутствовать и список лучших результатов.
Метод | Адрес |
---|---|
GET/POST | api/json/addScore/ api/xml/addScore/ |
Тип | Параметры | Величины |
---|---|---|
var | appId | string |
var | sessionid | string |
var | score | number |
var | nickname | string [optional] [default “Player”] |
var | highscore | boolean [optional] [default false] |
var | limit | number [optional] [default 10] |
var | playerRank | boolean [optional] [default false] |
appID
appID доступен в административной панели для любого приложения
sessionid
sessionid - результат, возвращяемый методом startSession API /api/json/startSession
score
Результат, достигнутый игроком
nickname
Псевдоним игрока; Необязательный параметр; Значение по умолчанию - “Player”
highscore
Флаг, определяющий возвращать список лучших резултатов или нет; Необязательный параметр; Значение по умолчанию - false
limit
Ограничение списка лучших результатов; Необязательный параметр; Значение по умолчанию - 10
playerRank
Определяет нужно ли вернуть место игрока в данном списке игроков; Необязательный параметр; Значение по умолчанию - false
Статус | Ответ |
---|---|
200 | Возвращенный результат - объект, содержащий список результатов.
{
"success": true, |
400 | {"error":"Missing parameter."} |
401 | {"error":"Invalid API key."} |
500 | {"error":"Something went wrong. Please try again later."} |
Возвращает список результатов, разделенный на страницы. Количество результатов определяется параметром limit, параметр start определяет номер страницы.
Метод | Адрес |
---|---|
GET/POST | api/json/getHighScore/ api/xml/getHighScore/ |
Тип | Параметры | Величины |
---|---|---|
var | appId | string |
var | limit | number [optional] [default 10] |
var | start | number [optional] [default 0] |
appID
appID доступен в административной панели для любого приложения
limit
Лимит возвращенных лучших результатов; Необязательный параметр; Значение по умолчанию - 10
start
Определяет позицию первого результата в списке; Необязательный параметр; Значение по умолчанию - 0
Статус | Ответ |
---|---|
200 | Ответ - объект, содержащий список всех результатов.
{
"success": true, |
400 | {"error":"Missing parameter."} |
401 | {"error":"Invalid API key."} |
500 | {"error":"Something went wrong. Please try again later."} |
Записывает результаты игрока с возможностью сохранить имя и фамилию, e-mail и телефон.
Информация о потребителе не является обязательной, потребитель сам решает хочет ли он ее оставить в системе. Информация не будет использована GameScore.
* метод доступен в пакете “simple game +”
Метод | Адрес |
---|---|
GET/POST | api/json/registerWithScore / api/xml/registerWithScore / |
Тип | Параметры | Величины |
---|---|---|
var | appId | string |
var | sessionid | string |
var | score | number |
var | nickname | string [optional] [default “Player”] |
var | firstname | string [optional] |
var | lastname | string [optional] |
var | string [optional] | |
var | phone | string [optional] |
var | highscore | boolean [optional] [default false] |
var | limit | number [optional] [default 10] |
var | playerRank | boolean [optional] [default false] |
appID
appID доступен в административной панели для любого приложения
sessionid
sessionid - результат, возвращяемый методом startSession API /api/json/startSession
score
Результат игрока
nickname
Псевдоним игрока; Необязательный параметр; Default value will be “Player”
firstname
Имя игрока; Необязательный параметр; First name of the player
lastname
Фамилия игрока; Необязательный параметр; Last name of the player
email
E-mail игрока; Необязательный параметр; Email of the player
phone
Телефон игрока; Необязательный параметр; Phone of the player
highscore
Определяет нужно ли вернуть место игрока в данном списке игроков; Необязательный параметр; Значение по умолчанию - false
limit
Лимит возвращенных лучших результатов; Необязательный параметр; Значение по умолчанию - 10
playerRank
Boolean, определяет следует ли включить текущее место игрока в список лучших результатов; Необязательный параметр; Значение по умолчанию - false
Статус | Ответ |
---|---|
200 | Ответ - объект, содержащий список всех лучших результатов.
{
"success": true, |
400 | {"error":"Missing parameter."} |
401 | {"error":"Invalid API key."} |
500 | {"error":"Something went wrong. Please try again later."} |
Закрывает текущую сессию. Метод используется по окончании игры.
Метод | Адрес |
---|---|
GET/POST | api/json/endSession/ api/xml/endSession/ |
Тип | Параметры | Величины |
---|---|---|
var | appId | string |
var | sessionId | string |
appId
appId должен быть отправлен с каждым клиентским запросом. appId можно скопировать из административной панели в секции 'Приложения'. appId используется для валидации приложений и их статуса
sessionId
sessionid - результат, возвращяемый методом startSession API /api/json/startSession
Статус | Ответ |
---|---|
200 | {
"success": |
400 | {"error":"Missing parameter."} |
401 | {"error":"Invalid API key."} |
500 | {"error":"Something went wrong. Please try again later."} |
Все примеры используют протокол JSON из-за лучшей наглядности.
Все статус коды - стандартныв HTTP статус коды. Ниже записаны коды, используемые в данном API.
2XX - Успех
4XX - Ошибка клиента
5XX - Ошибка сервера
Статус код | Описание |
---|---|
200 | OK |
201 | Created |
202 | Accepted (Request accepted, and queued for execution) |
400 | Bad request |
401 | Authentication failure |
403 | Forbidden |
404 | Resource not found |
405 | Method Not Allowed |
409 | Conflict |
412 | Precondition Failed |
413 | Request Entity Too Large |
500 | Internal Server Error |
501 | Not Implemented |
503 | Service Unavailable |