Referencia API

API de Pantallas

Pantallas

Referencia HTTP. Generada a partir del contrato backend. Explore los endpoints abajo o descargue OpenAPI.

Este grupo tiene 84 operaciones, generadas a partir de api/openapi.yaml. Filtre por ruta, acción o autenticación. Cada endpoint indica sus entradas; despliéguelo para ver una plantilla de solicitud y los códigos de respuesta. Las plantillas necesitan sus propios valores y un cuerpo válido según el esquema.

Reemplace los marcadores en mayúsculas con sus valores. Para una solicitud JSON, guarde un cuerpo que coincida con el esquema en request.json. Los ejemplos de cookies usan un frasco de cookies local de una sesión autenticada.

Pantallas

GET/api/screens

Listar pantallas

La lista predeterminada devuelve pantallas pairing_pending y activas. Pase state=archived para listar solo pantallas archivadas. Pase tag para listar solo pantallas cuyos tags contengan exactamente esa etiqueta; las pantallas sin etiqueta se omiten cuando el filtro está presente.

Pase field, una vez por campo, como NAME:VALUE para listar solo las pantallas cuyos campos contienen todos los valores, y near como LAT,LON,KM para listar solo las pantallas ubicadas a KM kilómetros o menos del punto; se omiten las pantallas sin ubicación, y todos los filtros se combinan con state y tag.

Pase folder como un ID de carpeta de pantallas para listar solo las pantallas directamente dentro de ella (no las de sus subcarpetas), o root para las pantallas fuera de toda carpeta.

Las pantallas van de la más reciente a la más antigua, como máximo 500 por página. next_cursor es la posición de la última fila devuelta mientras quedan más filas; páselo de vuelta como after, con los mismos filtros, para la página siguiente. next_cursor es null en la última página. Un llamador limitado a pantallas (docs/screen-scope.md) lista solo las pantallas de su alcance.

Una solicitud que no nombra ningún proyecto omite cada proyecto donde el llamador está limitado a pantallas; nombre el proyecto para listarlo.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
listScreens

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
estadoconsultaopcionalOmitir para pairing_pending y activo. Pase archived para listar solo pantallas archivadas.
etiquetaconsultaopcionalEtiqueta exacta de pantalla. Las pantallas sin etiqueta se omiten cuando este filtro está presente.
fieldconsultaopcional

NAME:VALUE, dividido en el primer signo de dos puntos: solo las pantallas cuyo campo NAME contiene exactamente VALUE. Repita el parámetro para varios campos; todos deben coincidir, y un nombre puede indicarse una sola vez. Uno con formato incorrecto o repetido devuelve invalid_request e indica field.

nearconsultaopcional

LAT,LON,KM en grados decimales y kilómetros, por ejemplo 47.6062,-122.3321,25: solo las pantallas cuya ubicación está a KM kilómetros o menos del punto. La latitud va de -90 a 90, la longitud de -180 a 180 y KM debe ser mayor que 0 y como máximo 20038. Se omiten las pantallas sin ubicación. Un valor con formato incorrecto devuelve invalid_request e indica near.

carpetaconsultaopcionalUn ID de carpeta de pantallas mantiene solo las pantallas directamente dentro de esa carpeta, no las de sus subcarpetas; root mantiene solo las pantallas fuera de toda carpeta. Si se omite, lista todas las pantallas.
despuésconsultaopcionalnext_cursor de la página anterior de la misma lista, con los mismos filtros. Omitido comienza en la fila más reciente. Un valor que no sea tal cursor es invalid_request.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens'

Respuestas

