İlk addımlar
Hər istifadəçi nəyi görə bilər
Açar onun istifadəçisinin idarəetmə panelində gördüklərini olduğu kimi görür. API-də heç nəyi tənzimləmək lazım deyil: qaydalar istifadəçinin şirkətlərindən və icazələrindən gəlir.
Yalnız istifadəçinin şirkətləri
API yalnız istifadəçiyə bağlı olan şirkətləri, yəni onun idarəetmə panelində seçə bildiyi şirkətləri nəzərə alır.
İnzibatçı şirkətdəki hər şeyi görür
Şirkətin və ya əsas şirkətin inzibatçısı həmin şirkətin bütün TV-lərini, fayllarını və pleylistlərini görür.
Digərləri icazələrdən asılıdır
Digər istifadəçilər üçün hər şirkətdə TV-lərə, fayllara və pleylistlərə baxış icazələri tətbiq olunur — idarəetmə panelində həmin səhifələri açan icazələrin eynisi.
Dəyişikliklər dərhal qüvvəyə minir
İdarəetmə panelində geri alınan icazə, çıxarılan şirkət və ya deaktiv edilən istifadəçi növbəti sorğuda artıq nəzərə alınır.
Nələr göstərilmir
- İcazə olmayan şirkətlərin elementləri siyahılarda görünmür. Onlardan birini birbaşa sorğuladıqda, sanki mövcud deyilmiş kimi
404qaytarılır. - Pleylistdə istifadəçinin görə bilmədiyi fayl üçün
filedəyərinullolur. Pleylistin TV-ləri və faylın pleylistləri yalnız istifadəçinin görə bildiklərini göstərir. - Silinmiş elementlər və hələ aktivləşdirilməmiş TV-lər görünmür.
Açarın nələri sorğulaya biləcəyini öyrənmək üçün /organizations endpointini çağırın: hər şirkət admin və permissions sahələri ilə gəlir.
Sisteminizə məlumatların yalnız bir hissəsi lazımdırsa, idarəetmə panelində yalnız onun üçün, yalnız lazımi icazələri olan bir istifadəçi yaradın və açarı həmin istifadəçinin hesabında yaradın.
curl "https://api.on-cloud.live/v1/organizations" \
-H "X-API-Key: $API_KEY"<?php
$ch = curl_init('https://api.on-cloud.live/v1/organizations');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['X-API-Key: ' . getenv('API_KEY')],
]);
$response = json_decode(curl_exec($ch), true);const res = await fetch('https://api.on-cloud.live/v1/organizations', {
headers: { 'X-API-Key': process.env.API_KEY }
});
const { data } = await res.json();{
"data": [
{
"uid": "8f14e45fceea167a5a36dedd4bea2543",
"name": "Loja Centro",
"neutral_zone": false,
"admin": true,
"permissions": {
"tvs": true,
"files": true,
"playlists": true
}
},
{
"uid": "1679091c5a880faf6fb5e6087eb1b2dc",
"name": "Loja Shopping Norte",
"neutral_zone": false,
"admin": true,
"permissions": {
"tvs": true,
"files": true,
"playlists": true
}
}
]
}{
"error": {
"code": "not_found",
"message": "Item not found or you do not have access to it."
}
}