OpenAPI YAMLOpenAPI JSONproblemas YAMLResumen de la API
Este grupo tiene 11 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.
Aplicaciones y operaciones
Listar aplicaciones
Lista aplicaciones, las más nuevas primero, máximo 500 por página. Los nombres son etiquetas y no necesitan ser únicos; diríjase a una aplicación por ID. next_cursor es la posición de la última fila devuelta mientras queden más filas; páselo como after, con los mismos filtros, para la siguiente página. next_cursor es nulo en la última página.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| después | consulta | opcional | next_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
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/applications'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Aplicaciones | ApplicationList (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) |
Subir aplicación
Transmite un tar.gz producido por CLI directamente a un almacenamiento duradero limitado. Los metadatos se llevan en los encabezados para que el archivo nunca se codifique en base64 ni se materialice como JSON por el servidor.
El proxy frente a la API termina una solicitud que no ha respondido en unos 100 s, por lo que un archivo grande en una subida lenta falla aquí; POST /api/applications/uploads envía el archivo directamente al almacén de objetos.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| Idempotency-Key | encabezado | requerido | |
| ScreenRig-Archive-SHA256 | encabezado | requerido | |
| ScreenRig-Expanded-Bytes | encabezado | requerido | |
| ScreenRig-File-Count | encabezado | requerido | |
| ScreenRig-SDK-Version | encabezado | opcional | |
| ScreenRig-Application-Name | encabezado | opcional | Nombre de aplicación ASCII; mutuamente exclusivo con ScreenRig-Application-Name*. Se recortan espacios en blanco al inicio y al final. Se rechazan valores de encabezado duplicados y de control. El nombre decodificado está limitado a 120 valores escalares Unicode. |
| ScreenRig-Application-Name* | encabezado | opcional | Nombre de aplicación Unicode codificado como RFC 8187 UTF-8'' seguido de bytes UTF-8 codificados en porcentaje (idioma vacío, conjunto de caracteres UTF-8 exacto). Mutuamente exclusivo con ScreenRig-Application-Name. Se rechazan escapes inválidos, UTF-8 inválido, controles y valores duplicados en encabezados. Se recortan los espacios en blanco al inicio y al final; el nombre decodificado está limitado a 120 valores escalares Unicode. Ningún encabezado de nombre puede renombrar una actualización de versión. Esto evita Unicode sin procesar en los valores de encabezado HTTP. |
Plantilla y respuestas de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Idempotency-Key: REQUEST_ID' --header 'ScreenRig-Archive-SHA256: VALUE' --header 'ScreenRig-Expanded-Bytes: VALUE' --header 'ScreenRig-File-Count: VALUE' --header 'Content-Type: application/gzip' --data-binary '@request.bin' 'https://screenrig.ai/api/applications'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 202 | Archivo subido aceptado | Operación aceptada (application/json); encabezados: 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) |
Subir versión de aplicación
Publica una nueva versión inmutable de una aplicación propia usando la misma canalización de carga tar.gz vinculada. If-Match protege la revisión de la aplicación; la aceptación la incrementa, y la publicación exitosa la incrementa nuevamente cuando cambia latest_ready_release. Se preservan el nombre y la identidad de la aplicación. No se cambian los pines de lanzamiento de listas de reproducción existentes.
Un reintento idempotente idéntico devuelve la operación original incluso después de cambios en la revisión. El proxy frente a la API termina una solicitud que no ha respondido en unos 100 s, por lo que un archivo grande en una subida lenta falla aquí; POST /api/applications/{id}/uploads envía el archivo directamente al almacén de objetos.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido | |
| If-Match | encabezado | opcional | Revisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict. |
| Idempotency-Key | encabezado | requerido | |
| ScreenRig-Archive-SHA256 | encabezado | requerido | |
| ScreenRig-Expanded-Bytes | encabezado | requerido | |
| ScreenRig-File-Count | encabezado | requerido | |
| ScreenRig-SDK-Version | encabezado | opcional |
Plantilla y respuestas de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Idempotency-Key: REQUEST_ID' --header 'ScreenRig-Archive-SHA256: VALUE' --header 'ScreenRig-Expanded-Bytes: VALUE' --header 'ScreenRig-File-Count: VALUE' --header 'Content-Type: application/gzip' --data-binary '@request.bin' 'https://api.screenrig.ai/api/applications/RESOURCE_ID/releases'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 202 | Archivo subido aceptado | Operación aceptada (application/json); encabezados: 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) |
Crear carga de aplicación
Declara una carga directa de un tar.gz producido por la CLI que crea una nueva aplicación. La respuesta es una autorización firmada para exactamente un PUT de objeto del archivo, por lo que los bytes van directamente al almacén de objetos y nunca pasan por la API, cuyo proxy termina una solicitud que no ha respondido en unos 100 s.
Envíe el archivo con PUT a upload_url, luego confirme con POST /api/applications/uploads/{id}/commit y espere la operación. La aplicación, su versión y la operación receptora existen desde esta respuesta, como después de POST /api/applications. Una carga no confirmada en 24 horas falla, y una aplicación que nunca publicó una versión se elimina.
La misma Idempotency-Key y el mismo cuerpo devuelven la misma carga con una URL recién firmada. GET /api/capabilities establece features.application_direct_uploads donde se sirven estas rutas.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| Idempotency-Key | encabezado | requerido |
Campos del cuerpo de la solicitud
| Campo | Descripción |
|---|---|
| nombre (opcional, cadena) | Nombre de una nueva aplicación, recortado; como máximo 120 caracteres Unicode y sin controles. Omitido o vacío selecciona un nombre generado. Una declaración de versión (POST /api/applications/{id}/uploads) no debe llevar uno. maxLength: 120 |
| sha256 (obligatorio, cadena) | SHA-256 de los bytes del archivo. pattern: "^[0-9a-f]{64}$" |
| compressed_bytes (requerido, entero) | Tamaño del archivo en bytes. mínimo: 1 máximo: 104857600 |
| expanded_bytes (requerido, entero) | mínimo: 1 máximo: 262144000 |
| file_count (requerido, entero) | mínimo: 1 máximo: 5000 |
| sdk_version (opcional, cadena) | maxLength: 64 |
Plantilla y respuestas 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/applications/uploads'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 201 | Autorización firmada para exactamente un PUT de objeto del archivo. Envíe el método devuelto y cada encabezado devuelto textualmente; el PUT debe comenzar antes de expires_at, dos horas después de la declaración. | ApplicationUploadSession (application/json); encabezados: Cache-Control, 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) |
Crear carga de versión de aplicación
Declara una carga directa de una nueva versión inmutable de una aplicación propia, con respuesta como en POST /api/applications/uploads. If-Match protege la revisión de la aplicación como en POST /api/applications/{id}/releases, y la aceptación la incrementa. El cuerpo no lleva nombre; una versión conserva el nombre de su aplicación. Los pins de versión de listas de reproducción existentes no cambian.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido | |
| If-Match | encabezado | opcional | Revisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict. |
| Idempotency-Key | encabezado | requerido |
Campos del cuerpo de la solicitud
| Campo | Descripción |
|---|---|
| nombre (opcional, cadena) | Nombre de una nueva aplicación, recortado; como máximo 120 caracteres Unicode y sin controles. Omitido o vacío selecciona un nombre generado. Una declaración de versión (POST /api/applications/{id}/uploads) no debe llevar uno. maxLength: 120 |
| sha256 (obligatorio, cadena) | SHA-256 de los bytes del archivo. pattern: "^[0-9a-f]{64}$" |
| compressed_bytes (requerido, entero) | Tamaño del archivo en bytes. mínimo: 1 máximo: 104857600 |
| expanded_bytes (requerido, entero) | mínimo: 1 máximo: 262144000 |
| file_count (requerido, entero) | mínimo: 1 máximo: 5000 |
| sdk_version (opcional, cadena) | maxLength: 64 |
Plantilla y respuestas 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/applications/RESOURCE_ID/uploads'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 201 | Autorización firmada para exactamente un PUT de objeto del archivo. Envíe el método devuelto y cada encabezado devuelto textualmente; el PUT debe comenzar antes de expires_at, dos horas después de la declaración. | ApplicationUploadSession (application/json); encabezados: Cache-Control, 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) |
Confirmar carga de aplicación
Confirma una carga directa de aplicación una vez finalizado su PUT. El servidor comprueba el archivo preparado frente a la declaración (su tamaño y la suma de verificación SHA-256 que el almacén de objetos tomó con el PUT), lo copia a su propia área de preparación de cargas y pone la publicación en cola.
Espere la Operation devuelta con GET /api/operations/{id} hasta que sea succeeded o failed, como después de POST /api/applications. Una confirmación antes de que finalice el PUT responde invalid_request y no cambia nada, por lo que puede enviarse de nuevo; los bytes preparados que difieren de la declaración hacen fallar la carga. Una confirmación repetida responde la misma operación.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido | |
| Idempotency-Key | encabezado | requerido |
Campos del cuerpo de la solicitud
| Campo | Descripción |
|---|---|
| sha256 (obligatorio, cadena) | patrón: "^[0-9a-f]{64}$" |
| compressed_bytes (requerido, entero) | mínimo: 1 máximo: 104857600 |
Plantilla y respuestas 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/applications/uploads/RESOURCE_ID/commit'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 202 | El archivo está preparado y su publicación está en cola. | Operación (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) |
Obtener aplicación
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido |
Plantilla y respuestas de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/applications/RESOURCE_ID'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Aplicación | Aplicación (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) |
Renombrar aplicación
Cambia el nombre visible de una aplicación propiedad del proyecto autenticado. Los nombres se recortan, contienen de 1 a 120 caracteres Unicode sin controles, y pueden repetirse dentro de un proyecto. Se preservan la identidad de la aplicación, versiones, datos K/V y pines de lanzamiento de lista de reproducción.
Un nombre cambiado avanza la revisión de la aplicación y emite application.updated; el mismo nombre no realiza ninguna acción. If-Match protege opcionalmente la revisión. Un reintento idempotente idéntico devuelve la respuesta original tras cambios posteriores en los metadatos.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido | |
| If-Match | encabezado | opcional | Revisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict. |
| Idempotency-Key | encabezado | opcional | Omitir 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
| Campo | Descripción |
|---|---|
| nombre (requerido, cadena) | Nombre de pantalla tras recortar; se rechazan controles y nombres vacíos. minLength: 1 maxLength: 120 |
Plantilla y respuestas de solicitud
curl --request PATCH --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/applications/RESOURCE_ID'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Aplicación renombrada. | Aplicación (application/json); encabezados: ETag |
| 412 | revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual. | 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 aplicación
Elimina una aplicación propiedad del proyecto autenticado y todas sus versiones. El titular del proyecto es la autoridad; un id desconocido o de otro proyecto es not_found. If-Match protege la revisión de la aplicación. Una referencia de manifiesto en vivo bloquea la eliminación con application_in_use; no existe ruta de eliminación forzada.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido | |
| If-Match | encabezado | opcional | Revisión positiva opcional de recurso. Omitir para escribir el recurso actual; una revisión obsoleta suministrada es revision_conflict. |
| Idempotency-Key | encabezado | opcional | Omitir 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
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/applications/RESOURCE_ID'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 204 | Aplicación y lanzamientos archivados. | sin cuerpo |
| 409 | application_in_use — un manifiesto activo aún hace referencia a una de las versiones de la aplicación. | Problema (application/problem+json) |
| 412 | revision_conflict: If-Match está obsoleto; current_revision del error contiene la revisión actual. | 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) |
Obtener operación
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido |
Plantilla y respuestas de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/operations/RESOURCE_ID'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Operación | Operación (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) |
Cancelar operación
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| ScreenRig-Project | encabezado | opcional | Obsoleto por una versión. Debe ser consistente con las concesiones de proyectos JWT; añade encabezados Deprecation y Warning. Sin intercambio de token. |
| id | ruta | requerido | |
| Idempotency-Key | encabezado | requerido |
Plantilla y respuestas de solicitud
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Idempotency-Key: REQUEST_ID' 'https://api.screenrig.ai/api/operations/RESOURCE_ID/cancel'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Operación duradera cancelada. Un cerco de trabajador actual ya no puede finalizarla. | Operación (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) |