EstadoSignificadoCuerpo y encabezados
200PantallasScreenList (application/json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screen-folders

Listar carpetas de pantallas

Lista todas las carpetas de pantallas del proyecto, como máximo 1000, ordenadas por nombre.

Las carpetas organizan las pantallas y las seleccionan: una hoja de audiencia de campaña {"folder": ID} coincide con las pantallas de esa carpeta y de cada carpeta que contiene, un selector de acción de flota by:folder actúa sobre las mismas pantallas, y el default_playlist_id de una carpeta es lo que muestran sus pantallas que no tienen una lista de reproducción propia. parent_id es null en la raíz del proyecto; construya el árbol a partir de parent_id. screens cuenta las pantallas en vivo directamente dentro de cada carpeta.

La carpeta de una pantalla es Screen.folder_id. Un llamador limitado a pantallas (docs/screen-scope.md) lista las carpetas dentro de su alcance y las carpetas que están encima, que son de solo lectura para que su árbol tenga raíz; las carpetas de arriba no llevan recuento de pantallas y las carpetas hermanas se ocultan. Una solicitud que no nombra ningún proyecto omite cada proyecto donde el llamador está limitado a pantallas.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
listScreenFolders

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screen-folders'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Carpetas de pantallasScreenFolderList (application/json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screen-folders

Crear carpeta de pantallas

Crea una carpeta de pantallas en la raíz del proyecto (parent_id nulo o ausente) o dentro de parent_id. Los nombres se recortan, tienen de 1 a 100 caracteres Unicode sin controles, no son "." ni ".." y son únicos entre las carpetas del mismo nivel (resource_conflict).

Una organización tiene como máximo 1000 carpetas en todos sus proyectos (quota_exceeded) anidadas a lo sumo 10 niveles (invalid_request). default_playlist_id, cuando se establece, debe nombrar una lista de reproducción aprobada (playlist_not_approved). Emite screen.folder_created.

Un llamador limitado a pantallas (docs/screen-scope.md) crea una carpeta solo dentro de una carpeta de su alcance; la raíz del proyecto o cualquier otro padre es outside_screen_scope. Crear una carpeta dentro de una carpeta protegida es una revisión protected_change (202 pending_review) decidida por un segundo aprobador.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenFolderCreate
ID de operación
createScreenFolder

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
nombre (requerido, cadena)Recortado; de 1 a 100 caracteres Unicode, sin controles, distinto de . y .., único entre las carpetas del mismo nivel. minLength: 1 maxLength: 100
parent_id (opcional, en línea)La carpeta en la que crearla; null o ausente para la raíz del proyecto.
default_playlist_id (opcional, cadena)Una lista de reproducción aprobada para las pantallas de la carpeta que no tienen una propia. minLength: 1
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screen-folders'

Respuestas

EstadoSignificadoCuerpo y encabezados
201Carpeta creada.ScreenFolder (application/json); encabezados: ETag
202

La escritura se convirtió en una revisión y espera la aprobación de una persona (docs/reviews.md), con acceso Proponer, o con cualquier nivel de acceso cuando alcanza una pantalla de una carpeta de pantallas protegida, donde la decide un segundo aprobador (docs/screen-scope.md). Una persona aprueba, rechaza o solicita cambios en el panel, en review.url.

Una repetición de Idempotency-Key responde con el mismo cuerpo.

ReviewPending (application/json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screen-folders/{id}

Obtener carpeta de pantallas

Un llamador limitado a pantallas (docs/screen-scope.md) lee las carpetas de su alcance y las carpetas que están encima; cualquier otra carpeta, y un id desconocido, es outside_screen_scope.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenFolder

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screen-folders/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Una carpeta de pantallas.ScreenFolder (application/json); encabezados: ETag
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screen-folders/{id}

Actualizar carpeta de pantallas

Cambia el nombre de una carpeta (name), la mueve con todo lo que contiene (parent_id, null para la raíz del proyecto) o establece la lista de reproducción predeterminada que muestran sus pantallas que no tienen una propia (default_playlist_id, null la borra). Una carpeta no puede moverse dentro de sí misma ni dentro de una carpeta contenida en ella, y el movimiento debe mantener todas las carpetas dentro de 10 niveles (invalid_request).

Un movimiento o un cambio de la predeterminada vuelve a resolver las pantallas de dentro en unos 15 segundos, y los niveles de la respuesta nombran las campañas y las predeterminadas de carpeta que esas pantallas ganan o pierden. Un cambio avanza la revisión de la carpeta y emite screen.folder_updated; los mismos valores no hacen nada.

If-Match protege opcionalmente la revisión. protected true protege la carpeta y cada carpeta que hay dentro, y false lo borra; envíelo solo (de lo contrario invalid_request). Solo lo define una persona que puede aprobar: un agente, un cliente de servicio o un miembro que no puede aprobar recibe approver_required.

Un cambio añade screen.folder_protection_changed (detalles folder_id, protected). Quitar la protección, y un movimiento o un cambio de lista de reproducción predeterminada en una carpeta que contiene pantallas protegidas, es una revisión protected_change decidida por un segundo aprobador (202 pending_review).

Un llamador limitado a pantallas (docs/screen-scope.md) cambia solo carpetas dentro de su alcance: parent_id también debe nombrar una (la raíz es outside_screen_scope), y protected no le corresponde cambiarlo en una carpeta que su alcance nombra. protected true corresponde a las carpetas protegidas, que incluye el plan Enterprise; un proyecto cuyo plan no lo incluye se rechaza con feature_not_in_plan (402).

La protección establecida sigue reteniendo los cambios para un segundo aprobador, y pedir quitarla es una revisión en todos los planes.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenFolderPatch
ID de operación
updateScreenFolder

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
nombre (opcional, cadena)Recortado; de 1 a 100 caracteres Unicode, sin controles, distinto de . y .., único entre las carpetas del mismo nivel. minLength: 1 maxLength: 100
parent_id (opcional, en línea)Mueve la carpeta dentro de esta; null para la raíz del proyecto.
default_playlist_id (opcional, en línea)Una lista de reproducción aprobada para las pantallas de la carpeta que no tienen una propia; null la borra.
protected (opcional, booleano)

Protege la carpeta y cada carpeta que hay dentro (docs/screen-scope.md). Solo lo define una persona que puede aprobar. Envíelo solo: con cualquier otro miembro la solicitud es invalid_request. Quitarlo de una carpeta protegida es en sí un cambio protegido, una revisión que decide un segundo aprobador (202 pending_review).

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screen-folders/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Carpeta actualizada.ScreenFolder (application/json); encabezados: ETag
202

La escritura se convirtió en una revisión y espera la aprobación de una persona (docs/reviews.md), con acceso Proponer, o con cualquier nivel de acceso cuando alcanza una pantalla de una carpeta de pantallas protegida, donde la decide un segundo aprobador (docs/screen-scope.md). Una persona aprueba, rechaza o solicita cambios en el panel, en review.url.

Una repetición de Idempotency-Key responde con el mismo cuerpo.

ReviewPending (application/json)
402feature_not_in_plan — Las carpetas protegidas forman parte del plan Enterprise; el problema nombra la función, el plan que tiene la cuenta y required_plan.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screen-folders/{id}

Eliminar carpeta de pantallas

Elimina una carpeta. Nada de lo que contiene se elimina: sus pantallas y carpetas suben al padre de la carpeta eliminada (la raíz del proyecto si no tenía padre), cada carpeta movida avanza su revisión y esas pantallas se vuelven a resolver.

Se rechaza con resource_conflict mientras una audiencia de campaña nombre la carpeta, para que ninguna programación pierda sus pantallas en silencio: cambie o elimine primero esas campañas. Responde con los niveles que sus pantallas ganaron o perdieron. Emite screen.folder_deleted. If-Match protege opcionalmente la revisión.

Un llamador limitado a pantallas (docs/screen-scope.md) elimina solo una carpeta dentro de su alcance que su alcance no nombra directamente (outside_screen_scope); las pantallas que contiene suben al padre. Eliminar una carpeta protegida, o una que contiene pantallas protegidas, es una revisión protected_change (202 pending_review) decidida por un segundo aprobador.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
deleteScreenFolder

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screen-folders/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Eliminado; su contenido ahora está en su padre. levels nombra las listas de reproducción predeterminadas de carpeta que sus pantallas ganaron o perdieron.ScreenFolderDeleteResult (application/json)
202

La escritura se convirtió en una revisión y espera la aprobación de una persona (docs/reviews.md), con acceso Proponer, o con cualquier nivel de acceso cuando alcanza una pantalla de una carpeta de pantallas protegida, donde la decide un segundo aprobador (docs/screen-scope.md). Una persona aprueba, rechaza o solicita cambios en el panel, en review.url.

Una repetición de Idempotency-Key responde con el mismo cuerpo.

ReviewPending (application/json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/move

Mover pantallas

Mueve pantallas (screen_ids) y carpetas (folder_ids) a una carpeta (folder_id), o a la raíz del proyecto cuando folder_id es null, en una sola solicitud de todo o nada de como máximo 1000 ids. Todos los ids deben existir (not_found). Una carpeta no puede moverse dentro de sí misma ni dentro de una carpeta contenida en ella, y el movimiento debe mantener todas las carpetas dentro de 10 niveles (invalid_request).

Los elementos que ya están en el destino se dejan como están; cada pantalla y carpeta movida avanza su revisión. Las pantallas movidas vuelven a resolver su lista de reproducción en unos 15 segundos: levels nombra las campañas cuya audiencia de carpeta pasan a integrar o dejan de integrar y las listas de reproducción predeterminadas de carpeta que ganan o pierden.

Emite screen.moved, cuyos detalles llevan los conteos (screens, folders) y dónde estaba cada elemento movido: moves [{screen_id, from}] (from es el id de la carpeta, vacío para la raíz) y folder_moves [{folder_id, from_parent}], como máximo 1000 de cada uno, para que un historial pueda devolverlos con esta ruta.

Un llamador limitado a pantallas (docs/screen-scope.md) mueve pantallas y carpetas dentro de su alcance a una carpeta de su alcance; cualquier id o destino fuera de él, y la raíz del proyecto, rechazan todo el movimiento (outside_screen_scope), también cuando una pantalla sale del alcance entre la comprobación y la escritura.

Un movimiento hacia dentro o fuera de una carpeta protegida es una revisión protected_change decidida por un segundo aprobador (202 pending_review).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenMove
ID de operación
moveScreens

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
folder_id (requerido, en línea)Carpeta de destino; null para la raíz del proyecto.
screen_ids (opcional, array)
folder_ids (opcional, arreglo)
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/move'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Cuántas pantallas y carpetas se movieron, y los niveles que las pantallas movidas ganan o pierden.ScreenMoveResult (application/json)
202

La escritura se convirtió en una revisión y espera la aprobación de una persona (docs/reviews.md), con acceso Proponer, o con cualquier nivel de acceso cuando alcanza una pantalla de una carpeta de pantallas protegida, donde la decide un segundo aprobador (docs/screen-scope.md). Una persona aprueba, rechaza o solicita cambios en el panel, en review.url.

Una repetición de Idempotency-Key responde con el mismo cuerpo.

ReviewPending (application/json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/schedule/calendar

Obtener calendario de horario

Responde qué reproducen las pantallas de un sujeto durante [from, to) y por qué, para el calendario de Horario del panel: exactamente uno de screen_id, folder_id (las pantallas de la carpeta y de cada carpeta dentro de ella), tag o campaign_id (las pantallas de su audiencia).

Las pantallas cuyas pilas tienen entradas idénticas (los mismos niveles, predeterminado, zona horaria y número de pantallas) comparten un grupo con una línea de tiempo, de modo que un sujeto grande cuesta decenas de líneas de tiempo; un grupo lista hasta 500 de sus pantallas y una respuesta, como máximo 200 grupos (truncated).

Cada grupo lleva su pila, de mayor a menor (takeover, las campañas que alcanzan las pantallas, sus propias entradas de horario, luego la lista de reproducción predeterminada o la de la carpeta más cercana), los tramos de cada nivel (se reproduce en cada pantalla a la que apunta, parcial con las pantallas en las que se reproduce, superado, o condicional mientras espera una interacción o una condición de datos que solo un Player observa), lo que muestra cada pantalla (on_screen; la región principal de una página completa) y conflictos (dos campañas de una misma prioridad vigentes a la vez; un nivel que rige pero nunca se reproduce). from y to son instantes RFC 3339, con to posterior a from y como máximo 93 días de diferencia; se truncan al minuto.

Las reglas se leen en la zona horaria de cada grupo, igual que las leen el barrido y cada Player; todo nivel se juzga reproducible. Un llamador limitado a pantallas (docs/screen-scope.md) debe enviar un screen_id o un folder_id dentro de su alcance; una etiqueta, un campaign_id o ningún asunto es outside_screen_scope.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScheduleCalendar

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
desdeconsultarequerido
aconsultarequerido
screen_idconsultaopcional
folder_idconsultaopcional
etiquetaconsultaopcional
campaign_idconsultaopcional
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/schedule/calendar?from=FROM&to=TO'

Respuestas

EstadoSignificadoCuerpo y encabezados
200El calendario del sujeto.ScheduleCalendar (application/json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/pair

Emparejar pantalla

Reclama una sesión de emparejamiento de Player global para la flota con seis caracteres. Reintentos con la misma Idempotency-Key devuelven el resultado original duradero sin consumir cuota nuevamente.

La sesión del panel lo reclama en su proyecto actual con el mismo cuerpo, Idempotency-Key, presupuestos y problemas, salvo que su not_found para un código desconocido o ya reclamado no nombra ningún comando de la CLI; es un cambio de estado, así que sigue las reglas de mutación del panel, se rechaza una sesión sombra sin modo de escritura del personal, y los eventos que añade la reclamación nombran al usuario del panel. folder_id nombra la carpeta en la que queda la pantalla.

Un llamador limitado a pantallas (docs/screen-scope.md) debe enviar una carpeta dentro de su alcance y empareja solo como persona que puede aprobar (outside_screen_scope, approver_required).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
Pantalla de vinculación
ID de operación
pairScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
Idempotency-Keyencabezadorequerido

Campos del cuerpo de la solicitud

CampoDescripción
código (requerido, cadena)patrón: "^[23456789ABCDEFGHJKMNPQRSTUVWXYZ]{6}$"
etiqueta (opcional, cadena)minLength: 1 maxLength: 120
folder_id (opcional, cadena)

La carpeta de pantallas en la que queda la pantalla; si se omite, queda en la raíz del proyecto. Un llamador limitado a pantallas debe enviar una carpeta dentro de su alcance (de lo contrario outside_screen_scope). Una carpeta que el proyecto no contiene es invalid_request para un llamador de todo el proyecto.

Parte de la solicitud idempotente: otro folder_id con la misma Idempotency-Key es idempotency_mismatch. minLength: 1

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/pair'

Respuestas

EstadoSignificadoCuerpo y encabezados
201Reclamo duradero de pantalla pairing_pending.PairingClaim (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
413

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
500

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/provision

Provisionar pantalla

Aprovisionamiento opcional de una pantalla nueva, solo en navegador. Siempre crea una pantalla nueva en pairing_pending; como máximo cinco esperan a vincularse a la vez (quota_exceeded). Los reintentos exactos vuelven a entregar el mismo token de fragmento durante diez minutos. El emparejamiento de seis caracteres sigue siendo el flujo predeterminado y el único de recuperación. folder_id nombra la carpeta en la que queda la pantalla.

Un llamador limitado a pantallas (docs/screen-scope.md) debe enviar una carpeta dentro de su alcance (de lo contrario outside_screen_scope).

Autenticación
projectBearer
Cuerpo de la solicitud
ProvisionScreen
ID de operación
provisionScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
Idempotency-Keyencabezadorequerido

Campos del cuerpo de la solicitud

CampoDescripción
etiqueta (opcional, cadena)minLength: 1 maxLength: 120
folder_id (opcional, cadena)La carpeta de pantallas en la que queda la pantalla, como en PairScreen. minLength: 1
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/provision'

Respuestas

EstadoSignificadoCuerpo y encabezados
201Nuevo enlace de aprovisionamiento para navegador.ScreenProvisioning (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
410

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
413

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
500

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/actions

Aplicar acciones de pantalla

Aplica una acción a una flota seleccionada sin límite de conteo de pantallas. Seleccione screen_ids únicos o una etiqueta que coincida con pantallas activas en orden de creación. La selección resuelta se fija antes de cualquier mutación, se almacena en fragmentos limitados y se mantiene durante veinticuatro horas bajo Idempotency-Key.

Cada paso utiliza su ruta de mutación de pantalla única, preservando revisiones, eventos, señales de tiempo de ejecución y límites por pantalla. Una respuesta contiene una página limitada de resultados; coincidentes, exitosos y fallidos describen esa página. HTTP 202 incluye total, offset y next_cursor. Continúe con el mismo selector, acción y Idempotency-Key, pasando next_cursor como after.

Respete Retry-After cuando esté presente, incluso una página con cero resultados. La respuesta refleja Idempotency-Key, incluyendo una clave generada cuando el llamante la omitió; conserve esta clave para continuaciones. HTTP 200 finaliza la selección. Las páginas respondidas se reproducen exactamente, incluyendo fallos por pantalla; los pasos interrumpidos se reproducen sin repetir sus efectos.

Las acciones grandes se regulan según los presupuestos existentes de 600 por minuto por organización para recarga, toast, toma de control, programación de listas de reproducción, reinicio, pantalla y programación de pantalla; el agotamiento del presupuesto de la organización pausa la acción en lugar de rechazar la flota. El agotamiento por pantalla falla solo esa pantalla.

Un paso assign, takeover o set_playlist_schedule que vincula una lista de reproducción con formato a una pantalla cuyo muro tiene otra forma falla solo para esa pantalla con 409 playlist_format_mismatch. Las asignaciones y los cambios de etiquetas no tienen presupuesto de mensajes.

Una asignación cuya lista de reproducción tiene un src de iframe o parámetros de aplicación que leen un token de pantalla que le falta a alguna pantalla de la página añade una advertencia screen_fact_missing a esa página (warnings, PlaylistWarning). El fallo parcial es un resultado normal. Todas las páginas y reintentos bajo una misma clave son una sola acción medida.

Las solicitudes usan una carga útil de bytes limitada; use una etiqueta para una selección mayor que la carga útil de transporte. Un selector o acción malformados se rechazan antes de tocar cualquier pantalla.

Un llamador limitado a pantallas (docs/screen-scope.md) selecciona por screen_ids o por carpeta, cada pantalla dentro de su alcance; un selector de etiqueta, una pantalla fuera del alcance o una desconocida rechaza toda la acción (outside_screen_scope) antes de que se fije o se proponga nada.

Assign, takeover, takeover_clear, set_playlist_schedule y clear_playlist_schedule que alcanzan una pantalla protegida se convierte en una revisión que decide un segundo aprobador (202 pending_review) en todos los niveles de acceso; set_tags, add_tags, remove_tags, toast, display, display_clear, set_display_schedule y clear_display_schedule en una pantalla protegida son protected_target (409).

Una acción set_playlist_schedule con una entrada pausada (un borrador) corresponde al control de cambios de la programación, que incluye el plan Enterprise; un proyecto cuyo plan no lo incluye se rechaza con feature_not_in_plan (402).

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenActionRequest
ID de operación
applyScreenActions

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
Screenrig-Review-Noteencabezadoopcional

Nota opcional del proponente en una escritura de clase revisión, enviada como UTF-8 codificado en porcentaje (lo que escribe encodeURIComponent de JavaScript). El servidor la decodifica en porcentaje (una escape inválido es 400 invalid_request); la nota decodificada es texto plano, máximo 280 caracteres tras recortar, sin caracteres de control (de lo contrario 400 invalid_request).

Almacenado en la revisión cuando la escritura se convierte en una; ignorado cuando se aplica en vivo.

Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
despuésconsultaopcionalnext_cursor de la página de resultados anterior. Reutilice la Idempotency-Key original y el cuerpo de la solicitud.

Campos del cuerpo de la solicitud

CampoDescripción
selector (requerido, ScreenActionSelector)
acción (requerida, ScreenAction)Una acción de flota, discriminada por tipo. Cada miembro lleva solo sus propios parámetros; un miembro de otro tipo es un campo desconocido e invalid_request.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/actions'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Resultados por pantalla. El éxito parcial es una respuesta normal.ScreenActionResult (application/json); encabezados: Idempotency-Key, Cache-Control, RateLimit-Policy, RateLimit
202

Quedan más pantallas (continúe con next_cursor y la misma Idempotency-Key y el mismo cuerpo, respetando Retry-After), o, con estado pending_review, la acción se convirtió en una revisión con acceso Proponer (docs/reviews.md), o con cualquier nivel de acceso porque alcanza una pantalla de una carpeta de pantallas protegida (docs/screen-scope.md).

Solo asignar, takeover, takeover_clear, set_playlist_schedule y clear_playlist_schedule se convierten en revisiones; cualquier otra acción es insufficient_access para Propose.

inline (application/json); encabezados: Idempotency-Key, Retry-After, Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
402

feature_not_in_plan — set_reboot_schedule con enabled true (reinicios programados) y set_playlist_schedule con un bloqueo de displays (muros de video) forman parte de Plus; las acciones de borrado y los comandos puntuales están abiertos. payment_required — el proyecto no tiene crédito restante. El problema nombra la función, el plan del proyecto y required_plan.

Problema (application/problem+json)
403insufficient_access, outside_screen_scope cuando un llamador limitado a pantallas selecciona fuera de su alcance, o approver_required para un miembro limitado a pantallas que no puede aprobar.Problema (application/problem+json)
409

playlist_format_mismatch y los demás conflictos de la acción, o protected_target cuando set_tags, add_tags, remove_tags, toast, display, display_clear, set_display_schedule o clear_display_schedule alcanza una pantalla de una carpeta de pantallas protegida.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}

Obtener pantalla

Devuelve pantallas pairing_pending, activas y archivadas. Las pantallas eliminadas no se encuentran.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
200PantallaPantalla (application/json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}

Actualizar pantalla

Actualiza el name, playlist_id, timezone, wall, tags, fields, location, log_level, toast_level, display o kiosk de la pantalla. Un cambio de tags responde levels: las campañas a las que la pantalla entra o de las que sale, con el alcance de cada campaña antes y después. wall fija el muro de vídeo de la pantalla (un objeto) o lo borra (null).

Definir uno requiere un Player que haya declarado la capacidad de host display.wall; de lo contrario, 409 wall_unsupported.

Cambiarlo reemite la revisión del manifiesto y agrega screen.updated con details.wall (el objeto wall, o null una vez borrado). fields se combina con los valores propios de la pantalla (una cadena define un campo, null lo elimina, un fields con valor null borra todos los campos) y location define dónde está la pantalla (null la borra).

Cambiar cualquiera de los dos reemite la revisión del manifiesto de una pantalla que muestra una lista de reproducción, de modo que sus colocaciones de tarjetas vuelven a expandir sus tokens {screen.…}, y agrega screen.updated con details.fields (el objeto nuevo completo, {} una vez borrado) o details.location (el objeto nuevo, o null una vez borrado).

Un nombre o valor que la gramática rechaza, o un campo número treinta y tres, da invalid_request que lo nombra. log_level (debug, info, warn, error) y toast_level (info, alert, error) fijan el nivel más bajo que el Player genera o muestra, y null borra cada uno; cualquier otro valor da invalid_request.

Cambiar cualquiera de los dos regenera la revisión del manifiesto, que los lleva como miembro raíz verbosity. display define o borra los ajustes de oscurecimiento por inactividad y de brillo del monitor: display.idle {after_s, wake} oscurece la pantalla tras after_s segundos (de 30 a 86400) sin un toque ni una tecla o, cuando wake incluye presence, sin nadie frente a la pantalla, y un evento de activación (touch, presence o ambos, cada uno una sola vez) la enciende de inmediato; display.brightness {mode} es auto (el sensor de luz del dispositivo ajusta el brillo) o fixed (el valor predeterminado, el brillo del operador).

Un miembro que usted envía lo reemplaza, null lo borra, un miembro que omite se conserva, y un display con valor null borra ambos. kiosk {lock} true fija el Player a la pantalla (fijación de pantalla de Android) y false o null lo libera. El horario y la anulación de pantalla conservan sus propias rutas; un miembro display que nombre schedule o override es invalid_request.

Un valor fuera de rango o de un tipo incorrecto da invalid_request, que nombra la ruta (display.idle.after_s).

Cambiar cualquiera de ellos regenera la revisión del manifiesto de una pantalla que muestra una lista de reproducción y cambia el ETag del manifiesto de todas las pantallas; el manifiesto lleva display.idle y display.brightness en el miembro raíz display y el bloqueo como miembro raíz kiosk, y se agrega screen.manifest_changed; al leer la pantalla se obtienen como Screen.display.idle, Screen.display.brightness y Screen.kiosk.

El backend guarda lo que usted envía sea cual sea el Player: un Player aplica un ajuste solo cuando sus capacidades del host declaran display_power.idle, brightness.auto o kiosk_lock, y los Players más antiguos los ignoran. Asignar una lista de reproducción cuyo formato no coincide con el muro de la pantalla da 409 playlist_format_mismatch.

Con acceso Propose, un patch de playlist_id solo se convierte en una revisión (202 pending_review); cualquier otro campo, incluidos wall, fields, location, display y kiosk, da insufficient_access. Una lista de reproducción sin versión aprobada es playlist_not_approved.

Cuando la lista de reproducción que la pantalla muestra entonces tiene un src de iframe o parámetros de aplicación que leen un token de pantalla que a la pantalla le falta, la respuesta incluye una advertencia screen_fact_missing (warnings, PlaylistWarning) y el manifiesto de la pantalla omite esa primitiva.

En una pantalla protegida, playlist_id requiere la revisión de una segunda persona con autoridad de aprobación (202 pending_review) en cualquier nivel de acceso y se envía por separado (invalid_request junto con name); tags, fields, location, timezone, wall y display devuelven protected_target (409), también junto con playlist_id. Cambiar el nombre sigue siendo inmediato. Vaciar playlist_id (null) en una pantalla archivada devuelve 409 screen_archived.

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenPatch
ID de operación
updateScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Screenrig-Review-Noteencabezadoopcional

Nota opcional del proponente en una escritura de clase revisión, enviada como UTF-8 codificado en porcentaje (lo que escribe encodeURIComponent de JavaScript). El servidor la decodifica en porcentaje (una escape inválido es 400 invalid_request); la nota decodificada es texto plano, máximo 280 caracteres tras recortar, sin caracteres de control (de lo contrario 400 invalid_request).

Almacenado en la revisión cuando la escritura se convierte en una; ignorado cuando se aplica en vivo.

If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
nombre (opcional, cadena)minLength: 1 maxLength: 120
playlist_id (opcional, en línea)

La predeterminada de la pantalla: un id de lista de reproducción la asigna; null la quita; omitirla la conserva. Las tomas de control, las campañas, las programaciones y las predeterminadas heredadas de carpetas mantienen la prioridad. Sin contenido efectivo, el Player emparejado muestra su pantalla de espera.

zona horaria (opcional, cadena)

Identificador de zona horaria IANA, por ejemplo America/Los_Angeles. Es la zona en la que se evalúa cada regla de visibilidad de página en esta pantalla. Cambiarla renueva la revisión del manifiesto. Una pantalla asignada a una lista de reproducción que usa visibilidad de página debe tener una. minLength: 1 maxLength: 64

wall (opcional, en línea)El muro de video de la pantalla; null lo borra. Configurar uno requiere un reproductor que haya declarado la capacidad display.wall del host, de lo contrario 409 wall_unsupported. Cambiarlo renueva la revisión del manifiesto.
etiquetas (opcional, ScreenTags)

Etiquetas de selector de flota, de 0 a 16 etiquetas únicas exactas, cada una que coincide con la gramática de etiquetas de medios. En ScreenPatch el arreglo reemplaza todo el conjunto y un arreglo vacío lo borra; una etiqueta duplicada o malformada es invalid_request. Cambiar etiquetas aumenta la revisión de pantalla (If-Match la protege) y añade screen.updated con details.tags; nunca cambia la revisión del manifiesto.

Las etiquetas nunca están en el manifiesto en tiempo de ejecución ni en la autorización.

fields (opcional, inline)

Se combina con los valores propios de la pantalla, como un número de tienda o una región: una cadena define un campo, null lo elimina, y un fields con valor null borra todos los campos. Los nombres tienen de 1 a 32 letras minúsculas, dígitos o guiones bajos; los valores, de 1 a 200 caracteres tras quitar los espacios en los extremos; una pantalla lleva como máximo 32 campos.

Cambiar los campos reemite la revisión del manifiesto de una pantalla que muestra una lista de reproducción. Las colocaciones de tarjetas los leen mediante tokens {screen.field.NAME}.

location (opcional, inline)Dónde está la pantalla; null la borra. Cambiarla reemite la revisión del manifiesto de una pantalla que muestra una lista de reproducción. Las colocaciones de tarjetas la leen mediante el token {screen.location}.
log_level (opcional, en línea)

El nivel de registro más bajo que genera el Player de la pantalla: no escribe ninguna línea por debajo, y las líneas de error siempre se generan; null lo borra (el valor predeterminado del Player). Cambiarlo regenera la revisión del manifiesto, que lo lleva como verbosity.logLevel.

toast_level (opcional, en línea)

El nivel de toast más bajo que muestra el Player de la pantalla: no muestra ningún toast por debajo, y los toasts de error siempre se muestran; null lo borra (se muestran todos los toasts). Cambiarlo regenera la revisión del manifiesto, que lo lleva como verbosity.toastLevel.

display (opcional, en línea)

Los ajustes de oscurecimiento por inactividad y de brillo del monitor (display.idle, display.brightness). Un miembro que usted envía lo reemplaza, null lo borra, un miembro que omite se conserva; un display con valor null borra ambos. Cambiar cualquiera de los dos regenera la revisión del manifiesto de una pantalla que muestra una lista de reproducción, y el manifiesto los lleva en el miembro raíz display.

En una pantalla protegida es protected_target.

kiosk (opcional, en línea)

El bloqueo de kiosco (kiosk.lock). lock true fija el Player a la pantalla; false o null lo libera. Cambiarlo regenera la revisión del manifiesto de una pantalla que muestra una lista de reproducción, y el manifiesto lo lleva como miembro raíz kiosk.

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
202

La escritura se convirtió en una revisión y espera la aprobación de una persona (docs/reviews.md), con acceso Proponer, o con cualquier nivel de acceso cuando alcanza una pantalla de una carpeta de pantallas protegida, donde la decide un segundo aprobador (docs/screen-scope.md). Una persona aprueba, rechaza o solicita cambios en el panel, en review.url.

Una repetición de Idempotency-Key responde con el mismo cuerpo.

ReviewPending (application/json)
200PantallaPantalla (application/json)
402

feature_not_in_plan — Los muros de video forman parte de Plus: establecer un muro distinto del propio de la pantalla los necesita, null lo borra en todos los planes. El problema nombra la función, el plan del proyecto y required_plan.

Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
409

protected_target - el cambio alcanza una pantalla de una carpeta de pantallas protegida y no tiene una vía de revisión (docs/screen-scope.md). Quite la protección de la carpeta mediante una revisión, haga el cambio y proteja la carpeta de nuevo.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screens/{id}

Eliminar pantalla

Elimina suavemente una pantalla elegible y revoca inmediatamente sus credenciales de cookie y permisos en tiempo de ejecución. Las lecturas ordinarias luego devuelven not_found; la fila marcada se conserva al menos 90 días antes de la limpieza. If-Match protege la revisión y Idempotency-Key reproduce el resultado.

Una pantalla nativa vinculada a identidad devuelve screen_archive_required: use archive para conservar esa vinculación; una pantalla vinculada a identidad que ya está archivada sigue archivada (el mismo problema, indicándolo). Esta ruta no concede permiso administrativo de emergencia para liberar la inscripción nativa. Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
deleteScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
204Pantalla eliminada suavemente; su lápida se conserva al menos 90 días.sin cuerpo
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409screen_archive_required para una pantalla nativa vinculada a identidad, o protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md).Problema (application/problem+json)
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}/tags

Parche de etiquetas de pantalla

Una persona conectada establece las etiquetas de una pantalla. tags es el conjunto completo nuevo: un arreglo vacío lo borra, y una etiqueta malformada o repetida es invalid_request en tags[i].

Es el cambio de etiqueta que updateScreen hace, en la sesión del panel: la revisión de la pantalla avanza en uno, screen.updated lleva details.tags y a la persona como actor, y la revisión del manifiesto nunca cambia. Una pantalla pairing_pending, activa o archivada lo acepta.

El cuerpo no tiene ningún otro miembro: una sesión cambia el nombre de una pantalla con patchScreenName y le asigna su lista de reproducción con patchScreenPlaylist, y no puede cambiar su zona horaria. If-Match lleva la revisión de la pantalla y es obligatorio (invalid_request si falta, revision_conflict si está desactualizado).

Solo la sesión del panel; los agentes cambian las etiquetas con updateScreen o con una acción de flota set_tags, add_tags o remove_tags. listScreens con tag encuentra la pantalla por sus nuevas etiquetas. En una pantalla protegida el cambio es protected_target (409).

Autenticación
dashboardSession
Cuerpo de la solicitud
ScreenTagsPatch
ID de operación
patchScreenTags

Parámetros

NombreEnviar¿Requerido?Descripción
idrutarequerido
If-MatchencabezadorequeridoLa revisión actual de la pantalla, entre comillas o sin ellas (el ETag de la última lectura). Una revisión obsoleta es revision_conflict con current_revision.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
etiquetas (requerido, ScreenTags)

Etiquetas de selector de flota, de 0 a 16 etiquetas únicas exactas, cada una que coincide con la gramática de etiquetas de medios. En ScreenPatch el arreglo reemplaza todo el conjunto y un arreglo vacío lo borra; una etiqueta duplicada o malformada es invalid_request. Cambiar etiquetas aumenta la revisión de pantalla (If-Match la protege) y añade screen.updated con details.tags; nunca cambia la revisión del manifiesto.

Las etiquetas nunca están en el manifiesto en tiempo de ejecución ni en la autorización.

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --cookie cookies.txt --cookie-jar cookies.txt --header 'If-Match: "REVISION"' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/tags'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla tal como está almacenada ahora; ETag lleva su revisión.Pantalla (application/json); encabezados: ETag
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}/fields

Parche de campos de pantalla

Una persona con sesión iniciada cambia los campos de una pantalla con el merge patch de updateScreen: una cadena establece un campo, null lo quita, y un valor null en fields borra todos los campos. Un nombre o valor rechazado, o un campo número 33, es invalid_request en fields o fields.NAME.

La revisión de la pantalla aumenta en uno, una pantalla que muestra una lista de reproducción recibe una nueva revisión del manifiesto, y el evento lleva details.fields y a la persona como su actor. El cuerpo no tiene ningún otro miembro. If-Match lleva la revisión de la pantalla y es obligatorio (invalid_request si falta, revision_conflict si está desactualizado).

Solo la sesión del panel; los agentes usan PATCH /api/screens/{id} (updateScreen). En una pantalla protegida el cambio es protected_target (409).

Autenticación
dashboardSession
Cuerpo de la solicitud
ScreenFieldsPatch
ID de operación
patchScreenFields

Parámetros

NombreEnviar¿Requerido?Descripción
idrutarequerido
If-MatchencabezadorequeridoLa revisión actual de la pantalla, entre comillas o sin ellas (el ETag de la última lectura). Una revisión obsoleta es revision_conflict con current_revision.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
fields (obligatorio, inline)

Se combina con los valores propios de la pantalla, como un número de tienda o una región: una cadena define un campo, null lo elimina, y un fields con valor null borra todos los campos. Los nombres tienen de 1 a 32 letras minúsculas, dígitos o guiones bajos; los valores, de 1 a 200 caracteres tras quitar los espacios en los extremos; una pantalla lleva como máximo 32 campos.

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --cookie cookies.txt --cookie-jar cookies.txt --header 'If-Match: "REVISION"' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/fields'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla tal como está almacenada ahora; ETag lleva su revisión.Pantalla (application/json); encabezados: ETag
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}/location

Parche de ubicación de pantalla

Una persona con sesión iniciada establece o borra la ubicación de una pantalla con location de updateScreen: un objeto con latitude, longitude y, opcionalmente, name y address reemplaza toda la ubicación, y null la borra. Un miembro ausente o de tipo incorrecto, una coordenada fuera de rango, un nombre de más de 40 caracteres o una dirección de más de 200 es invalid_request en location.MEMBER.

La revisión de la pantalla aumenta en uno, una pantalla que muestra una lista de reproducción recibe una nueva revisión del manifiesto, y el evento lleva details.location y a la persona como su actor. El cuerpo no tiene ningún otro miembro. If-Match lleva la revisión de la pantalla y es obligatorio (invalid_request si falta, revision_conflict si está desactualizado).

Solo la sesión del panel; los agentes usan PATCH /api/screens/{id} (updateScreen). En una pantalla protegida el cambio es protected_target (409).

Autenticación
dashboardSession
Cuerpo de la solicitud
ScreenLocationPatch
ID de operación
patchScreenLocation

Parámetros

NombreEnviar¿Requerido?Descripción
idrutarequerido
If-MatchencabezadorequeridoLa revisión actual de la pantalla, entre comillas o sin ellas (el ETag de la última lectura). Una revisión obsoleta es revision_conflict con current_revision.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
location (obligatorio, inline)Dónde está la pantalla: el objeto reemplaza toda la ubicación y null la borra.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --cookie cookies.txt --cookie-jar cookies.txt --header 'If-Match: "REVISION"' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/location'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla tal como está almacenada ahora; ETag lleva su revisión.Pantalla (application/json); encabezados: ETag
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}/verbosity

Modificar la verbosidad de una pantalla

Una persona con la sesión iniciada fija o borra el nivel de registro y el nivel de toast de una pantalla con log_level (debug, info, warn, error) y toast_level (info, alert, error) de updateScreen: una cadena fija el nivel, null lo borra, y un miembro omitido se queda como está. Cualquier otro valor da invalid_request en log_level o toast_level.

La revisión de la pantalla avanza una unidad, una pantalla que muestra una lista de reproducción recibe una nueva revisión del manifiesto, y el Player lee los niveles del miembro verbosity del manifiesto. El cuerpo nombra al menos uno de los dos miembros y ningún otro. If-Match lleva la revisión de la pantalla y es obligatorio (invalid_request si falta, revision_conflict si está obsoleta).

Solo la sesión del panel; los agentes usan PATCH /api/screens/{id} (updateScreen).

Autenticación
dashboardSession
Cuerpo de la solicitud
ScreenVerbosityPatch
ID de operación
patchScreenVerbosity

Parámetros

NombreEnviar¿Requerido?Descripción
idrutarequerido
If-MatchencabezadorequeridoLa revisión actual de la pantalla, entre comillas o sin ellas (el ETag de la última lectura). Una revisión obsoleta es revision_conflict con current_revision.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
log_level (opcional, en línea)El nivel de registro más bajo que genera el Player de la pantalla; las líneas de error siempre se generan. null lo borra (el valor predeterminado del Player). Cambiarlo regenera la revisión del manifiesto.
toast_level (opcional, en línea)El nivel de toast más bajo que muestra el Player de la pantalla; los toasts de error siempre se muestran. null lo borra (se muestran todos los toasts). Cambiarlo regenera la revisión del manifiesto.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --cookie cookies.txt --cookie-jar cookies.txt --header 'If-Match: "REVISION"' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/verbosity'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla tal como está almacenada ahora; ETag lleva su revisión.Pantalla (application/json); encabezados: ETag
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}/device-settings

