Први кораци
Шта који корисник види
Кључ види тачно оно што његов корисник види на контролној табли. У API-ју не треба ништа подешавати: правила потичу из организација и дозвола корисника.
Само организације корисника
API узима у обзир само организације повезане са корисником, исте оне које може да изабере на контролној табли.
Администратор види све у организацији
Администратор организације, или главне организације, види све њене ТВ уређаје, датотеке и плејлисте.
Остали зависе од дозвола
За остале кориснике у свакој организацији важе дозволе за преглед ТВ уређаја, датотека и плејлиста, исте оне које откључавају те странице на контролној табли.
Измене важе одмах
Уклоњена дозвола, уклоњена организација или деактивиран корисник на контролној табли важе већ од следећег захтева.
Шта остаје изван одговора
- Ставке организација без дозволе не појављују се у листама. Директан захтев за неку од њих враћа
404, као да не постоји. - У плејлисти, датотека коју корисник не може да види стиже са
fileједнакимnull. ТВ уређаји неке плејлисте и плејлисте неке датотеке приказују само оно што корисник може да види. - Обрисане ставке и ТВ уређаји који још нису активирани не појављују се.
Да бисте сазнали шта кључ може да чита, позовите /organizations: свака организација стиже са admin и permissions.
Ако вашем систему треба само део података, направите на контролној табли засебног корисника за њега, само са потребним дозволама, а кључ направите на налогу тог корисника.
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."
}
}