117
edits
Changes
no edit summary
==Общее описание Common description of API==Данное This API позволяет разработчикам приложений работать с allows application developers to work with [[User_key|ключами пользователейuser keys]] в системе in Ace Streamsystem. API предоставляет методы для создания ключей пользователей и для активации различных опций для ключейprovides methods for creating user keys and activating different options for the keys.
==Формат запросовRequests format==Запросы API отправляются методом requests are sent via HTTP-GET на такие адресаmethod to the following addresses:* тестовый режимtest mode: <tt><nowiki>https://api-sandbox.acestream.net/developer</nowiki></tt>* боевой режимwork mode: <tt><nowiki>https://api.acestream.net/developer</nowiki></tt>
<tt><nowiki>{"error":"error descrtiption"}</nowiki></tt>
===Обязательные общие параметры для всех запросовRequired common parameters for all requests===* '''method''' - вызываемый метод called APImethod * '''api_key''' - ключ клиента APIclient key * '''api_version''' - поддерживаемая версия supported API version (текущая версияcurrent version: 1.0)* '''product''' - публичная часть public part of [[Product_key/en|ключа продуктаproduct key]]* '''sign''' - цифровая подпись запросаrequest's digital signature
===Алгоритм формирования цифровой подписиAlgorithm for generating a digital signature===* создается массив строк вида array of strings like "название_параметраparameter_name=значение_параметраparameter_value"is created * полученный массив сортируетсяthe resulting array is sorted * элементы отсортированного массива объединяются в строку с разделителем elements of the sorted array are combined in a string with a separator "#"* к полученной строке добавляется секретный ключ клиента private key of APIclient is added to the resulting string * подписью является signature is sha1-хеш от полученной строки hash of the resulting string (в шестнадцатеричном представленииin hexadecimal representation, 40 символовcharacters, маленькими буквамиlowercase)
<tt><nowiki>function makeSignature(array $params, $apiSecret)
{
}</nowiki></tt>
==Методы APImethods==
===getServiceCost===
<nowiki>https://api.acestream.net/developer?method=getServiceCost ↵
&api_version=1.0 ↵
&api_key=be6f66e0848528139583b567fb222215444fc8ac ↵
&productapp=kjYX790gTytRaXV04IvC 9_50gh753t6uscog88800kcksw04s0o0wccscco8kgsogwkocwgw ↵
&service=noAds ↵
&period=m1 ↵
&sign=45c84ceffd3ec443586e8f4666b28abde8400768</nowiki>
<nowiki>{"cost":1}</nowiki>
===activateService===
<nowiki>https://api.acestream.net/developer?method=activateService ↵
&api_version=1.0 ↵
&api_key=be6f66e0848528139583b567fb222215444fc8ac ↵
&productapp=kjYX790gTytRaXV04IvC 9_50gh753t6uscog88800kcksw04s0o0wccscco8kgsogwkocwgw ↵
&user_key=a455865e5800fd7efab75f2b4852fc2497f9fc39 ↵
&service=noAds ↵
&sign=c4df772a4a41ad7bbb4d7d07e46cad5e3622c59e</nowiki>
<nowiki>{"validFrom":1376048972,"validTo":1378640972}</nowiki>
<nowiki>{"error":"not enough credits"}</nowiki>
===getUserKeyInfo===
<nowiki>https://api.acestream.net/developer?method=getUserKeyInfo ↵
&api_version=1.0 ↵
&api_key=be6f66e0848528139583b567fb222215444fc8ac ↵
&productapp=kjYX790gTytRaXV04IvC 9_50gh753t6uscog88800kcksw04s0o0wccscco8kgsogwkocwgw ↵
&user_key=8fb311be3836b04f61817dbf8a23c05739ebb13e ↵
&sign=5e0fc46d908e5f224ce9fce9f6a83dd6b3502cc0</nowiki>
<tt>{"services":[]}</tt>
<nowiki>{"services": [
{"id": "noAds", "validFrom": 1374673235, "validTo": 1445089235, "enabled": true},
===createUserKey===
<nowiki>https://api.acestream.net/developer?method=createUserKey ↵
&api_key=cd3119af58cfa8833ba105a4fd4eb791395b921c ↵
&api_version=1.0 ↵
&productapp=kjYX790gTytRaXV04IvC 3_250o55jdisu88skggogg4g4w4wc8wgskss4gkgkkk40k0gcsw8 ↵
&sign=99982a11708ef4a80e12f1ca845d314340db8869</nowiki>
<tt>{
"userKey": "c7456d962209ce22a8edd0c788940a15792bc575",
}</tt>
==Идентификаторы опцийService ID==* '''noAds''' - опция service "No ADs" (отключение рекламы disable Ace Streamads)* '''premium''' - опция service "Premium Streams" (доступ к премиум-контентуaccess to premium content)* '''premium1device''' - премиум на одно устройствоservice "Premium Streams" for one device
==Идентификаторы периодовPeriod ID==* '''m1''' - 30 днейdays* '''y1''' - 365 днейdays