Referencia · TVs

Listar TVs

GET /v1/tvs

Devuelve las TVs activadas de las organizaciones en las que el usuario puede ver TVs, en orden alfabético.

Respuesta paginada: los elementos vienen en data y la información de la página, en meta. Paginación y filtros

Parámetros

NombreTipoDescripción
organizationstringuid de una organización, para traer solo sus elementos (mirá /organizations).
qstringParte del nombre, con un máximo de 100 caracteres.
pageintegerPágina, a partir de 1. Predeterminado: 1.
per_pageintegerElementos por página, de 1 a 100. Predeterminado: 50.

Campos de cada elemento

uid string
Identificador de la TV, el mismo que se usa en el panel.
name string
Nombre de la TV.
description string
Descripción de la TV (puede estar vacía).
organization object
Organización de la TV: uid y name.
playlist object | null
Lista de reproducción de la TV (uid y name), o null si no tiene ninguna.
status string
online, alert u offline, como se explica más abajo.
last_seen_at string | null
Último contacto de la TV con la plataforma, o null si nunca se conectó.
activated_at string | null
Cuándo se activó la TV.
app_version string
Versión de la aplicación instalada en la TV.
os string
Sistema operativo de la TV, como android.
device object
Marca (brand) y modelo (model) del dispositivo, cuando la TV los informa.
timezone string | null
Zona horaria de la TV, como America/Sao_Paulo, o null.

Cómo se calcula el estado

  • online último contacto hace menos de 3 minutos, reproduciendo
  • alert último contacto hace entre 3 y 9 minutos, o la TV todavía se está iniciando
  • offline sin contacto desde hace 10 minutos o más, o nunca se conectó

Es la misma regla que usan los colores de estado del panel.

Errores posibles

  • 400 invalid_parameter Un parámetro tiene un valor no válido, como per_page por encima del máximo.
  • 404 organization_not_found El organization indicado no corresponde a una organización en la que el usuario pueda ver este tipo de elemento.
  • Los errores de clave y de límite valen para todos los endpoints. Ver todos los errores
Solicitud
curl "https://api.on-cloud.live/v1/tvs?per_page=2" \
  -H "X-API-Key: $API_KEY"
<?php
$ch = curl_init('https://api.on-cloud.live/v1/tvs?per_page=2');
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/tvs?per_page=2', {
  headers: { 'X-API-Key': process.env.API_KEY }
});
const { data, meta } = await res.json();
Respuesta200
{
  "data": [
    {
      "uid": "d3d9446802a44259755d38e6d163e820",
      "name": "Caixa 2",
      "description": "",
      "organization": {
        "uid": "1679091c5a880faf6fb5e6087eb1b2dc",
        "name": "Loja Shopping Norte"
      },
      "playlist": null,
      "status": "offline",
      "last_seen_at": "2026-11-01T18:04:51-03:00",
      "activated_at": "2025-03-12T09:41:05-03:00",
      "app_version": "3.12.83",
      "os": "android",
      "device": {
        "brand": "Philco",
        "model": "PTV32G70"
      },
      "timezone": "America/Sao_Paulo"
    },
    {
      "uid": "c98cb8f9cc62887d1f6cf5693df9219c",
      "name": "Recepção",
      "description": "TV da entrada",
      "organization": {
        "uid": "8f14e45fceea167a5a36dedd4bea2543",
        "name": "Loja Centro"
      },
      "playlist": {
        "uid": "e4da3b7fbbce2345d7772b0674a318d5",
        "name": "Lista principal"
      },
      "status": "online",
      "last_seen_at": "2026-11-03T14:32:10-03:00",
      "activated_at": "2025-03-12T09:41:05-03:00",
      "app_version": "3.12.84",
      "os": "android",
      "device": {
        "brand": "TCL",
        "model": "43P635"
      },
      "timezone": "America/Sao_Paulo"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 2,
    "total": 3,
    "total_pages": 2
  }
}