Začínáme

Co který uživatel vidí

Klíč vidí přesně to, co jeho uživatel v ovládacím panelu. V API není potřeba nic nastavovat: pravidla vycházejí z organizací a oprávnění uživatele.

Jen organizace uživatele

API bere v úvahu pouze organizace propojené s uživatelem, tedy stejné, které si může vybrat v ovládacím panelu.

Administrátor vidí v organizaci vše

Administrátor organizace nebo hlavní organizace vidí všechny její TV, soubory a playlisty.

Ostatní se řídí oprávněními

Pro ostatní uživatele platí v každé organizaci oprávnění k zobrazení TV, souborů a playlistů – stejná, která zpřístupňují tyto stránky v ovládacím panelu.

Změny platí okamžitě

Když v ovládacím panelu odeberete oprávnění nebo organizaci či deaktivujete uživatele, změna platí už při dalším požadavku.

Co se nezobrazí

  • Položky organizací bez oprávnění se ve výpisech nezobrazují. Přímý dotaz na některou z nich vrátí 404, jako by neexistovala.
  • V playlistu má soubor, který uživatel nemůže vidět, file nastavené na null. TV u playlistu a playlisty u souboru zobrazují jen to, co uživatel může vidět.
  • Smazané položky a TV, které ještě nebyly aktivovány, se nezobrazují.

Chcete-li zjistit, co může klíč načítat, zavolejte /organizations: každá organizace obsahuje admin a permissions.

Pokud váš systém potřebuje jen část dat, vytvořte pro něj v ovládacím panelu samostatného uživatele jen s potřebnými oprávněními a klíč vygenerujte v účtu tohoto uživatele.

Požadavek
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();
Odpověď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
      }
    }
  ]
}
Položka jiné organizace404
{
  "error": {
    "code": "not_found",
    "message": "Item not found or you do not have access to it."
  }
}