ChatToken
Получение токена чата для конкретного пользователя. Id-пользователя определяется из Access Token'a.
GET /chat/token
Требуется OAuth 2.0 аутентификация.
Scope: chat.token
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 401: Unauthorized
- 403: Forbidden
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "user_id": "User Id", "chat_token": "Chat Token", "_links": { "self": { "href": "http://api2.goodgame.ru/chat/token" } } }
Donations
Список поддержки указанного канала.
GET /channel/:channel/donations
Требуется OAuth 2.0 аутентификация.
Scope: channel.donations
Fields
Field | Type | Description | Required |
---|---|---|---|
channel | Channel ID or Channel Key | YES | |
page | Query-параметр, номер страницы при постраничном выводе. На одной странице выводится до 50 элементов. | NO | |
from_timestamp | Query-параметр, timestamp, начиная с которого следует вернуть историю поддержки | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 401: Unauthorized
- 403: Forbidden
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "_links": { "self": { "href": "http://api2.goodgame.ru/channel/:channel/donations?page=1" }, "first": { "href": "http://api2.goodgame.ru/channel/:channel/donations" }, "last": { "href": "http://api2.goodgame.ru/channel/:channel/donations?page=1" } }, "_embedded": { "donations": [ { "id": "User Id", "username": "User Name", "amount": "200.00 в рублях", "paid_date": "1427301163 - timestamp, дата поступления поддержки", "comment": "Комментарий", "_links": { "self": { "href": "http://api2.goodgame.ru/channel/:channel/donations" } } }, { "id": "", "username": "mail@example.com - email если анонимный пользователь", "amount": "510.00в рублях", "paid_date": "1406050589 - timestamp, дата поступления поддержки", "comment": "Комментарий", "_links": { "self": { "href": "http://api2.goodgame.ru/channel/5/donations" } } }, ... ] }, "page_count": 1, "page_size": 50, "total_items": 4, "page": 1 }
Games
Получение информации об зарегистрированных на Goodgame.ru играх.
GET /games
Получение коллекции игр
Fields
Field | Type | Description | Required |
---|---|---|---|
page | Query-параметр, номер страницы при постраничном выводе. На одной странице выводится до 50 элементов. | NO | |
filter | Query-параметр, фильтр по названию игры. | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "_links": { "self": { "href": "http://api2.goodgame.ru/games?page=1" }, "first": { "href": "http://api2.goodgame.ru/games" }, "last": { "href": "http://api2.goodgame.ru/games?page=895" }, "next": { "href": "http://api2.goodgame.ru/games?page=2" } }, "_embedded": { "games": [ { "id": "44674", "title": " Battle Brothers", "url": " Battle-Brothers", "short": " Battle Brothers", "poster": "https://goodgame.ru/files/logotypes/gm_44674_LgBG.jpg", "_links": { "self": { "href": "http://api2.goodgame.ru/games/%20Battle-Brothers" } } }, ... ] }, "page_count": 895, "page_size": 50, "total_items": 44705, "page": 1 }
GET /games[/:game]
Получение информации по игре, зная ее url
Fields
Field | Type | Description | Required |
---|---|---|---|
page | Query-параметр, номер страницы при постраничном выводе. На одной странице выводится до 50 элементов. | NO | |
filter | Query-параметр, фильтр по названию игры. | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "id": "44674", "title": " Battle Brothers", "url": " Battle-Brothers", "short": " Battle Brothers", "poster": "https://goodgame.ru/files/logotypes/gm_44674_LgBG.jpg", "_links": { "self": { "href": "http://api2.goodgame.ru/games/%20Battle-Brothers" } } }
Info
Получение информации по Access Token'у
GET /info
Access Token указывается в запросе как описано в документации
Невалидный Access Token'a обрабатывается по общим правилам (Код ответа не 200)
Если Access Token не указан будет выведен список сервисов.
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "token": { "scopes": [ "channel.subscribers", "chat.token" ], "expires": "Unix Timestamp" }, "user": { "user_id": "User ID", "username": "User Name" }, "channel": { "channel": "Channel Key", "channel_id": "Channel ID", "src": "Player key (src)" }, "apis": { "Player": "http://api2.goodgame.ru/player/:src", "Streams": "http://api2.goodgame.ru/streams[/:channel]", "Subscribers": "http://api2.goodgame.ru/channel/:channel/subscribers", "Premiums": "http://api2.goodgame.ru/channel/:channel/premiums", "Donations": "http://api2.goodgame.ru/channel/:channel/donations", "ChatToken": "http://api2.goodgame.ru/chat/token", "Games": "http://api2.goodgame.ru/games[/:game]", "Info": "http://api2.goodgame.ru/info" }, "_links": { "self": { "href": "http://api2.goodgame.ru/info" } } }
Player
Получение информации о плеере
GET /player/:src
Fields
Field | Type | Description | Required |
---|---|---|---|
src | Player source | YES |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "channel_id": "5", "channel_key": "Miker", "channel_title": "Бобер-дуэлист и полсотни регретов. ", "channel_status": "online", "channel_poster": "https://goodgame.ru/files/logotypes/ch_5_U3KZ.jpg", "channel_premium": true, "streamer_avatar": "https://goodgame.ru/files/avatars/av_1_y1Yt.jpg", "premium_only":false, "premium_prices":{"1":79,"2":229,"3":499,"4":899,"5":1690}, "broadcast": { "broadcast_title": "Broadcast title", "broadcast_description":"Broadcast description", "broadcast_start":"1445526000", "broadcast_games":"Warcraft III: The Frozen Throne", "broadcast_logo":"https://goodgame.ru/images/channel-logo.jpg" }, "user": { "user_id": "goodgame user id", "email": "user email", "payments": false, "subscribed": true, "subscribed_stream": true, "subscribed_anons": true, "days_left": 3, "expire": 1485246911, "test": false "premium_channel": "all | single", "premium_key": "asdfasdfasdfasdf", "wallet": 0 }, "_links": { "self": { "href": "http://api2.goodgame.ru/player/6" } } }
Premiums
Список премиум подписчиков указанного канала
GET /channel/:channel/premiums
Требуется OAuth 2.0 аутентификация.
Scope: channel.premiums
Fields
Field | Type | Description | Required |
---|---|---|---|
channel | Channel ID or Channel Key | YES | |
page | Query-параметр, номер страницы. На странице выводится до 50 подписчиков. | NO | |
from_timestamp | Query-параметр, timestamp, начиная с которого выводить премиум подписчиков | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 401: Unauthorized
- 403: Forbidden
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "_links": { "self": { "href": "http://api2.goodgame.ru/channel/:channel/premiums?page=1" }, "first": { "href": "http://api2.goodgame.ru/channel/:channel/premiums" }, "last": { "href": "http://api2.goodgame.ru/channel/:channel/premiums?page=3" }, "next": { "href": "http://api2.goodgame.ru/channel/:channel/premiums?page=2" } }, "_embedded": { "premiums": [ { "id": "user id", "username": "user name", "started_at": "1445186899 timestamp", "_links": { "self": { "href": "http://api2.goodgame.ru/channel/:channnel/premiums" } } }, ... ] }, "page_count": 3, "page_size": 50, "total_items": 150, "page": 1 }
Smiles
Получение коллекции смайлов.
GET /smiles[/:channel_id]
Получение коллекции смайлов. Если не указан channel_id, то вернется список всех смайлов.
Fields
Field | Type | Description | Required |
---|---|---|---|
channel_id | ID-канала, для которого нужно получить смайлы. | NO | |
page | Query-параметр, номер страницы при постраничном выводе. На одной странице выводится до 50 смайлов. | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "_links": { "self": { "href": "http://api2.goodgame.ru/smiles?page=1" }, "first": { "href": "http://api2.goodgame.ru/smiles" }, "last": { "href": "http://api2.goodgame.ru/smiles?page=3" }, "next": { "href": "http://api2.goodgame.ru/smiles?page=2" } }, "_embedded": { "smiles": [ { "key": "bender", "donate_lvl": 4, "is_premium": false, "is_paid": false, "channel_id": "0", "urls": { "img": "https://goodgame.ru/images/smiles/bender.png", "big": "https://goodgame.ru/images/smiles/bender-big.png", "gif": "https://goodgame.ru/images/anismiles/bender-gif.gif" }, "_links": { "self": { "href": "http://api2.goodgame.ru/smiles/0" } } }, ... ] }, "page_count": 3, "page_size": 50, "total_items": 101, "page": 1 }
Streams
Получение информации о трансляциях. Текущая версия 2. Базовый url http://api2.goodgame.ru/v2/
GET /streams
Получение информации обо всех онлайн стримах на Goodgame. Можно использовать query-параметры.
Fields
Field | Type | Description | Required |
---|---|---|---|
channel | Идентификатор стрима, может быть как символьным ключем канала (Пример: http://api2.goodgame.ru/streams/Miker), так и числовым id (Пример: http://api2.goodgame.ru/streams/5). Если указан, то информация вернется только для этого стрима. | NO | |
ids | Query-параметр, список идентификаторов стримов через запятую, информацию о которых требуется получить. Допускается до 50 идентификаторов за один запрос. | NO | |
page | Query-параметр, номер страницы при постраничном выводе. На одной странице выводится 25 стримов. | NO | |
only_gg | Query-параметр, флаг, указывающий на то, что выбирать только стримы с онлайн плеером Goodgame | NO | |
adult | Query-параметр, флаг, выбирать ли каналы с ограничениями (по умолчанию такие каналы не выбираются) | NO | |
game | Query-параметр. Фильтровать стримы по конкретной игре. В качестве значения используется url игры (см. API Games) | NO | |
hidden | Query-параметр, флаг, выбирать ли скрытые каналы(по умолчанию такие каналы не выбираются) | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "_links": { "self": { "href": "http://api2.goodgame.ru/v2/streams?page=1" }, "first": { "href": "http://api2.goodgame.ru/v2/streams" }, "last": { "href": "http://api2.goodgame.ru/v2/streams?page=11" }, "next": { "href": "http://api2.goodgame.ru/v2/streams?page=2" } }, "_embedded": { "streams": [ { "request_key": "pomi", "id": 1644, "key": "Pomi", "is_broadcast": true, "broadcast_started": "1445515200", "broadcast_end": "1445556000", "url": "https://goodgame.ru/channel/Pomi/458/", "status": "Live", "viewers": "348", "player_viewers": "350", "users_in_chat": "167", "channel": { "id": 1644, "key": "Pomi", "premium": "true", "title": "FP Lotv, 17.00 Бобролига 1/8 ", "max_viewers": "2130", "player_type": "Premium", "gg_player_src": "pomi", "embed": "<iframe frameborder=\"0\" width=\"100%\" height=\"100%\" src=\"https://goodgame.ru/player?pomi\"></iframe>", "img": "1644_oRqp.jpg", "thumb": "http://hls.goodgame.ru/previews/pomi_240.jpg", "description": "html descripton", "adult": false, "games": [ { "title": "StarCraft II: Heart of the Swarm", "url": "starcraft-ii-heart-of-the-swarm" } ], "url": "https://goodgame.ru/channel/Pomi/" }, "_links": { "self": { "href": "http://api2.goodgame.ru/v2/streams/Pomi" } } }, ... ] }, "page_count": 11, "page_size": 25, "total_items": 251, "page": 1 }
GET /streams[/:channel]
Получение информации о конкретном стриме. Query-параметры не работают.
Fields
Field | Type | Description | Required |
---|---|---|---|
channel | Идентификатор стрима, может быть как символьным ключем канала (Пример: http://api2.goodgame.ru/streams/Miker), так и числовым id (Пример: http://api2.goodgame.ru/streams/5). Если указан, то информация вернется только для этого стрима. | NO | |
ids | Query-параметр, список идентификаторов стримов через запятую, информацию о которых требуется получить. Допускается до 50 идентификаторов за один запрос. | NO | |
page | Query-параметр, номер страницы при постраничном выводе. На одной странице выводится 25 стримов. | NO | |
only_gg | Query-параметр, флаг, указывающий на то, что выбирать только стримы с онлайн плеером Goodgame | NO | |
adult | Query-параметр, флаг, выбирать ли каналы с ограничениями (по умолчанию такие каналы не выбираются) | NO | |
game | Query-параметр. Фильтровать стримы по конкретной игре. В качестве значения используется url игры (см. API Games) | NO | |
hidden | Query-параметр, флаг, выбирать ли скрытые каналы(по умолчанию такие каналы не выбираются) | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "request_key": "miker", "id": 5, "key": "Miker", "is_broadcast": false, "broadcast_started": 0, "broadcast_end": 0, "url": "https://goodgame.ru/channel/Miker/", "status": "Dead", "viewers": "1104", "player_viewers": "31", "users_in_chat": "70", "channel": { "id": 5, "key": "Miker", "premium": "true", "title": "Немного FFA", "max_viewers": "3754", "player_type": "Premium", "gg_player_src": "6", "embed": "<iframe frameborder=\"0\" width=\"100%\" height=\"100%\" src=\"https://goodgame.ru/player?6\"></iframe>", "img": "https://goodgame.ru/images/channel-logo.jpg", "thumb": "http://hls.goodgame.ru/previews/6_240.jpg", "description": "", "adult": false, "games": [ { "title": "Warcraft III: The Frozen Throne", "url": "warcraft-iii-the-frozen-throne" } ], "url": "https://goodgame.ru/channel/Miker/" }, "_links": { "self": { "href": "http://api2.goodgame.ru/v2/streams/Miker" } } }
Subscribers
Список подписчиков указанного канала
GET /channel/:channel/subscribers
Требуется OAuth 2.0 аутентификация.
Scope: channel.subscribers
Fields
Field | Type | Description | Required |
---|---|---|---|
channel | Channel ID or Channel Key | YES | |
page | Query-параметр, номер страницы при постраничном выводе. На одной странице выводится до 50 подписчиков. | NO | |
from_timestamp | Query-параметр, timestamp, начиная с которого следует вернуть подписчиков канала. | NO |
Request
Headers
Header | Value |
---|---|
Accept | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 401: Unauthorized
- 403: Forbidden
Headers
Header | Value |
---|---|
Content-Type | application/vnd.goodgame.v2+json
application/hal+json
application/json |
Allow | Comma-separated list of all HTTP methods allowed |
Body
{ "_links": { "self": { "href": "http://api2.goodgame.ru/channel/:channel/subscribers?page=1" }, "first": { "href": "http://api2.goodgame.ru/channel/:channel/subscribers" }, "last": { "href": "http://api2.goodgame.ru/channel/:channel/subscribers?page=1" } }, "_embedded": { "subscribers": [ { "id": "User ID", "username": "User Name", "created_at": "unix timestamp", "_links": { "self": { "href": "http://api2.goodgame.ru/channel/:channel/subscribers" } } }, { "id": "", "username": "user_email@mail.com", "created_at": "1447166302", "_links": { "self": { "href": "http://api2.goodgame.ru/channel/:channel/subscribers" } } } ] }, "page_count": 1, "page_size": 50, "total_items": 2, "page": 1 }