Parche de configuración del dispositivo de pantalla

Una persona con sesión iniciada define o borra los ajustes de oscurecimiento por inactividad y de brillo de una pantalla y su bloqueo de kiosco con los miembros display y kiosk de updateScreen: display.idle {after_s 30 a 86400, wake touch, presence o ambos}, display.brightness {mode auto o fixed} y kiosk.lock.

Un miembro que usted envía lo reemplaza, null lo borra, y un miembro omitido se queda como está; un display con valor null borra ambos. Un valor fuera de rango o de un tipo incorrecto da invalid_request, que nombra la ruta (display.idle.after_s).

La revisión de la pantalla avanza una unidad, una pantalla que muestra una lista de reproducción recibe una nueva revisión del manifiesto, y el Player lee los ajustes de los miembros del manifiesto display (idle, brightness) y kiosk. El cuerpo nombra al menos uno de display y kiosk y ningún otro miembro.

If-Match lleva la revisión de la pantalla y es obligatorio (invalid_request si falta, revision_conflict si está obsoleta). En una pantalla protegida, un cambio en display es protected_target (409). Solo para la sesión del panel; los agentes usan PATCH /api/screens/{id} (updateScreen).

Autenticación
dashboardSession
Cuerpo de la solicitud
ScreenDeviceSettingsPatch
ID de operación
patchScreenDeviceSettings

Parámetros

NombreEnviar¿Requerido?Descripción
idrutarequerido
If-MatchencabezadorequeridoLa revisión actual de la pantalla, entre comillas o sin ellas (el ETag de la última lectura). Una revisión obsoleta es revision_conflict con current_revision.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
display (opcional, en línea)

display.idle y display.brightness, como el display de updateScreen: un miembro que usted envía lo reemplaza, null lo borra, un miembro que omite se conserva; un display con valor null borra ambos. Cambiar cualquiera de los dos regenera la revisión del manifiesto de una pantalla que muestra una lista de reproducción. En una pantalla protegida es protected_target.

kiosk (opcional, en línea)kiosk.lock, como el kiosk de updateScreen: lock true fija el Player a la pantalla, false o null lo libera.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --cookie cookies.txt --cookie-jar cookies.txt --header 'If-Match: "REVISION"' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/device-settings'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla tal como está almacenada ahora; ETag lleva su revisión.Pantalla (application/json); encabezados: ETag
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}/name

Modificar nombre de pantalla

Una persona con sesión iniciada cambia el nombre de una pantalla con el name de updateScreen. El nombre se recorta y debe tener de 1 a 120 caracteres sin caracteres de control; de lo contrario, invalid_request en name (igual que si falta el nombre o es null).

La revisión de la pantalla avanza en uno y el evento es screen.manifest_changed, dirigido a la pantalla, con la persona como actor; la revisión del manifiesto se mantiene, así que la reproducción no se ve afectada y los Players actualizan el nombre a partir del ETag modificado. Un cambio de nombre al mismo nombre sigue avanzando la revisión y añade screen.updated. El cuerpo no tiene ningún otro miembro.

If-Match lleva la revisión de la pantalla y es obligatorio (invalid_request si falta, revision_conflict si está desactualizado). Solo para la sesión del panel; los agentes usan PATCH /api/screens/{id} (updateScreen).

Autenticación
dashboardSession
Cuerpo de la solicitud
ScreenNamePatch
ID de operación
patchScreenName

Parámetros

NombreEnviar¿Requerido?Descripción
idrutarequerido
If-MatchencabezadorequeridoLa revisión actual de la pantalla, entre comillas o sin ellas (el ETag de la última lectura). Una revisión obsoleta es revision_conflict con current_revision.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
nombre (requerido, cadena)El nombre de la pantalla, recortado; de 1 a 120 caracteres tras recortar, sin caracteres de control. minLength: 1 maxLength: 120
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --cookie cookies.txt --cookie-jar cookies.txt --header 'If-Match: "REVISION"' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/name'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla tal como está almacenada ahora; ETag lleva su revisión.Pantalla (application/json); encabezados: ETag
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PATCH/api/screens/{id}/playlist

Parche de la lista de reproducción de la pantalla

Una persona con sesión iniciada asigna la lista de reproducción de la pantalla con la asignación de updateScreen: la lista debe pertenecer al proyecto y tener una versión aprobada (playlist_not_approved), y una lista con formato necesita una pantalla cuyo muro tenga la misma forma (409 playlist_format_mismatch).

The screen revision moves by one and the manifest is reissued from the new playlist; while a takeover, a campaign or a schedule entry is effective the playlist becomes the default behind it. Events carry the person as their actor.

The write is live, so only the project owner or a member who can approve makes it (approver_required); a staff session needs its write lease. The body has no other member. If-Match carries the screen revision and is required (invalid_request when absent, revision_conflict when stale).

Solo la sesión del panel; los agentes usan PATCH /api/screens/{id} (updateScreen). En una pantalla protegida, la asignación de un aprobador es una revisión que decide un segundo aprobador (202 pending_review).

Autenticación
dashboardSession
Cuerpo de la solicitud
ScreenPlaylistPatch
ID de operación
patchScreenPlaylist

Parámetros

NombreEnviar¿Requerido?Descripción
idrutarequerido
If-MatchencabezadorequeridoLa revisión actual de la pantalla, entre comillas o sin ellas (el ETag de la última lectura). Una revisión obsoleta es revision_conflict con current_revision.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
playlist_id (obligatorio, en línea)

La lista de reproducción predeterminada de la pantalla; null quita su asignación propia. Una toma de control, una campaña, una entrada de programación o una predeterminada heredada de una carpeta aún puede mostrar contenido; si no, el Player emparejado muestra su pantalla de espera.

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PATCH --cookie cookies.txt --cookie-jar cookies.txt --header 'If-Match: "REVISION"' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/playlist'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla tal como está almacenada ahora; ETag lleva su revisión.Pantalla (application/json); encabezados: ETag
412revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual.Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
202

La escritura se convirtió en una revisión y espera la aprobación de una persona (docs/reviews.md), con acceso Proponer, o con cualquier nivel de acceso cuando alcanza una pantalla de una carpeta de pantallas protegida, donde la decide un segundo aprobador (docs/screen-scope.md). Una persona aprueba, rechaza o solicita cambios en el panel, en review.url.

Una repetición de Idempotency-Key responde con el mismo cuerpo.

