Алғашқы қадамдар

Әр пайдаланушы нені көре алады

Кілт өз пайдаланушысы басқару панелінде көретін нәрсені дәл солай көреді. 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();
Жауап200
{
  "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
      }
    }
  ]
}
Басқа ұйымның элементі404
{
  "error": {
    "code": "not_found",
    "message": "Item not found or you do not have access to it."
  }
}