ReviewPending (application/json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/public-id/rotate

Rotar ID público de pantalla

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
rotateScreenPublicId

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/public-id/rotate'

Respuestas

EstadoSignificadoCuerpo y encabezados
200

Credencial de URL pública rotada; se preserva la inscripción de clave pública del reproductor. Cada sesión de ejecución se invalida por la nueva content_access_generation y las concesiones deseadas y activas en vivo se reemiten en esa generación para su revisión de manifiesto sin cambios, por lo que un reproductor emparejado que renueva su sesión sigue autorizando el contenido que ya muestra.

Pantalla (application/json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/recovery/confirm

Confirmar recuperación de pantalla

Confirma una recuperación de pantalla pendiente. Un inicio de emparejamiento nativo que presentó un duid host o serie que coincide exactamente con una pantalla en un proyecto, bajo una clave pública vinculada diferente, registra una oferta en esa pantalla (Screen.recovery_pending, evento de proyecto screen.recovery_offered).

El objeto host es una pista, nunca una credencial: nada se vuelve a enlazar hasta que el proyecto propietario llama a esta ruta. Un DUID es legible por cualquier aplicación en el panel, así que una oferta es una superficie de phishing.

Se mitiga con liveness (no hay oferta mientras la clave vinculada mostró actividad en los últimos diez minutos), un límite de tres ofertas por pantalla por hora móvil, y esta confirmación del mismo proyecto; recovery_pending.host y el evento llevan la plataforma, modelo, firmware y fabricante del dispositivo que ofrece para que el operador pueda compararlos con el monitor frente a él antes de confirmar.

La confirmación completa el emparejamiento nativo pendiente en la pantalla EXISTENTE: el dispositivo de emparejamiento recibe pairing.claimed como de costumbre y prueba la posesión con pairing.complete, la nueva clave se convierte en la identidad de la pantalla y la clave anterior se retira con una ventana de gracia de quince minutos durante la cual sus sesiones en tiempo de ejecución siguen funcionando y aún puede emitir, después de lo cual se rechaza.

Se conservan listas de reproducción, etiqueta, zona horaria, horarios e historial. Solo el mismo proyecto; la pantalla de otro proyecto es not_found. If-Match es opcional. Emite screen.recovered. recovery_not_offered cuando no hay nada pendiente, recovery_expired cuando la sesión de emparejamiento expiró, recovery_ambiguous cuando el identificador está adjunto en más de un lugar.

Las respuestas de problema nunca repiten identificadores de dispositivo.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
confirmScreenRecovery

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para crear o sobrescribir una clave; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/recovery/confirm'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla recuperada en la clave del dispositivo emparejado; la respuesta lleva el ETag actual.Pantalla (application/json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
410

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/replace

Reemplazar pantalla

Mueve el dispositivo emparejado como otra pantalla del proyecto a esta y archiva esa pantalla, de modo que esta pantalla conserva su nombre, etiquetas, zona horaria, lista de reproducción, programaciones, toma de control, programación de pantalla y su anulación, pared de video, comentarios e historial en el hardware nuevo.

La clave pública del dispositivo (o la credencial del navegador) ahora abre esta pantalla, que adopta el host y el Player del reemplazo; su salud, estado, almacenamiento, observación y comandos en cola empiezan de nuevo. La clave que tenía esta pantalla se retira con la ventana de gracia de recuperación: aún puede emitir durante quince minutos y luego se rechaza (key_retired). Nada se desvincula.

La pantalla reemplazada se archiva con archive_reason replaced y no conserva vinculación ni host. Ambas pantallas avanzan content_access_generation, por lo que termina toda sesión que cualquiera de las dos tuviera; el dispositivo recibe un player.reload dirigido a la pantalla que dejó (details.reason replaced, válido durante 24 horas) y emite una sesión nueva como esta pantalla.

Ambas pantallas deben estar activas y tener un Player emparejado (una pantalla pairing_pending o un reemplazo sin emparejar es resource_conflict, una archivada es screen_archived); with debe nombrar otra pantalla del proyecto (invalid_request; la pantalla de otro proyecto es not_found); una pantalla con una pared de video necesita un Player de reemplazo que haya declarado display.wall (wall_unsupported).

If-Match es opcional y comprueba la revisión de esta pantalla. Emite el evento de proyecto screen.replaced (details.from_screen_id) y ningún screen.archived. Un reintento exacto con Idempotency-Key devuelve esta misma respuesta durante veinticuatro horas.

Un llamador limitado a pantallas (docs/screen-scope.md) necesita que la pantalla y with estén dentro de su alcance (outside_screen_scope; no se archiva nada). Un reemplazo donde cualquiera de las dos pantallas es protegida es protected_target.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenReplaceWrite
ID de operación
replaceScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para crear o sobrescribir una clave; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
with (requerido, cadena)

El id de la pantalla, del mismo proyecto, cuyo dispositivo emparejado se hace cargo de la pantalla de la ruta. Debe ser otra pantalla activa con un Player emparejado; se archiva con archive_reason replaced. minLength: 1 maxLength: 256

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/replace'

Respuestas

EstadoSignificadoCuerpo y encabezados
200El dispositivo ahora abre esta pantalla; la respuesta es esta pantalla con su nueva revisión y el ETag actual.Pantalla (application/json)
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409resource_conflict, screen_archived, wall_unsupported, o protected_target cuando cualquiera de las dos pantallas está en una carpeta de pantallas protegida.Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/archive

Archivar pantalla

Oculta la pantalla de la lista predeterminada y muestra en la pantalla física el estado «Pantalla archivada». No desvincula la clave pública del reproductor. Libera cuota de screen_count. Cancela los comandos pendientes reboot, clear_cache, restart_app y update de la pantalla; un reload pendiente sigue entregándose. Una pantalla en una carpeta de pantallas protegida devuelve protected_target (409).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
archiveScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/archive'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla archivada.Pantalla (application/json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/unarchive

Desarchivar pantalla

Restaura una pantalla archivada a la lista predeterminada y vuelve a emitir un manifiesto normal. Debe pasar la admisión de pantalla. No cambia la clave pública vinculada.

El manifiesto se emite nuevamente, por lo que la lista de reproducción de la pantalla se verifica como una asignación; una lista de reproducción que hace referencia a contenido faltante o no listo responde con resource_conflict nombrando la lista de reproducción, y la pantalla permanece archivada hasta que se corrige la lista de reproducción.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
unarchiveScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/unarchive'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla desarchivada.Pantalla (application/json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
413

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/reload

Recargar pantalla

Solicita al Player de la pantalla indicada, activa o archivada, que recargue (docs/player-compatibility.md §6.3). El cuerpo opcional establece expires_in_s, cuánto tiempo sigue siendo ejecutable la recarga (de 60 a 86400 segundos, predeterminado 86400, 24 horas); un valor fuera de rango es invalid_request y nombra expires_in_s.

A una pantalla en línea se le envía de inmediato el evento duradero por pantalla player.reload (details.reason project, un reload_id nuevo, spread_s 0, expires_at) y la recarga se registra en Screen.commands como sent.

Una pantalla sin conexión mantiene la recarga como queued sin ningún evento; cuando el backend aplica la próxima transición de la pantalla a en línea antes de expires_at, se añade el evento, con el mismo reload_id y expires_at, y el comando pasa a sent. Una recarga más reciente reemplaza a una anterior que sigue en cola.

Una recarga en cola cuyo expires_at ya pasó aparece como expired, y POST /api/screens/{id}/commands/{command_id}/cancel cancela una que sigue en cola. El flujo SSE de tiempo de ejecución transmite el evento a cada sesión de tiempo de ejecución. Un Player ignora una recarga que llega dentro de los diez minutos posteriores a la última que ejecutó.

Un Player web recarga en su próximo límite de página; un Player nativo vuelve a emitir, vuelve a obtener su manifiesto y verifica si hay una actualización. La revisión de la pantalla no cambia. If-Match e Idempotency-Key son opcionales, como al archivar; un reintento exacto con Idempotency-Key devuelve el cuerpo original durante veinticuatro horas.

Una pantalla pairing_pending aún no tiene Player y responde resource_conflict. Los mensajes de pantalla están exentos del medidor de API de 1 crédito.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenCommandWrite
ID de operación
reloadScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
expires_in_s (opcional, entero)Cuánto tiempo sigue siendo ejecutable el comando, en segundos desde la solicitud. Un comando en cola se envía solo antes de que expire; un Player ignora uno después de expires_at. predeterminado: 86400 mínimo: 60 máximo: 86400
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/reload'

Respuestas

EstadoSignificadoCuerpo y encabezados
202

Aceptado. state es sent cuando la recarga llegó al Player de la pantalla en línea, y queued cuando espera a que la pantalla se ponga en línea. La recarga es ejecutable hasta expires_at. El ETag es la revisión de pantalla sin cambios.

ScreenReloadAccepted (application/json); encabezados: Cache-Control, ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/playlist-schedule

Obtener programación de lista de reproducción de pantalla

Devuelve la programación de la lista de reproducción evaluada por el servidor de la pantalla: entradas en orden de prioridad (vacío cuando la pantalla no tiene), updated_at y la effective_playlist que producen actualmente. El ETag es la revisión de la pantalla. Las pantallas pairing_pending, activas y archivadas son legibles; la pantalla de otro proyecto es not_found.

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
getScreenPlaylistSchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/playlist-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Programación de la lista de reproducción.ScreenPlaylistScheduleView (application/json); encabezados: ETag
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PUT/api/screens/{id}/playlist-schedule

Establecer programación de lista de reproducción del schermo

Reemplaza la programación de lista de reproducción de la pantalla. El servidor la evalúa, nunca el Player: la primera entrada cuya regla coincida con la hora civil de la pantalla (ventanas screenrig.schedule/v1 y from/until, en la zona horaria de la pantalla, incluyendo transiciones de horario de verano y ventanas que cruzan medianoche) es la lista efectiva; cuando ninguna coincide, lo es playlist_id asignado.

Una toma aún gana sobre cada entrada. La pantalla debe tener una zona horaria y una playlist_id predeterminada asignada (invalid_request de lo contrario), para que siempre haya algo a qué recurrir.

Cada lista de reproducción referenciada se valida contra la pantalla exactamente como una asignación (propiedad, referencias listas, la visibilidad de la página necesita zona horaria, y una lista con formato necesita una pantalla cuya pared tenga la misma forma, sino 409 playlist_format_mismatch), así que una lista que la pantalla rechazaría se rechaza aquí; la verificación escribe el documento de la lista, por lo que un borrado concurrente de lista genera conflicto en lugar de carrera.

Si una lista de reproducción programada luego no puede mostrarse (por ejemplo, su contenido ya no se resuelve), sus entradas se omiten en la evaluación y se añade screen.playlist_unavailable (advertencia, detalles playlist_id, entry_ids, código).

Cuando la lista de reproducción efectiva cambia, el manifiesto se vuelve a generar a partir de ella y se señala al Player con screen.manifest_changed, como en una asignación, y se añade screen.playlist_switched. La revisión de la pantalla se incrementa (If-Match la protege) y se añade screen.updated con details.playlist_schedule_entries.

Una pantalla archivada responde screen_archived; su programación, toma y predeterminado permanecen referenciados (bloquean la eliminación de lista de reproducción) y se resuelven de nuevo cuando se desarchiva. Límites de tasa: screen-control-org 600, screen-control-screen 20 y screen-control-ip 60 por minuto, compartidos con DELETE y las rutas de toma.

En una pantalla protegida, la programación es una revisión que decide un segundo aprobador (202 pending_review) en todos los niveles de acceso. Una entrada nueva con paused true (un borrador) corresponde al control de cambios de la programación, que incluye el plan Enterprise; un proyecto cuyo plan no lo incluye se rechaza con feature_not_in_plan (402).

Las entradas ya guardadas pueden seguir pausadas, y pausar una entrada guardada está abierto en todos los planes.

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenPlaylistScheduleWrite
ID de operación
setScreenPlaylistSchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Screenrig-Review-Noteencabezadoopcional

Nota opcional del proponente en una escritura de clase revisión, enviada como UTF-8 codificado en porcentaje (lo que escribe encodeURIComponent de JavaScript). El servidor la decodifica en porcentaje (una escape inválido es 400 invalid_request); la nota decodificada es texto plano, máximo 280 caracteres tras recortar, sin caracteres de control (de lo contrario 400 invalid_request).

Almacenado en la revisión cuando la escritura se convierte en una; ignorado cuando se aplica en vivo.

If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
entradas (requerido, arreglo)Orden de prioridad: gana la primera entrada coincidente. DELETE borra la programación.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PUT --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/playlist-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
202La escritura se convirtió en una revisión bajo Proponer acceso y espera la aprobación de una persona (docs/reviews.md). Una repetición de Idempotency-Key responde con el mismo cuerpo.ReviewPending (application/json); headers: RateLimit-Policy, RateLimit
200Pantalla con la programación almacenada y su effective_playlist. El ETag es la nueva revisión.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
402

feature_not_in_plan — El control de cambios de la programación forma parte del plan Enterprise; el problema nombra la función, el plan que tiene la cuenta y required_plan. Una entrada que bloquea una lista de reproducción en el monitor 2 o posteriores de un muro de video (displays), que no sea la entrada guardada de la pantalla, forma parte de Plus. El problema nombra la función, el plan del proyecto y required_plan.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screens/{id}/playlist-schedule

Borrar programación de lista de reproducción

Elimina la programación de lista de reproducción de la pantalla; pasa a regir la toma de control o, en su defecto, una campaña vigente o, en su defecto, la lista de reproducción asignada, con la misma señalización del manifiesto que PUT. Una pantalla sin programación responde 200 sin cambios (sin incremento de revisión ni evento).

En una pantalla protegida, quitar la programación es una revisión que decide un segundo aprobador (202 pending_review) en todos los niveles de acceso.

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
clearScreenPlaylistSchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Screenrig-Review-Noteencabezadoopcional

Nota opcional del proponente en una escritura de clase revisión, enviada como UTF-8 codificado en porcentaje (lo que escribe encodeURIComponent de JavaScript). El servidor la decodifica en porcentaje (una escape inválido es 400 invalid_request); la nota decodificada es texto plano, máximo 280 caracteres tras recortar, sin caracteres de control (de lo contrario 400 invalid_request).

Almacenado en la revisión cuando la escritura se convierte en una; ignorado cuando se aplica en vivo.

If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/playlist-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
202La escritura se convirtió en una revisión bajo Proponer acceso y espera la aprobación de una persona (docs/reviews.md). Una repetición de Idempotency-Key responde con el mismo cuerpo.ReviewPending (application/json); headers: RateLimit-Policy, RateLimit
200Pantalla sin programación de lista de reproducción.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/playlist-schedule/preview

Vista previa de programación de lista de reproducción de pantalla

Qué cambiaría reemplazar la programación de lista de reproducción de la pantalla por entries, sin realizarlo.

Las entradas se comprueban como las comprueba PUT (gramática, la zona horaria y los displays de la pantalla, una lista de reproducción predeterminada, y cada lista de reproducción como asignación: existe, tiene una versión aprobada, encaja con la pared de video de la pantalla y la región que cubre, y sus referencias se resuelven), de modo que una vista previa rechaza lo que rechaza PUT.

La respuesta dice si la pantalla ganaría o perdería niveles de su programación en su pila (una entrada pausada no está en ninguna pila, así que publicar una la gana), y el calendario de programación de la pantalla tal como está (before) y como quedaría (after) de from a to (por defecto: una semana desde ahora; como máximo 93 días). Acceso de lectura: no se escribe nada.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenSchedulePreviewRequest
ID de operación
previewScreenPlaylistSchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido

Campos del cuerpo de la solicitud

CampoDescripción
entradas (requerido, arreglo)
from (opcional, string)Inicio de los calendarios; por defecto ahora. formato: "date-time"
to (opcional, cadena)Fin de los calendarios; por defecto una semana después de from, como máximo 93 días después. formato: "date-time"
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/playlist-schedule/preview'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La vista previa.SchedulePreview (application/json)
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/playlist-schedule/revisions

Listar revisiones de programación de lista de reproducción de pantalla

Las revisiones de programación de lista de reproducción de la pantalla, de la más reciente a la más antigua: la lista entries completa tal como se almacenó después de cada escritura (un PUT, un DELETE, una restauración, una importación de programación), con el tipo de cambio y quién lo hizo. Una revisión se numera por la revisión de la pantalla en el momento de la escritura, por lo que la numeración tiene huecos donde la pantalla cambió de otro modo.

Una pantalla cuyo historial aún no tiene fila lista su programación tal como está, con change baseline. Las revisiones se van con la purga de la pantalla. Como máximo 50 por página; next_cursor mientras queden más, null en la última página.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
listScreenPlaylistScheduleRevisions

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
despuésconsultaopcionalnext_cursor de la página anterior de la misma lista, con los mismos filtros. Omitido comienza en la fila más reciente. Un valor que no sea tal cursor es invalid_request.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://api.screenrig.ai/api/screens/RESOURCE_ID/playlist-schedule/revisions'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Las revisiones de programación de la pantalla, de la más reciente a la más antigua.ScreenScheduleRevisionList (application/json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/playlist-schedule/revisions/{revision}/restore

Restaurar revisión de programación de lista de reproducción de pantalla

Vuelve a poner las entradas de una revisión anterior como programación de la pantalla: la misma escritura que PUT /api/screens/{id}/playlist-schedule con esas entradas (o DELETE cuando esa revisión no tenía ninguna), comprobada como se comprueban ahora (una lista de reproducción eliminada desde entonces la rechaza), de modo que con acceso Proponer la restauración se convierte en la misma revisión screen_change en que se convierte el PUT.

If-Match es obligatorio y nombra la revisión actual de la pantalla. Las revisiones anteriores se conservan tal como estaban.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
restoreScreenPlaylistScheduleRevision

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
revisiónrutarequeridoUna revisión del registro, tal como la numera su lista de revisiones.
Screenrig-Review-Noteencabezadoopcional

Nota opcional del proponente en una escritura de clase revisión, enviada como UTF-8 codificado en porcentaje (lo que escribe encodeURIComponent de JavaScript). El servidor la decodifica en porcentaje (una escape inválido es 400 invalid_request); la nota decodificada es texto plano, máximo 280 caracteres tras recortar, sin caracteres de control (de lo contrario 400 invalid_request).

Almacenado en la revisión cuando la escritura se convierte en una; ignorado cuando se aplica en vivo.

If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://api.screenrig.ai/api/screens/RESOURCE_ID/playlist-schedule/revisions/REVISION/restore'

Respuestas

EstadoSignificadoCuerpo y encabezados
202La escritura se convirtió en una revisión bajo Proponer acceso y espera la aprobación de una persona (docs/reviews.md). Una repetición de Idempotency-Key responde con el mismo cuerpo.ReviewPending (application/json); headers: RateLimit-Policy, RateLimit
200Pantalla con la programación restaurada y su effective_playlist. El ETag es la nueva revisión.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/takeover

Establecer toma de control del schermo

Toma el control de la pantalla con una lista de reproducción que tiene prioridad sobre las campañas, su programación de listas de reproducción y su lista de reproducción asignada, hasta until (RFC 3339, estrictamente en el futuro y como máximo dentro de 7 días) o, cuando until es null o se omite, hasta que se borre la toma de control. reason es opcional, de 120 caracteres como máximo.

La pantalla debe tener un playlist_id predeterminado asignado (de lo contrario, invalid_request). Una toma de control reemplaza a una anterior (screen.takeover_ended con reason replaced, o expired cuando la anterior ya había terminado).

La lista de reproducción se valida como una asignación, incluido su formato (una lista de reproducción con formato necesita una pantalla cuyo videowall tenga la misma forma; de lo contrario, 409 playlist_format_mismatch). Una toma de control cuya lista de reproducción deja de poder mostrarse termina (screen.takeover_ended con reason playlist_deleted o playlist_unavailable).

Agrega screen.takeover_started y, cuando cambia la lista de reproducción vigente, screen.playlist_switched junto con screen.manifest_changed del Player. Cuando se alcanza until, el worker de límites termina la toma de control en un plazo de 60 segundos (screen.takeover_ended con reason expired). La revisión de la pantalla se incrementa (If-Match la protege).

Una pantalla archivada responde screen_archived; desarchivar vuelve a resolver primero, así que una toma de control que terminó mientras estaba archivada termina entonces. Se aplican los mismos límites de frecuencia de control de pantalla que en las rutas de programación. En una pantalla protegida, una toma de control es una revisión que decide un segundo aprobador (202 pending_review) en todos los niveles de acceso.

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenTakeoverWrite
ID de operación
setScreenTakeover

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Screenrig-Review-Noteencabezadoopcional

Nota opcional del proponente en una escritura de clase revisión, enviada como UTF-8 codificado en porcentaje (lo que escribe encodeURIComponent de JavaScript). El servidor la decodifica en porcentaje (una escape inválido es 400 invalid_request); la nota decodificada es texto plano, máximo 280 caracteres tras recortar, sin caracteres de control (de lo contrario 400 invalid_request).

Almacenado en la revisión cuando la escritura se convierte en una; ignorado cuando se aplica en vivo.

If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
playlist_id (requerido, cadena)minLength: 1
hasta (opcional, en línea)Estríctamente en el futuro y a lo sumo 7 días adelante. Nulo u omitido mantiene la toma hasta que se borre.
razón (opcional, cadena)Nota del operador llevada en la toma de control y sus eventos. Sin caracteres de control. maxLength: 120
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/takeover'

Respuestas

EstadoSignificadoCuerpo y encabezados
202La escritura se convirtió en una revisión bajo Proponer acceso y espera la aprobación de una persona (docs/reviews.md). Una repetición de Idempotency-Key responde con el mismo cuerpo.ReviewPending (application/json); headers: RateLimit-Policy, RateLimit
200Pantalla con la toma de control y su effective_playlist. El ETag es la nueva revisión.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screens/{id}/takeover

Borrar toma de pantalla

Finaliza la toma de control (screen.takeover_ended con razón cleared); la programación, o la lista de reproducción asignada, se vuelve efectiva con la misma señalización del manifiesto. Una pantalla sin toma de control responde 200 sin cambios (sin aumento de revisión, sin evento).

También se elimina la toma de control de una pantalla archivada: permanece archivada, su Player no recibe ninguna señal y, al desarchivarla, se determina la lista de reproducción efectiva. En una pantalla protegida, eliminar una toma de control requiere la revisión de una segunda persona con autoridad de aprobación (202 pending_review) en cualquier nivel de acceso.

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
clearScreenTakeover

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Screenrig-Review-Noteencabezadoopcional

Nota opcional del proponente en una escritura de clase revisión, enviada como UTF-8 codificado en porcentaje (lo que escribe encodeURIComponent de JavaScript). El servidor la decodifica en porcentaje (una escape inválido es 400 invalid_request); la nota decodificada es texto plano, máximo 280 caracteres tras recortar, sin caracteres de control (de lo contrario 400 invalid_request).

Almacenado en la revisión cuando la escritura se convierte en una; ignorado cuando se aplica en vivo.

If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/takeover'

Respuestas

EstadoSignificadoCuerpo y encabezados
202La escritura se convirtió en una revisión bajo Proponer acceso y espera la aprobación de una persona (docs/reviews.md). Una repetición de Idempotency-Key responde con el mismo cuerpo.ReviewPending (application/json); headers: RateLimit-Policy, RateLimit
200Pantalla sin toma de control.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/tab-shares

Iniciar uso compartido de pestañas

Muestra pestañas del navegador en pantallas. Crea una lista temporal con una página iframe de lienzo completo de 1920x1080 por pestaña y toma el control de cada pantalla destino (motivo «Shared browser tab») hasta until, como máximo 24 horas después (por defecto).

Los destinos son la unión de screen_ids, cada pantalla activa en folder_ids y sus subcarpetas, y cada pantalla activa con alguna de tags; se incluyen las pantallas sin conexión y muestran el recurso al volver.

Un solicitante limitado a pantallas (docs/screen-scope.md) solo alcanza las de su ámbito: se omite una pantalla fuera de él (outside_screen_scope); el resto de la solicitud sigue las mismas reglas.

Una pestaña permanece hasta que termina el uso compartido; varias avanzan tras el duration_s de cada una. reload_s recarga cada página. qr añade un código QR de la dirección abajo a la derecha, de aproximadamente el 14 % de la altura del lienzo. cookies contiene el inicio de sesión del remitente: se sellan en reposo, nunca se devuelven en lecturas, eventos, auditorías ni revisiones y solo se sirven en el manifiesto de ejecución de una pantalla que muestra el recurso (el miembro cookies del iframe); un Player que no pueda configurarlas las ignora, igual que el Player web y los contenedores que delegan en él.

Un destino que no se puede controlar (carpeta protegida, sin lista predeterminada, archivado, no encontrado, formato incompatible, fuera del ámbito o limitado) aparece en skipped sin fallar la solicitud. Este recurso sustituye uno anterior en la pantalla; la lista anterior se elimina cuando ninguna pantalla la muestra.

Si no se controla ningún destino, se elimina la lista temporal y se responde con el problema del destino único, o con 409 resource_conflict indicando los motivos. warnings enumera direcciones de pestañas que el backend no pudo insertar (embedding_blocked: X-Frame-Options o frame-ancestors rechaza la aplicación web Player), comprobadas una vez por dirección con 3 segundos de presupuesto; nunca bloquea el uso compartido.

Los límites de control de pantallas se aplican por pantalla destino (organización y pantalla), y el límite IP una vez por solicitud. Cada llamada crea un recurso compartido; un Idempotency-Key no reproduce nada. El cambio es inmediato: se rechaza con insufficient_access bajo acceso Propose y, en el canal del panel, con approver_required para miembros que no pueden aprobar revisiones.

En el canal del panel se usa el proyecto actual de la sesión (no_project si no hay ninguno). La solicitud puede proceder del panel o de una extensión Chrome o Firefox (chrome-extension://ID, moz-extension://UUID), con Sec-Fetch-Site ausente, same-origin o none; un encabezado X-ScreenRig-CSRF presente debe coincidir con csrf_token de GET /api/session.

Solo esta ruta, DELETE /api/tab-shares/{id}, POST /api/playlists/{id}/pages y POST /api/screens/{id}/screenshot aceptan un origen de extensión.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
TabShareWrite
ID de operación
startTabShare

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.

Campos del cuerpo de la solicitud

CampoDescripción
screen_ids (opcional, array)Pantallas por id. Los duplicados se unifican.
folder_ids (opcional, arreglo)Carpetas de pantallas; cada una incluye todas sus subcarpetas.
tags (opcional, array)Una pantalla con cualquiera de las etiquetas.
tabs (requerido, array)
cookies (opcional, array)Cookies del remitente para las páginas, hasta 64 KiB codificados. Secretas; véase POST /api/tab-shares.
reload_s (opcional, integer)0 (nunca, por defecto) o de 60 a 86400: frecuencia de recarga del iframe de cada página.
until (opcional, string)Estrictamente en el futuro y como máximo dentro de 24 horas; 24 horas desde ahora si se omite. Fin del control en cada destino y caducidad de la lista temporal. format: "date-time"
qr (opcional, boolean)Cuando es true, cada página lleva un código QR de su dirección abajo a la derecha. Por defecto false.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/tab-shares'

Respuestas

EstadoSignificadoCuerpo y encabezados
200El recurso compartido. Se tomó el control de al menos una pantalla.TabShare (application/json); encabezados: RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/tab-shares/{id}

Obtener uso compartido de pestañas

Lee un recurso compartido: su final y las pantallas cuya lista de control sigue siendo la suya (no se incluyen pantallas controladas después por alguien o archivadas). 404 not_found si terminó, caducó o nunca existió. Un solicitante limitado a pantallas solo ve las de su ámbito. Las lecturas no tienen reglas de origen de extensión.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getTabShare

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/tab-shares/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
200El recurso compartido y las pantallas que aún lo muestran.TabShareState (application/json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/tab-shares/{id}

Detener uso compartido de pestañas

Termina un recurso compartido: libera el control de cada pantalla cuya lista sigue siendo la del recurso (screen.takeover_ended con motivo cleared; se activa la programación o, en su defecto, la lista asignada con la misma señalización de manifiesto) y elimina la lista. Permitido en pantallas de carpetas protegidas.

Una pantalla controlada después por otra persona no se modifica. 404 not_found si el recurso compartido ya terminó; el cliente lo trata como terminado. Cada solicitud consume una unidad de cada límite de control de pantalla. Un solicitante limitado a pantallas solo libera las de su ámbito. Los canales, reglas de acceso y reglas de origen de extensión son los de POST /api/tab-shares.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
stopTabShare

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/tab-shares/RESOURCE_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Las pantallas cuyo control se liberó.TabShareStopped (application/json); encabezados: RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/play-page

Reproducir página de pantalla

Solicita al reproductor de la pantalla que inicie una página de la lista de reproducción que está reproduciendo ahora, para que una captura de pantalla tomada a continuación muestre esa página sin esperar la rotación (docs/player-compatibility.md §6.3.1).

La página debe ser una página de la lista de reproducción vigente de la pantalla, aquella a partir de la cual se genera su manifiesto: una toma de control activa; si no, una campaña vigente; si no, la entrada vigente de la programación de listas de reproducción; si no, la lista de reproducción asignada. De lo contrario, 409 page_not_on_screen, cuyo detail nombra esa lista de reproducción.

La pista del host de la pantalla debe declarar la capacidad play_page, de lo contrario 409 play_page_unsupported y no se envía nada; actualice el reproductor. La pantalla debe estar activa; una pantalla archivada responde screen_archived y una pairing_pending responde resource_conflict.

Agrega el comando de tiempo de ejecución por pantalla player.play_page (detalles page_id, playlist_id, manifest_revision, expires_at sesenta segundos después; nunca se entrega después de expires_at). El Player inicia la página desde su comienzo como si la rotación la hubiera alcanzado y continúa la rotación desde allí. La revisión de la pantalla no cambia.

La Idempotency-Key es obligatoria, como para toast; un reintento exacto devuelve el cuerpo original durante veinticuatro horas. Una solicitud rechazada, una fallida y una repetición exacta no gastan presupuesto de límite de frecuencia. Los mensajes de pantalla están exentos del medidor API de 1 crédito. Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenPlayPageWrite
ID de operación
playScreenPage

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Idempotency-Keyencabezadorequerido

Campos del cuerpo de la solicitud

CampoDescripción
page_id (requerido, cadena)El id de una página de la lista de reproducción que la pantalla está reproduciendo ahora (un id en las páginas de esa lista). minLength: 1 maxLength: 128
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/play-page'

Respuestas

EstadoSignificadoCuerpo y encabezados
202Aceptado. El comando es ejecutable hasta expires_at. Un reintento idempotente exacto devuelve este mismo cuerpo.ScreenPlayPageAccepted (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/identify

Identificar pantalla

Solicita al Player de la pantalla que muestre el nombre de la pantalla sobre su contenido durante duration_ms (de 2000 a 600000, predeterminado 60000), para que una persona frente a varios monitores pueda distinguir cuál corresponde a un registro (docs/player-compatibility.md §6.3.2).

Añade el comando de tiempo de ejecución por pantalla player.identify (details identify_id, label, screen_id, duration_ms, at, expires_at sesenta segundos después de at; nunca se entrega después de expires_at).

El Player dibuja una superposición a pantalla completa sobre su contenido, con el nombre muy grande y el id de la pantalla pequeño debajo, durante duration_ms desde la recepción; la reproducción continúa por debajo y un identify más reciente reemplaza la superposición.

La pista del host de la pantalla debe declarar la capacidad identify, de lo contrario 409 identify_unsupported y no se envía nada; actualice el Player o muestre el nombre con un toast. La pantalla debe estar activa; una pantalla archivada responde screen_archived y una pairing_pending responde resource_conflict. La revisión de la pantalla no cambia.

El cuerpo y la Idempotency-Key son opcionales; un reintento exacto devuelve el cuerpo original durante veinticuatro horas. Una solicitud rechazada, una fallida y una repetición exacta no gastan presupuesto de límite de tasa. Los mensajes de pantalla están exentos del medidor de API de 1 crédito.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenIdentifyWrite
ID de operación
identifyScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
duration_ms (opcional, entero)Cuánto tiempo permanece visible la superposición, en milisegundos desde que el Player la recibe. Si se omite, el valor predeterminado es 60000. predeterminado: 60000 mínimo: 2000 máximo: 600000
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/identify'

Respuestas

EstadoSignificadoCuerpo y encabezados
202Aceptado. El comando es ejecutable hasta expires_at. Un reintento idempotente exacto devuelve este mismo cuerpo.ScreenIdentifyAccepted (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/suspend

Suspender pantalla

Suspende la pantalla: su Player muestra message en lugar de su contenido (docs/player-compatibility.md §6.9). El mensaje tiene de 1 a 280 caracteres tras recortar; el salto de línea es el único carácter de control aceptado.

Nada más cambia: la lista de reproducción, la programación, la toma de control, el control de pantalla y cualquier otro ajuste permanecen y siguen evolucionando, y resume muestra lo que la pantalla estaría mostrando ahora. Screen.suspension lleva message y since. Suspender una pantalla ya suspendida reemplaza el mensaje y mantiene since.

El manifiesto de tiempo de ejecución de una pantalla suspendida tiene pages [] y un miembro suspension, y una revisión de manifiesto propia, con o sin una lista de reproducción asignada; se le indica al Player que lo vuelva a obtener de inmediato. Añade screen.suspended, solo de proyecto (details message). Una pantalla archivada responde screen_archived. If-Match e Idempotency-Key son opcionales, como al archivar.

Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenSuspendWrite
ID de operación
suspendScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
message (obligatorio, cadena)El aviso que muestra la pantalla, de 1 a 280 caracteres tras recortar. El salto de línea es el único carácter de control aceptado; un Player ajusta el texto y conserva los saltos de línea. minLength: 1 maxLength: 280
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/suspend'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla suspendida. El ETag es la nueva revisión de la pantalla.Pantalla (application/json); encabezados: ETag
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/resume

Reanudar pantalla

Termina la suspensión de la pantalla: su Player vuelve a mostrar el contenido propio de la pantalla, a partir del manifiesto que se serviría ahora a la pantalla (docs/player-compatibility.md §6.9). Se le indica al Player que vuelva a obtenerlo de inmediato. Añade screen.resumed, solo de proyecto. Reanudar una pantalla que no está suspendida responde 200 con la pantalla sin cambios: sin aumento de revisión y sin evento.

Una pantalla archivada responde screen_archived. Sin cuerpo. If-Match e Idempotency-Key son opcionales, como al archivar.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
resumeScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/resume'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla reanudada, o no suspendida. El ETag es la revisión de la pantalla.Pantalla (application/json); encabezados: ETag
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/reboot

Reiniciar pantalla

Solicita al Player de la pantalla que reinicie el dispositivo (docs/player-compatibility.md §6.5). El cuerpo opcional establece expires_in_s, cuánto tiempo sigue siendo ejecutable el reinicio (de 60 a 86400 segundos, predeterminado 86400, 24 horas); un valor fuera de rango es invalid_request y nombra expires_in_s. Siempre añade screen.reboot_requested, solo de proyecto.

A una pantalla en línea se le envía de inmediato el comando de tiempo de ejecución por pantalla player.reboot (details reboot_id, reason project, at, expires_at; nunca se entrega después de expires_at) y el reinicio se registra en Screen.commands como sent.

Una pantalla sin conexión mantiene el reinicio como queued sin ningún evento; cuando el backend aplica la próxima transición de la pantalla a en línea antes de expires_at, se añade el evento, con el mismo reboot_id y expires_at, y el comando pasa a sent. Un reinicio sent pasa a done cuando un informe de salud que lleva uptime_s sitúa el arranque después de su envío.

Un reinicio más reciente reemplaza a uno anterior que sigue en cola. Un reinicio en cola cuyo expires_at ya pasó aparece como expired, y POST /api/screens/{id}/commands/{command_id}/cancel cancela uno que sigue en cola. La pantalla debe estar activa; una pantalla archivada responde screen_archived y una pairing_pending responde resource_conflict.

La pista del host de la pantalla debe declarar la capacidad reboot, de lo contrario 409 reboot_unsupported y no se registra nada. La revisión de la pantalla no cambia. If-Match e Idempotency-Key son opcionales; un reintento exacto devuelve el mismo cuerpo durante veinticuatro horas.

Máximo 2 por pantalla cada 10 minutos; una solicitud rechazada (reboot_unsupported, not_found, un conflicto), una fallida y una repetición exacta de Idempotency-Key no gastan nada.

Desde el momento en que se envía el reinicio hasta que un informe de salud prueba que terminó o pasan diez minutos, la pantalla no genera ningún aviso ni alerta screen_offline, display_disconnected o crashing; una condición que sigue vigente entonces se abre con normalidad. La programación de reinicio (PUT /api/screens/{id}/reboot-schedule) emite el mismo reinicio con source schedule.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenCommandWrite
ID de operación
rebootScreen

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
expires_in_s (opcional, entero)Cuánto tiempo sigue siendo ejecutable el comando, en segundos desde la solicitud. Un comando en cola se envía solo antes de que expire; un Player ignora uno después de expires_at. predeterminado: 86400 mínimo: 60 máximo: 86400
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/reboot'

Respuestas

EstadoSignificadoCuerpo y encabezados
202

Aceptado. state es sent cuando el reinicio llegó al Player de la pantalla en línea, y queued cuando espera a que la pantalla se ponga en línea. El reinicio es ejecutable hasta expires_at. El ETag es la revisión de pantalla sin cambios.

ScreenRebootAccepted (application/json); encabezados: Cache-Control, ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/clear-cache

Borrar caché de pantalla

Pide al Player de la pantalla que borre sus cachés (docs/player-compatibility.md §6.5.1). El Player elimina sus medios descargados, paquetes de aplicación y cachés de datos, conserva su vinculación, identidad y ajustes, y luego obtiene de nuevo el manifiesto y el contenido.

El cuerpo opcional establece expires_in_s, cuánto tiempo sigue siendo ejecutable el comando (60 a 86400 segundos, predeterminado 86400, 24 horas); un valor fuera de rango es invalid_request que nombra expires_in_s. Siempre añade screen.command_requested, solo del proyecto.

A una pantalla en línea se le envía de inmediato el comando de tiempo de ejecución por pantalla player.clear_cache (detalles command_id, command, reason project, at, expires_at; nunca se entrega después de expires_at) y el comando se registra en Screen.commands como sent.

Una pantalla sin conexión mantiene el comando como queued sin ningún evento; cuando el backend aplica la próxima transición de la pantalla a en línea antes de expires_at, se añade el evento, con el mismo command_id y expires_at, y el comando pasa a sent.

El Player informa cómo terminó: el comando pasa a done o failed en Screen.commands con la causa que informó el Player (cause, detail), y se añade screen.command_result, solo del proyecto. Un comando sent sin informe permanece sent.

Un comando más reciente del mismo tipo reemplaza a uno que sigue en cola, y POST /api/screens/{id}/commands/{command_id}/cancel cancela uno que sigue en cola. La pantalla debe estar activa; una pantalla archivada responde screen_archived y una pairing_pending responde resource_conflict.

La sugerencia de host de la pantalla debe declarar la capacidad clear_cache, de lo contrario 409 command_unsupported y no se registra nada. La revisión de la pantalla no cambia. If-Match e Idempotency-Key son opcionales; un reintento exacto devuelve el mismo cuerpo durante veinticuatro horas.

Como máximo 2 por pantalla cada 10 minutos entre clear-cache, restart-app y update; una solicitud rechazada (command_unsupported, not_found, un conflicto), una fallida y una repetición exacta de Idempotency-Key no consumen nada.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenCommandWrite
ID de operación
clearScreenCache

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
expires_in_s (opcional, entero)Cuánto tiempo sigue siendo ejecutable el comando, en segundos desde la solicitud. Un comando en cola se envía solo antes de que expire; un Player ignora uno después de expires_at. predeterminado: 86400 mínimo: 60 máximo: 86400
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/clear-cache'

Respuestas

EstadoSignificadoCuerpo y encabezados
202

Aceptado. state es sent cuando el comando llegó al Player de la pantalla en línea, y queued cuando espera a que la pantalla se ponga en línea. El comando es ejecutable hasta expires_at. El ETag es la revisión de pantalla sin cambios.

ScreenMaintenanceAccepted (application/json); encabezados: Cache-Control, ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/restart-app

Reiniciar aplicación de pantalla

Pide al Player de la pantalla que reinicie su aplicación, no el dispositivo (docs/player-compatibility.md §6.5.1). El proceso del Player se reinicia e informa desde el nuevo proceso. El cuerpo opcional establece expires_in_s, cuánto tiempo sigue siendo ejecutable el comando (60 a 86400 segundos, predeterminado 86400, 24 horas); un valor fuera de rango es invalid_request que nombra expires_in_s.

Siempre añade screen.command_requested, solo del proyecto. A una pantalla en línea se le envía de inmediato el comando de tiempo de ejecución por pantalla player.restart_app (detalles command_id, command, reason project, at, expires_at; nunca se entrega después de expires_at) y el comando se registra en Screen.commands como sent.

Una pantalla sin conexión mantiene el comando como queued sin ningún evento; cuando el backend aplica la próxima transición de la pantalla a en línea antes de expires_at, se añade el evento, con el mismo command_id y expires_at, y el comando pasa a sent.

El Player informa cómo terminó: el comando pasa a done o failed en Screen.commands con la causa que informó el Player (cause, detail), y se añade screen.command_result, solo del proyecto. Un comando sent sin informe permanece sent.

Un comando más reciente del mismo tipo reemplaza a uno que sigue en cola, y POST /api/screens/{id}/commands/{command_id}/cancel cancela uno que sigue en cola. La pantalla debe estar activa; una pantalla archivada responde screen_archived y una pairing_pending responde resource_conflict.

La sugerencia de host de la pantalla debe declarar la capacidad restart_app, de lo contrario 409 command_unsupported y no se registra nada. La revisión de la pantalla no cambia. If-Match e Idempotency-Key son opcionales; un reintento exacto devuelve el mismo cuerpo durante veinticuatro horas.

Como máximo 2 por pantalla cada 10 minutos entre clear-cache, restart-app y update; una solicitud rechazada (command_unsupported, not_found, un conflicto), una fallida y una repetición exacta de Idempotency-Key no consumen nada.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenCommandWrite
ID de operación
restartScreenApp

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
expires_in_s (opcional, entero)Cuánto tiempo sigue siendo ejecutable el comando, en segundos desde la solicitud. Un comando en cola se envía solo antes de que expire; un Player ignora uno después de expires_at. predeterminado: 86400 mínimo: 60 máximo: 86400
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/restart-app'

Respuestas

EstadoSignificadoCuerpo y encabezados
202

Aceptado. state es sent cuando el comando llegó al Player de la pantalla en línea, y queued cuando espera a que la pantalla se ponga en línea. El comando es ejecutable hasta expires_at. El ETag es la revisión de pantalla sin cambios.

ScreenMaintenanceAccepted (application/json); encabezados: Cache-Control, ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/update

Actualizar Player de pantalla

Pide al Player de la pantalla que busque ahora la versión más reciente del Player y la instale (docs/player- compatibility.md §6.5.1). La causa del resultado es up_to_date cuando ya se ejecuta la versión más reciente y updated cuando se instaló una versión; una instalación administrada por la tienda o por el dispositivo no declara la capacidad update.

El cuerpo opcional establece expires_in_s, cuánto tiempo sigue siendo ejecutable el comando (60 a 86400 segundos, predeterminado 86400, 24 horas); un valor fuera de rango es invalid_request que nombra expires_in_s. Siempre añade screen.command_requested, solo del proyecto.

A una pantalla en línea se le envía de inmediato el comando de tiempo de ejecución por pantalla player.update (detalles command_id, command, reason project, at, expires_at; nunca se entrega después de expires_at) y el comando se registra en Screen.commands como sent.

Una pantalla sin conexión mantiene el comando como queued sin ningún evento; cuando el backend aplica la próxima transición de la pantalla a en línea antes de expires_at, se añade el evento, con el mismo command_id y expires_at, y el comando pasa a sent.

El Player informa cómo terminó: el comando pasa a done o failed en Screen.commands con la causa que informó el Player (cause, detail), y se añade screen.command_result, solo del proyecto. Un comando sent sin informe permanece sent.

Un comando más reciente del mismo tipo reemplaza a uno que sigue en cola, y POST /api/screens/{id}/commands/{command_id}/cancel cancela uno que sigue en cola. La pantalla debe estar activa; una pantalla archivada responde screen_archived y una pairing_pending responde resource_conflict.

La sugerencia de host de la pantalla debe declarar la capacidad update, de lo contrario 409 command_unsupported y no se registra nada. La revisión de la pantalla no cambia. If-Match e Idempotency-Key son opcionales; un reintento exacto devuelve el mismo cuerpo durante veinticuatro horas.

Como máximo 2 por pantalla cada 10 minutos entre clear-cache, restart-app y update; una solicitud rechazada (command_unsupported, not_found, un conflicto), una fallida y una repetición exacta de Idempotency-Key no consumen nada.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenCommandWrite
ID de operación
updateScreenPlayer

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
expires_in_s (opcional, entero)Cuánto tiempo sigue siendo ejecutable el comando, en segundos desde la solicitud. Un comando en cola se envía solo antes de que expire; un Player ignora uno después de expires_at. predeterminado: 86400 mínimo: 60 máximo: 86400
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/update'

Respuestas

EstadoSignificadoCuerpo y encabezados
202

Aceptado. state es sent cuando el comando llegó al Player de la pantalla en línea, y queued cuando espera a que la pantalla se ponga en línea. El comando es ejecutable hasta expires_at. El ETag es la revisión de pantalla sin cambios.

ScreenMaintenanceAccepted (application/json); encabezados: Cache-Control, ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/commands

Listar comandos de pantalla

Lista todos los reinicios y recargas solicitados a una pantalla activa o archivada, de lo más reciente a lo más antiguo: los comandos que contiene Screen.commands (los 10 más recientes) y todos los anteriores, con el estado que alcanzó cada uno. Un comando en cola pasado expires_at figura como expired. Un comando que seguía en cola cuando se reemplazó el dispositivo de la pantalla figura como cancelled.

Cancele una que siga en cola con POST /api/screens/{id}/commands/{command_id}/cancel.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
listScreenCommands

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
cursorconsultaopcionalEl next_cursor de la página anterior.
límiteconsultaopcional
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/commands'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Una página de los comandos de la pantalla.ScreenCommandPage (application/json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/commands/{command_id}/cancel

Cancelar comando de pantalla

Cancela un reinicio o una recarga que sigue en cola para la pantalla, de modo que nunca se envía (docs/player-compatibility.md §6.3, §6.5). command_id es un id de Screen.commands, o el reboot_id o reload_id de la respuesta 202. Solo se puede cancelar un comando cuyo estado es queued; pasa a cancelled.

Un comando ya enviado (sent, done) responde 409 resource_conflict "The command was already sent."; uno que ya no está en cola (expired, cancelled, superseded) responde 409 resource_conflict "The command is no longer queued."; un id que la pantalla no lista responde 404 not_found. La lista de la pantalla conserva sus 10 comandos más recientes.

La revisión de la pantalla no cambia. If-Match e Idempotency-Key son opcionales; un reintento exacto devuelve la misma pantalla durante veinticuatro horas.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
cancelScreenCommand

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
command_idrutarequeridoEl id de uno de los comandos de la pantalla: el id de Screen.commands, el reboot_id o reload_id de la respuesta 202.
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/commands/COMMAND_ID/cancel'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La pantalla, con el comando cancelado. El ETag es la revisión de pantalla sin cambios.Pantalla (application/json); encabezados: ETag
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/display

Establecer pantalla del schermo

Solicita encender o apagar la pantalla ahora: una anulación manual del horario de pantalla (docs/player-compatibility.md §6.5). power está encendido o apagado. until (RFC 3339, estrictamente futuro, máximo 7 días adelante) lo termina; sin until termina en el siguiente límite del horario si está habilitado, de lo contrario se mantiene hasta ser reemplazado.

Almacena la anulación (Screen.display.override), vuelve a emitir el manifiesto (su miembro display lleva la anulación para que un Player sin conexión la conserve), añade el comando de tiempo de ejecución player.display (detalles override_id, power, until, at, expires_at) y el screen.display_changed solo para el proyecto, y aumenta la revisión de la pantalla (If-Match lo protege). La pantalla debe estar activa.

Lo que el Player logró se informa en su salud display.power (Screen.display.reported). El éxito guarda la intención sin esperar un informe; Screen.display.override_status compara las observaciones posteriores y Screen.display.control nombra el método de control anunciado.

Un Player con solo velo retira su superposición ante una solicitud de encendido, sin un comando de activación de hardware.

Sin until y sin un límite de programación dentro de los próximos ocho días (sin programación habilitada, o ninguna que cambie), la anulación se mantiene hasta DELETE /api/screens/{id}/display o un reemplazo; un PUT o DELETE posterior de display-schedule, o un cambio de zona horaria, reajustan una anulación sin until al nuevo límite siguiente.

Una solicitud rechazada o fallida, y una repetición exacta de Idempotency-Key, no gastan presupuesto. Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ScreenDisplayWrite
ID de operación
setScreenDisplay

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
potencia (requerido, cadena)Permitido: "on", "off"
hasta (opcional, en línea)Estríctamente futuro, a lo sumo 7 días adelante. Omitido o nulo: hasta el siguiente límite del horario de pantalla, o hasta que se reemplace.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/display'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla con su estado de pantalla.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screens/{id}/display

Borrar pantalla

Finaliza la anulación manual de pantalla para que vuelva a aplicarse la programación de pantalla (de lo contrario activada). Vuelve a emitir el manifiesto (su miembro display elimina la anulación; el Player sigue screen.manifest_changed), añade screen.display_changed con el cambio override_cleared y aumenta la revisión. Una pantalla sin anulación activa responde 200 sin cambios.

Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
clearScreenDisplay

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/display'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla con su estado de pantalla.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/display-schedule

Obtener programación de pantalla para monitor

Devuelve display_schedule (nulo si no hay) y el estado de visualización de la pantalla. El ETag es la revisión de la pantalla.

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
getScreenDisplaySchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/display-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Horario de pantalla.ScreenDisplayScheduleView (application/json); encabezados: ETag
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PUT/api/screens/{id}/display-schedule

Establecer programación de pantalla del schermo

Reemplaza la programación de pantalla: habilitado y de 1 a 16 ventanas screenrig.schedule/v1 (días, inicio/fin HH:MM, fin <= inicio cruza medianoche propiedad del día de inicio, día completo sin bordes) cuando la pantalla está ENCENDIDA; fuera de cada ventana el Player pone la pantalla en espera.

Evaluado en el dispositivo en la zona horaria de la pantalla (requerido, invalid_request de lo contrario), para que siga funcionando sin conexión: lo lleva el miembro display del manifiesto. enabled false mantiene las ventanas y deja la pantalla encendida. Vuelve a emitir el manifiesto, añade screen.display_changed, aumenta la revisión (If-Match lo protege). La pantalla debe estar pairing_pending o activa.

Una pantalla sin manifiesto todavía (nunca emitido, o sin lista de reproducción) guarda la programación y su primer manifiesto la lleva; una pantalla sin lista de reproducción la aplica una vez que se le asigna una. Una anulación sin until se vuelve a acotar al siguiente límite de la nueva programación. Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenDisplayScheduleWrite
ID de operación
setScreenDisplaySchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
habilitado (requerido, booleano)
windows (requerido, arreglo)EN Windows.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PUT --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/display-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla con su estado de pantalla.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screens/{id}/display-schedule

Borrar programación de pantalla

Quita la programación de pantalla (la pantalla sigue encendida salvo que se anule). Borrar una inexistente responde 200 sin cambios. Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
clearScreenDisplaySchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/display-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla con su estado de pantalla.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403outside_screen_scope como en OutsideScreenScope, o approver_required - un miembro limitado a pantallas que no puede aprobar revisiones no cambia lo que reproduce una pantalla ni cuándo (docs/screen-scope.md).Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/reboot-schedule

Obtener programación de reinicio de pantalla

Devuelve reboot_schedule (null cuando no hay ninguna) y next_reboot_at, el inicio de la siguiente ventana en la que el backend reinicia la pantalla (null cuando no hay ninguna). El ETag es la revisión de la pantalla.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenRebootSchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/reboot-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Programación de reinicio.ScreenRebootScheduleView (application/json); headers: ETag
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PUT/api/screens/{id}/reboot-schedule

Definir programación de reinicio de pantalla

Reemplaza la programación de reinicio: enabled y de 1 a 16 ventanas screenrig.schedule/v1 (days, start/end HH:MM, end <= start cruza la medianoche y pertenece al día de inicio, día completo sin extremos), cada una de 5 minutos a 24 horas.

Al inicio de cada ventana en la zona horaria de la pantalla (obligatoria, de lo contrario invalid_request) el backend emite el mismo reinicio que POST /api/screens/{id}/reboot, con source schedule en Screen.commands, screen.reboot_requested y los detalles de player.reboot.

Un inicio dentro de un salto por cambio de hora de primavera se ejecuta en el primer minuto válido de la ventana; una ventana sin ningún minuto válido ese día, porque queda totalmente dentro del salto, se omite con screen.reboot_skipped reason window_missed (next_reboot_at muestra el minuto en que termina el salto). Una repetición por cambio de hora de otoño se ejecuta una vez por ventana y fecha local.

A una pantalla en línea se le envía el reinicio de inmediato; una sin conexión lo mantiene en cola solo hasta que termina su ventana (expires_at), de modo que un reinicio tardío nunca cae fuera de ella. Una repetición nunca reemplaza un reinicio solicitado por una persona que aún espera a la pantalla: se omite con screen.reboot_skipped reason reboot_pending.

Un cambio de zona horaria cancela los reinicios programados que aún esperan y mueve next_reboot_at a la nueva zona.

Un reinicio, programado o solicitado, no genera ninguna alerta screen_offline, display_disconnected o crashing durante diez minutos después de enviarse, y un aviso de alguna de ellas que vence en ese tiempo espera hasta que termina el período más su tiempo de espera (un aviso crashing se omite como planned_reboot). enabled false conserva las ventanas y no reinicia nada.

Las ventanas de tiempo que no dejan ningún hueco, de modo que ningún inicio sigue, son invalid_request. La indicación de host de la pantalla debe declarar la capacidad reboot, de lo contrario 409 reboot_unsupported y no se guarda nada; una pantalla que la pierde más tarde omite cada ventana con screen.reboot_skipped y conserva su programación.

Añade screen.reboot_schedule_changed, incrementa la revisión (If-Match la protege) y nunca vuelve a emitir el manifiesto. La pantalla debe estar activa.

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenRebootScheduleWrite
ID de operación
setScreenRebootSchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.

Campos del cuerpo de la solicitud

CampoDescripción
habilitado (requerido, booleano)
windows (requerido, arreglo)Ventanas de reinicio: el backend reinicia la pantalla al inicio de cada una, en la zona horaria de la pantalla. Cada una dura de 5 minutos a 24 horas.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PUT --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/reboot-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla con su programación de reinicio y next_reboot_at.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
402feature_not_in_plan — Los reinicios programados forman parte de Plus; enabled true los necesita, enabled false y DELETE no. El problema nombra la función, el plan del proyecto y required_plan.Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screens/{id}/reboot-schedule

Borrar programación de reinicio de pantalla

Quita la programación de reinicio y next_reboot_at; un reinicio ya emitido no se cancela (POST /api/screens/{id}/commands/{command_id}/cancel cancela uno que siga en cola). Borrar cuando no hay ninguna responde 200 sin cambios.

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
clearScreenRebootSchedule

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
If-MatchencabezadoopcionalRevisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict.
Idempotency-KeyencabezadoopcionalOmitir para una operación nueva. Proporcione y reutilice una clave para deduplicar reintentos; el CLI gestiona las claves automáticamente.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://screenrig.ai/api/screens/RESOURCE_ID/reboot-schedule'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pantalla sin programación de reinicio.Pantalla (application/json); encabezados: ETag, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/toast

Toast posterior a pantalla

Publica un toast transitorio de chrome de escenario a la pantalla nombrada. Un toast no es un primitivo: no ocupa un espacio en el lienzo, no tiene capa y nunca participa en la preparación ni en la transición cruzada. El tipo de evento duradero es screen.toast en el flujo SSE de tiempo de ejecución existente. El escaneo en tiempo de ejecución nunca entrega un toast después de expires_at, por lo que un cursor persistente no puede reproducirlo después.

Los colores de nivel son parte del chrome del reproductor y no son campos de la API. El texto tiene entre 1 y 120 caracteres, el salto de línea es el único salto aceptado, y se aceptan como máximo tres líneas; un Player muestra un toast en una línea, un salto de línea como espacio.

Se rechazan materiales reconocibles de credenciales de ScreenRig y otros caracteres de control. duration_ms por defecto es 60000 y debe estar entre 2000 y 60000 inclusive. Un reintento exacto con Idempotency-Key devuelve el expires_at original por veinticuatro horas. Último gana: no hay cola ni verbo cancelar. Los mensajes de pantalla están exentos del medidor API de 1 crédito.

Una pantalla de una carpeta de pantallas protegida es protected_target (409).

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenToastWrite
ID de operación
postScreenToast

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Idempotency-Keyencabezadorequerido

Campos del cuerpo de la solicitud

CampoDescripción
nivel (requerido, cadena)Token de severidad cerrado. El chrome del Player elige el relleno; la API nunca lleva un color. Permitidos: "error", "alerta", "info"
texto (requerido, cadena)

De 1 a 120 caracteres. El salto de línea es el único salto de línea aceptado. Máximo tres líneas; un Player muestra el toast en una línea, un salto de línea como espacio. Se rechazan otros caracteres de control y material reconocible de credenciales de ScreenRig. minLength: 1 maxLength: 120

duration_ms (opcional, entero)Duración visible en milisegundos. Los valores omitidos por defecto son 60000. predeterminado: 60000 mínimo: 2000 máximo: 60000
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/toast'

Respuestas

EstadoSignificadoCuerpo y encabezados
202Aceptado. El toast es duradero hasta expires_at. Un reintento idempotente exacto devuelve esta misma expiración.ScreenToastAccepted (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

protected_target cuando la pantalla está en una carpeta de pantallas protegida (docs/screen-scope.md; quite la protección de la carpeta mediante una revisión, haga el cambio, protéjala de nuevo), o los demás conflictos de la operación.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/storage-forecast

Pronóstico de almacenamiento de pantalla

Prueba de ajuste previa a la asignación: responde si una lista de reproducción cabría en la pantalla nombrada antes de asignarla, con la misma selección de objetivo que Screen.storage_forecast (la última capacidad reportada de la pantalla, solo plan A.3, sin predicción de transición, nada tratado como local).

No escribe nada: no asignación, no revisión de pantalla, no evento, y el modelo de lectura storage_forecast de la pantalla queda intacto. El portador del proyecto es autoritativo; una pantalla o playlist de otro proyecto es not_found. fit es desconocido cuando la pantalla no tiene reporte de almacenamiento, o cuando las referencias de contenido de la playlist no están listas, y ambos conteos de bytes son nulos entonces.

Una playlist_revision opcional rechaza una playlist que cambió desde que el llamador la leyó con revision_conflict. Un informe con más de 24 horas está obsoleto pero aún se usa para pronósticos, igual que Screen.storage_forecast.

Autenticación
projectBearer
Cuerpo de la solicitud
ScreenStorageForecastRequest
ID de operación
forecastScreenStorage

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido

Campos del cuerpo de la solicitud

CampoDescripción
playlist_id (requerido, cadena)minLength: 1
playlist_revision (opcional, entero)Revisión opcional esperada de la lista de reproducción. Una revisión almacenada diferente es revision_conflict y no se devuelve pronóstico. mínimo: 1
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/storage-forecast'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Pronóstico en simulación. fit unknown significa que no hay datos para pronosticar; los conteos de bytes y received_at son nulos.ScreenStorageForecastDryRun (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
412revision_conflict: playlist_revision no es la revisión actual de la lista de reproducción; no se devuelve pronóstico.Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/campaigns

Explicar campañas de pantalla

Por qué cada campaña del proyecto se reproduce o no en esta pantalla, en orden de precedencia, con la lista de reproducción efectiva de la pantalla. items y effective_playlist son el estado actual de la pantalla.

Con at (y opcionalmente to), at es el mismo resolutor que ejecuta el barrido de límites, consultado sobre ese instante, con un veredicto para la toma de control, cada campaña y cada entrada del horario (won, outranked, not_started, ended, outside_hours, off), la lista de reproducción en ese instante y lo que la respuesta no juzga.

Con to también, at.timeline lista los tramos entre at y to en los que la lista de reproducción no cambia. El horario, la toma de control y las campañas se leen tal como están ahora.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
explainScreenCampaigns

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
enconsultaopcional

El instante que explicar, ya sea RFC 3339 con zona (2026-03-08T09:30:00Z o 2026-03-08T01:30:00-08:00) o una hora del reloj propio de la pantalla (2026-03-08T09:30, con segundos opcionales). Una hora de reloj que el horario de verano omite o repite se rechaza con invalid_request nombrando at, y una repetida nombra los dos instantes entre los que elegir.

Por defecto, ahora cuando solo se da to.

aconsultaopcional

Fin de la línea de tiempo de cambios que empieza en at, en las mismas dos formas que at. Posterior a at, sin límite de distancia; una respuesta lista como máximo 500 tramos, y ocho días sin cambios cuentan como uno; timeline_truncated indica que se detuvo antes de llegar a to.

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://api.screenrig.ai/api/screens/RESOURCE_ID/campaigns'

Respuestas

EstadoSignificadoCuerpo y encabezados
200El estado de cada campaña en la pantalla.ScreenCampaigns (application/json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/screenshot

Obtener captura de pantalla

Devuelve el WebP listo actual para la pantalla nombrada. El capture_id opcional debe coincidir con ese espacio listo. Un capture_id nombrado que expiró sin carga es screenshot_unavailable. Un capture_id nombrado reemplazado por una solicitud posterior es resource_conflict. Los bytes de la imagen nunca son una URL firmada ni una clave de objeto. No se acepta rango.

Los mensajes de pantalla están exentos del medidor API de 1 crédito. El ETag es el SHA-256 fuerte del WebP almacenado. Una respuesta de sesión del panel es privada, sin caché, y un If-None-Match del panel que coincide con la imagen actual, verificado después de resolver pantalla y captura en el proyecto de la sesión, devuelve 304 sin abrir los bytes almacenados.

Una respuesta bearer de proyecto permanece privada, no-store.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenScreenshot

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
capture_idconsultaopcional
If-None-MatchencabezadoopcionalETag fuerte de una captura de pantalla que esta ruta devolvió. Respetado para una sesión de dashboard.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/screenshot'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Imagen fija WebP lista actual.cadena (image/webp); encabezados: Content-Type, Content-Length, ETag, X-ScreenRig-Capture-ID, X-ScreenRig-Captured-At, Cache-Control, Content-Disposition
304

Solo sesión del panel. El ETag de la imagen actual coincide con If-None-Match. No se produce cuerpo y no se lee el almacenamiento de objetos. Los encabezados de captura nombran la captura actual, que puede diferir de la respuesta almacenada cuando una captura posterior codificada a los mismos bytes.

sin cuerpo; encabezados: ETag, Cache-Control, X-ScreenRig-Capture-ID, X-ScreenRig-Captured-At
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/screenshot

Solicitar captura de pantalla

Solicita una captura fija de pantalla del nombre de pantalla activa. Gana el último: una nueva solicitud reemplaza cualquier capture_id en curso y no genera 409. La ranura lista actual se mantiene hasta que una carga posterior tenga éxito. capture_id es un prefijo opcional de entorno, luego shot_ y un sufijo aleatorio. expires_at es treinta segundos después de aceptar.

El tipo de evento duradero es screen.screenshot_requested en el flujo SSE de tiempo de ejecución existente; el escaneo de tiempo de ejecución nunca lo entrega después de expires_at. Los detalles del evento incluyen nombre capture_id, expires_at, max_width_divisor 2, max_height_divisor 2, formato image/webp, calidad 80 y max_bytes 2097152. Los bytes de imagen nunca aparecen en SSE.

El crédito prepago restante no es un bloqueo, y esta ruta de mensaje de pantalla está exenta del medidor API de 1 crédito. Un reintento con Idempotency-Key exacta devuelve el capture_id original y expires_at por veinticuatro horas.

En el canal del panel, la solicitud puede venir de una extensión Chrome o Firefox como POST /api/tab-shares para confirmar una pestaña compartida (GET /api/screens/{id}/screenshot/status y GET /api/screens/{id}/screenshot no requieren reglas de origen).

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
requestScreenScreenshot

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Idempotency-Keyencabezadorequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Idempotency-Key: REQUEST_ID' 'https://screenrig.ai/api/screens/RESOURCE_ID/screenshot'

Respuestas

EstadoSignificadoCuerpo y encabezados
202Aceptado. La solicitud es duradera hasta expires_at. Un reintento idempotente exacto devuelve este mismo capture_id y expiración.ScreenScreenshotAccepted (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/screenshot/status

Obtener estado de captura de pantalla

Devuelve la máquina de estados de captura de pantalla para la pantalla nombrada cuando existe para este proyecto. idle no tiene solicitud ni espacio listo. pending es el capture_id actual antes de expires_at sin carga. ready significa que la última carga exitosa coincide con el capture_id actual. timed_out significa que el id actual alcanzó expires_at sin carga.

El tiempo de espera es perezoso: el primer GET de estado o el siguiente POST después del vencimiento lo registra y añade screen.screenshot_failed una vez con la razón expirado. Una solicitud con tiempo agotado no elimina una ranura lista anterior. Los mensajes de pantalla están exentos del medidor API de 1 crédito.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenScreenshotStatus

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/screenshot/status'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Estado de la captura de pantalla para la pantalla de este proyecto.ScreenScreenshotStatus (application/json); encabezados: Cache-Control
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/live

Obtener la sesión en vivo de la pantalla

Returns the screen's live session after lazy expiry: idle when it has none, requested while the Player has been asked to publish, publishing once the media relay holds its video, ended with ended_reason (stopped, expired, consent_denied, consent_timeout, capture_failed, connection_failed or player_stopped; an open enum) for ten minutes after it ended. publisher.connected is true only while the Player's last report, at most 45 seconds old, said it is connected; it is the Player's own word, not proof of picture. 404 feature_unavailable when the server has no media relay configured.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenLive

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/live'

Respuestas

EstadoSignificadoCuerpo y encabezados
200La sesión en vivo de la pantalla.LiveSession (application/json); encabezados: Cache-Control
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/live

Iniciar la sesión en vivo de la pantalla

Starts live view of the named screen, or renews the one it has (docs/player-compatibility.md §6.10): sub-second video of what the screen plays, from the Player through a media relay to the dashboard. A screen has one live session, shared by every viewer.

Its lease runs duration_s from now (30 to 300, default 300) and a start or renewal sets lease_until to the later of its current end and that instant, never past max_until, five minutes after the session began. The session ends by itself at the latest then: nothing renews or restarts it, and a new session needs a new start.

Termina antes cuando el arrendamiento vence sin renovación, con DELETE o cuando el Player la termina; el Player deja de publicar unos 20 segundos después de que acabe el arrendamiento.

With live_id the request only renews that session: when it is not the screen's live session (it ended, or the screen started another) the answer is 409 live_unavailable naming ended_reason, and no session starts or is extended.

Una sesión nueva agrega el comando de ejecución por pantalla player.live_publish (detalles live_id, at, expires_at sesenta segundos después, max_until; nunca se entrega después de expires_at); una renovación lo envía de nuevo solo si el Player nunca se unió y el último comando caducó.

The screen must be active and online and its host hint must declare the live_view capability: 409 live_unsupported (update the Player, or use a screenshot), 409 live_unavailable (offline), screen_archived. 404 feature_unavailable when the server has no media relay configured. 201 is a new session, 200 a renewed one; both return the LiveSession with a viewer_url that opens the dashboard viewer.

El estado requested dura hasta que el Player publica: consulte GET hasta que publisher.connected. La vista en vivo es gratuita y está exenta del contador de API de 1 crédito, como una captura de pantalla.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
LiveStartRequest
ID de operación
startScreenLive

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido

Campos del cuerpo de la solicitud

CampoDescripción
duration_s (opcional, entero)Cuánto dura el arrendamiento a partir de ahora, en segundos. Una sesión dura como máximo cinco minutos, sea cual sea el arrendamiento. default: 300 minimum: 30 maximum: 300
live_id (opcional, cadena)

Renew this session only. When it is not the screen's live session, the answer is live_unavailable (the detail names ended_reason) and nothing starts or is extended. Without it, a start begins a session when the screen has none. pattern: "^lv_[a-z2-7]{26}$"

Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/live'

Respuestas

EstadoSignificadoCuerpo y encabezados
201Una sesión en vivo nueva; se pidió al Player que publicara.LiveSession (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
200La sesión en vivo de la pantalla, renovada.LiveSession (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
ELIMINAR/api/screens/{id}/live

Detener la sesión en vivo de la pantalla

Ends the screen's live session (ended_reason stopped), appends player.live_stop (details live_id, at, expires_at sixty seconds later), and closes its tracks on the media relay. 204 also when the screen has no live session. A Player that misses the command stops at its next heartbeat. 404 feature_unavailable when the server has no media relay configured.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
stopScreenLive

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/live'

Respuestas

EstadoSignificadoCuerpo y encabezados
204Detenida, o no había nada que detener.sin cuerpo; encabezados: Cache-Control
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/live/viewers

Crear un espectador en vivo de la pantalla

Abre un espectador de la sesión en vivo de la pantalla: una sesión nueva del relé de medios que se suscribe al vídeo del Player, y la oferta WebRTC del relé.

Apply offer with setRemoteDescription on an RTCPeerConnection built with ice_servers (short-lived credentials), create the answer, wait for ICE gathering to complete or two seconds, then PUT the answer to /api/screens/{id}/live/viewers/{viewer_id} within two minutes.

Candidates travel inside the SDP; there is no separate candidate call. 409 live_not_ready while the session is requested, 409 live_unavailable when the screen has no live session or it ended (the detail names ended_reason). 404 feature_unavailable when the server has no media relay configured.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
object
ID de operación
createScreenLiveViewer

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/live/viewers'

Respuestas

EstadoSignificadoCuerpo y encabezados
201Un espectador y la oferta del relé.LiveViewer (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
PUT/api/screens/{id}/live/viewers/{viewer_id}

Responder a un espectador en vivo de la pantalla

Applies the viewer's WebRTC answer to the relay's offer. A viewer answers once, within two minutes of its offer; an unknown, expired, already answered or another screen's viewer_id is 404 not_found. 204 once the relay accepts the answer; media then flows from the relay to the viewer. 404 feature_unavailable when the server has no media relay configured.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
LiveViewerAnswer
ID de operación
answerScreenLiveViewer

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
viewer_idrutarequerido

Campos del cuerpo de la solicitud

CampoDescripción
answer (requerido, SessionDescription)
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request PUT --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/screens/RESOURCE_ID/live/viewers/VIEWER_ID'

Respuestas

EstadoSignificadoCuerpo y encabezados
204El relé aceptó la respuesta.sin cuerpo; encabezados: Cache-Control
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
POST/api/screens/{id}/live/frames

Iniciar los fotogramas en vivo de la pantalla

Starts JPEG frames of the screen's live session, for an agent that has HTTPS and no WebRTC: the media relay decodes the Player's published video and delivers one JPEG about every second, and GET /api/screens/{id}/live/frame returns the latest.

La sesión debe estar publicando (409 live_not_ready hasta entonces, 409 live_unavailable cuando no hay ninguna o terminó; inicie una con POST /api/screens/{id}/live).

Frames are started once per session: asking again answers the same adapter's progress, and a Player that reconnects ends its frames, so ask again. state is starting until the first frame arrives, streaming while frames arrive, and silent when the adapter is older than fifteen seconds and none has arrived in that time (last_frame_at, when present, says when frames last came).

The frames end with the session. 404 feature_unavailable when the server has no media relay or no frames origin configured. Live frames are free and exempt from the 1-credit API meter, like a screenshot. They are what the Player's encoder sent, scaled and lossy; they do not replace a screenshot as proof of layout.

Autenticación
projectBearer
Cuerpo de la solicitud
object
ID de operación
startScreenLiveFrames

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/live/frames'

Respuestas

EstadoSignificadoCuerpo y encabezados
202El adaptador de fotogramas y hasta dónde ha llegado.LiveFrames (application/json); encabezados: Cache-Control, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/live/frame

Obtener el fotograma en vivo de la pantalla

Devuelve el último fotograma JPEG de la sesión en vivo de la pantalla.

Without after it returns the latest frame there is; with after (the ScreenRig-Captured-At of the frame you already have) it returns the first frame captured later, waiting up to five seconds for one, so a loop that passes each answer's ScreenRig-Captured-At back as after receives every new frame once.

ScreenRig-Captured-At indica cuándo recibió el backend el fotograma.

When no new frame comes in time the answer is 409 live_not_ready with Retry-After: 1; 409 resource_conflict answers a session whose frames were not started (POST /api/screens/{id}/live/frames first, and again after the Player reconnects); 409 live_unavailable answers a session that has ended or whose adapter is silent.

Frames are relay-decoded JPEGs of the live stream, at most 1280 by 720: they show what the Player encoded and sent, not a screenshot. They end with the session (max_until at the latest). 404 feature_unavailable when the server has no media relay or no frames origin configured. Free and exempt from the 1-credit API meter.

Autenticación
projectBearer
Cuerpo de la solicitud
ninguno
ID de operación
getScreenLiveFrame

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
despuésconsultaopcionalDevuelve un fotograma capturado después de este instante (RFC 3339, como en ScreenRig-Captured-At).
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/screens/RESOURCE_ID/live/frame'

Respuestas

EstadoSignificadoCuerpo y encabezados
200El fotograma.string (image/jpeg); encabezados: Content-Type, Content-Length, ETag, Cache-Control, ScreenRig-Live-Id, ScreenRig-Captured-At, ScreenRig-Frame-Width, ScreenRig-Frame-Height, RateLimit-Policy, RateLimit
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
409

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
429

Problema estable rate_limited. Reintente solo después del intervalo Retry-After autorizado. Las denegaciones de ventana fija también incluyen la política RateLimit-Policy y los miembros RateLimit aplicables; las denegaciones por concurrencia y presupuesto de bytes omiten esas divulgaciones opcionales.

Problema (application/problem+json); encabezados: Retry-After, RateLimit-Policy, RateLimit
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/live/frames

Conectar los fotogramas en vivo

The media relay's frame adapter connects here with a WebSocket upgrade; no client, agent or Player calls it. The token is the credential: POST /api/screens/{id}/live/frames hands it to the relay inside the adapter's endpoint and stores only its SHA-256.

Each binary message the relay sends is one protobuf Packet (field 1 sequenceNumber, field 2 timestamp, field 5 payload) whose payload is one whole JPEG of at most 2 MiB; anything else is skipped. The backend keeps the latest frame for fifteen seconds. One connection per token: a newer one replaces the older.

The connection is closed with 1000 when the live session ends, and a token of an ended session is refused with 401 before the upgrade. 404 feature_unavailable when the server has no frames origin configured.

Autenticación
ninguno
Cuerpo de la solicitud
ninguno
ID de operación
connectLiveFrames

Parámetros

NombreEnviar¿Requerido?Descripción
tokenconsultarequeridoEl token del adaptador, de 43 caracteres.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET 'https://api.screenrig.ai/live/frames?token=TOKEN'

Respuestas

EstadoSignificadoCuerpo y encabezados
101Cambio de protocolo a WebSocket.sin cuerpo
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/health/history

Obtener historial de salud de pantalla

La salud que una pantalla reportó a lo largo del tiempo. resolution=raw (predeterminado) devuelve cada informe aceptado en orden temporal, con forma de Screen.health sin obsoletos; resolution=hour devuelve un resumen por hora UTC (informes, temperatura máxima y promedio, carga máxima y proporción de memoria, señal Wi-Fi más débil, si la pantalla estuvo desconectada, recuentos máximos de fallos y reinicios del renderizador). from (inclusive) y to (exclusivo) predeterminan las últimas 24 horas; el rango es como máximo 31 días para raw y 93 días para hour.

Una página contiene como máximo limit filas (por defecto 100, máximo 500) con next_cursor, null al final. El historial se conserva según la retención de eventos del plan. Los informes en bruto llegan a esta vista en segundos, los resúmenes horarios en unos 5 minutos. Una pantalla de otro proyecto es not_found. Screen.health, el informe más reciente, no cambia.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenHealthHistory

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
formatoconsultaopcionaljson (por defecto) devuelve el informe como JSON. csv, xlsx y pdf devuelven las mismas filas como archivo adjunto (cada página de un informe paginado, hasta 50000 filas).
desdeconsultaopcionalLímite inferior inclusivo en el tiempo del informe. Por defecto, 24 horas antes de to.
aconsultaopcionalLímite superior exclusivo en el tiempo del informe. Por defecto es ahora.
resoluciónconsultaopcionalraw devuelve cada informe; hour devuelve un resumen por hora UTC.
límiteconsultaopcionalTamaño de página.
cursorconsultaopcionalnext_cursor de la página anterior, con los mismos filtros. Opaco.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/health/history'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Una página de informes o resúmenes horarios.ScreenHealthHistory (application/json); encabezados: Cache-Control
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/uptime

Obtener tiempo activo de pantalla

Disponibilidad diaria de una pantalla durante días UTC inclusivos (day_to por defecto es hoy y day_from 29 días antes, máximo 366 días). Cada fila contiene los segundos online y offline registrados ese día, disponibilidad (online sobre tiempo registrado, nulo si no se registró nada) y cobertura (la proporción del día con estado registrado).

El tiempo sin estado registrado nunca se cuenta como tiempo de inactividad: solo reduce la cobertura. El intervalo abierto actual de la pantalla se incluye hasta ahora y marca sus días en vivo. Los días sin registros no tienen fila. El estado sin conexión se registra después de que la pantalla ha estado inalcanzable durante 60 segundos. Una pantalla de otro proyecto es not_found.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenUptime

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
formatoconsultaopcionaljson (por defecto) devuelve el informe como JSON. csv, xlsx y pdf devuelven las mismas filas como archivo adjunto (cada página de un informe paginado, hasta 50000 filas).
day_fromconsultaopcionalPrimer día UTC, inclusive. Por defecto 29 días antes de day_to. Con day_to abarca como máximo 366 días.
day_toconsultaopcionalÚltimo día UTC, inclusive. Por defecto hoy (UTC).
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/uptime'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Filas diarias de tiempo activo, las más antiguas primero.ScreenUptime (application/json); encabezados: Cache-Control
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/screens/{id}/presence

Obtener presencia de pantalla

Las transiciones en línea y fuera de línea de la pantalla, las más recientes primero, desde sus eventos screen.online y screen.offline según lo que almacene la línea de registro. since (inclusive) y until (exclusivo) delimitan el tiempo del evento; until por defecto es ahora y since hasta 30 días antes, como máximo 366 días. Las transiciones se conservan según la retención de eventos del plan.

Una página contiene como máximo limit transiciones (por defecto 100, máximo 500) con next_cursor, null al final; devuélvalo como antes. Una transición offline que el servidor detectó solo cuando la pantalla se reconectó lleva detected_on_reconnect, y su at es cuando terminó el arrendamiento de presencia. Offline se registra después de que la pantalla ha estado inalcanzable por 60 segundos.

Una pantalla de otro proyecto es not_found.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getScreenPresence

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
idrutarequerido
desdeconsultaopcionalLímite inferior inclusivo en el tiempo del evento de transición. Por defecto, 30 días antes de until.
hastaconsultaopcionalLímite superior exclusivo en el tiempo del evento de transición. Por defecto es ahora. until - since es máximo 366 días.
límiteconsultaopcionalTamaño de página. Un valor fuera de 1-500 se rechaza con invalid_request nombrando limit.
beforeconsultaopcionalnext_cursor de la página anterior, con el mismo since y until.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/screens/RESOURCE_ID/presence'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Transiciones de presencia, las más recientes primero.ScreenPresenceHistory (application/json); encabezados: Cache-Control
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
404

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/health/trend

Obtener Health Trend

La salud de la flota del proyecto por hora UTC: cuántas pantallas reportaron, y cuántas de ellas estaban calientes (a 80 °C o más), tenían un monitor desconectado o estaban fallando (3 o más fallos en 24 horas). from (inclusive) y to (exclusive) por defecto son las últimas 24 horas, máximo 93 días; una página contiene a lo sumo limit filas (por defecto 100, máximo 500) con next_cursor, nulo al final.

Las horas van por detrás de los informes hasta unos 5 minutos. Se rechaza a un llamador limitado a pantallas (outside_screen_scope); GET /api/screens/{id}/health/history es la forma por pantalla.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getHealthTrend

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
formatoconsultaopcionaljson (por defecto) devuelve el informe como JSON. csv, xlsx y pdf devuelven las mismas filas como archivo adjunto (cada página de un informe paginado, hasta 50000 filas).
desdeconsultaopcionalLímite inferior inclusivo en el tiempo del informe. Por defecto, 24 horas antes de to.
aconsultaopcionalLímite superior exclusivo en el tiempo del informe. Por defecto es ahora.
límiteconsultaopcionalTamaño de página.
cursorconsultaopcionalnext_cursor de la página anterior, con los mismos filtros. Opaco.
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/health/trend'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Una página de estado de salud de la flota por hora.HealthTrend (application/json); encabezados: Cache-Control
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
GET/api/uptime/daily

Obtener tiempo activo de proyecto

Disponibilidad diaria de las pantallas del proyecto durante días UTC inclusivos (por defecto y rango como GET /api/screens/{id}/uptime). Cada fila suma los segundos online y offline de las pantallas con estado registrado ese día; la cobertura es la proporción del día de esas pantallas con estado registrado.

Los intervalos se cuentan cuando terminan, así que la fila de hoy abarca los intervalos que han terminado hasta ahora; el recuento en línea en vivo está en el resumen del panel. Se rechaza a un llamador limitado a pantallas (outside_screen_scope); GET /api/screens/{id}/uptime es la forma por pantalla.

Autenticación
projectBearer O dashboardSession
Cuerpo de la solicitud
ninguno
ID de operación
getProjectUptime

Parámetros

NombreEnviar¿Requerido?Descripción
ScreenRig-ProjectencabezadoopcionalObsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token.
formatoconsultaopcionaljson (por defecto) devuelve el informe como JSON. csv, xlsx y pdf devuelven las mismas filas como archivo adjunto (cada página de un informe paginado, hasta 50000 filas).
day_fromconsultaopcionalPrimer día UTC, inclusive. Por defecto 29 días antes de day_to. Con day_to abarca como máximo 366 días.
day_toconsultaopcionalÚltimo día UTC, inclusive. Por defecto hoy (UTC).
Plantilla y respuestas de solicitud
shell · plantilla de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/uptime/daily'

Respuestas

EstadoSignificadoCuerpo y encabezados
200Filas diarias de tiempo activo, las más antiguas primero.ProjectUptime (application/json); headers: Cache-Control
400

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
401

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)
403

outside_screen_scope - el llamador está limitado a pantallas y la pantalla, carpeta de pantallas, selector o audiencia que nombra o alcanza la solicitud está fuera de ellas (docs/screen-scope.md). Un id fuera del alcance y un id que no existe reciben la misma respuesta; errors[0].screen_scope lleva el alcance del llamador, y la escritura se rechaza por completo, nunca se acota.

Problema (application/problem+json)
predeterminado

Respuesta estable RFC 9457 a problemas. Un 421 server_draining lleva Retry-After de 1 segundo, un 500 not_ready o dependency_unavailable lleva 5, y un 500 manifest_degraded lleva 60, a menos que el manejador establezca un valor más específico.

Problema (application/problem+json)