OpenAPI YAMLOpenAPI JSONproblemas YAMLResumen de la API
Este grupo tiene 9 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.
Soporte
Enviar un mensaje de contacto desde el sitio
Recepción JSON anónima del mismo origen para el formulario de contacto del sitio. Requiere el encabezado Origin del sitio y una Idempotency-Key de 20 a 128 letras, dígitos, guiones o guiones bajos. No crea cuentas ni sesiones. Guarda el mensaje y el correo de respuesta antes de confirmar la recepción; el proceso de soporte los envía al canal de soporte de Slack configurado.
El correo proporcionado por el visitante es un dato de contacto, nunca una prueba de identidad. Los reintentos idénticos reciben la misma confirmación sin otra entrega; cambiar el cuerpo con la misma clave produce idempotency_mismatch.
Como máximo 10 mensajes nuevos por IP de cliente por hora (IPv6 agrupadas por /64), 3 por correo al día y 200 en total por hora; todas las solicitudes comparten un límite de 120 por IP por minuto. Retry-After es vinculante. Los mensajes permanecen en cola si falla la entrega; los registros entregados caducan después de 30 días.
Parámetros
| Nombre | Enviar | ¿Requerido? | Descripción |
|---|---|---|---|
| Origen | encabezado | requerido | |
| Idempotency-Key | encabezado | requerido |
Campos del cuerpo de la solicitud
| Campo | Descripción |
|---|---|
| correo electrónico (requerido, cadena) | maxLength: 254 formato: "email" |
| message (obligatorio, cadena) | Mensaje literal que conserva párrafos y sangría; se rechaza el texto compuesto solo por espacios en blanco. minLength: 1 maxLength: 4000 |
| website (opcional, cadena) | Campo antispam; déjalo vacío. maxLength: 200 |
Plantilla y respuestas de solicitud
curl --request POST --header 'Origin: https://screenrig.ai' --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/website/support-messages'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 202 | Mensaje guardado para su entrega, o reintento idéntico confirmado. No contiene datos de contacto. | objeto (application/json); encabezados: Cache-Control |
| 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) |
Estado de soporte
Disponibilidad y horarios para cualquier proyecto activo. chat_allowed es verdadero para cada proyecto activo, incluido Standard. human_available es verdadero cuando una persona puede unirse al chat si se solicita (Education, Premium y Enterprise); Standard y Plus tienen documentación y soporte por IA. staffed indica si el personal está en su horario ahora. Luna responde de inmediato en todos los planes.
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. |
Plantilla y respuestas de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/support/status'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Resultado de soporte. | SupportStatus (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) |
Listar conversaciones de soporte
Conversaciones del proyecto, las más recientes primero, máximo 100. Los conteos de no leídos del personal son por persona o agente autenticado.
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. |
| before | consulta | opcional | ID de conversación del cursor siguiente de la página anterior. |
Plantilla y respuestas de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/support/conversations'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Resultado de soporte. | SupportConversationList (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) |
Crear conversación de soporte
Disponible en todos los planes; Luna responde primero, de inmediato. Donde una persona puede unirse (human_available en el estado del soporte), solicitarla pausa a Luna para el personal; en Standard y Plus se ignora y Luna responde. Se revisa antes del almacenamiento o Slack.
Un mensaje inicial con menos de 8 caracteres o 3 palabras devuelve submission_too_short; uno que no sea pregunta o problema devuelve submission_unclear; spam, texto con muchos enlaces, inyección de indicaciones y texto inseguro devuelven submission_rejected. El texto rechazado no se conserva ni se envía a Luna, y el detalle del problema nunca lo repite.
El texto con forma de credencial distinto a las credenciales de ScreenRig (tokens bearer, claves cloud y API, claves privadas) se reemplaza por [redactado] antes de almacenarlo; el material de credenciales de ScreenRig devuelve invalid_request. Una nueva conversación inicia un hilo en Slack; los seguimientos permanecen en él. Las solicitudes con la misma clave se repiten durante 24 horas, incluida una negativa.
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 |
|---|---|
| body (requerido, cadena) | minLength: 1 maxLength: 4000 |
| human_requested (opcional, booleano) | Pedir una persona, lo que pausa a Luna y espera al personal. Solo cuenta donde una persona puede unirse (human_available: Education, Premium y Enterprise); en Standard y Plus se ignora y Luna responde. predeterminado: falso |
Plantilla y respuestas 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/support/conversations'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 201 | Resultado de soporte. | SupportSubmission (application/json) |
| 422 | El mensaje fue rechazado por filtrado: submission_too_short o submission_unclear (solo el mensaje inicial) o submission_rejected. El detalle nunca repite el texto. | 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) |
Listar mensajes de soporte
Mensajes en la conversación del proyecto, secuencia ascendente, máximo 100. Continúe después de la última secuencia de mensajes para paginación de conversaciones anteriores. La lectura no reconoce el estado de no leído del personal.
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 | |
| después | consulta | opcional | Secuencia de mensajes de soporte del proyecto; se reanuda estrictamente después de esta posición. |
Plantilla y respuestas de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/support/conversations/RESOURCE_ID/messages'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Resultado de soporte. | SupportMessageList (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) |
Responder conversación de soporte
Agrega un mensaje de cliente a una conversación abierta. Un seguimiento no tiene longitud mínima y nunca se rechaza por ser poco claro por sí solo ("gracias", "sí"); se revisa para seguridad, inyección de indicaciones y spam de enlaces, se rechaza con submission_rejected, y el texto con forma de credencial se maneja como para una nueva conversación.
El texto rechazado no se conserva, y una negativa se reproduce bajo la misma clave durante 24 horas.
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 |
|---|---|
| body (requerido, cadena) | minLength: 1 maxLength: 4000 |
| human_requested (opcional, booleano) | Pedir una persona, lo que pausa a Luna y espera al personal. Solo cuenta donde una persona puede unirse (human_available: Education, Premium y Enterprise); en Standard y Plus se ignora y Luna responde. predeterminado: falso |
Plantilla y respuestas 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/support/conversations/RESOURCE_ID/messages'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 201 | Resultado de soporte. | SupportSubmission (application/json) |
| 422 | El mensaje fue rechazado por filtrado: submission_too_short o submission_unclear (solo el mensaje inicial) o submission_rejected. El detalle nunca repite el texto. | 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) |
Leer conversación de soporte
Reconozca los mensajes monótonamente a través de la secuencia para este lector. No se puede reconocer más allá de la conversación last_sequence.
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 |
Campos del cuerpo de la solicitud
| Campo | Descripción |
|---|---|
| secuencia (requerida, entero) | mínimo: 0 |
Plantilla y respuestas 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/support/conversations/RESOURCE_ID/read'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Resultado de soporte. | SupportRead (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) |
Cerrar conversación de soporte
Finalizar esta conversación del proyecto y cancelar respuestas pendientes de IA. Repetible; conserva el historial. El personal puede reabrirla en Slack.
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 POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/support/conversations/RESOURCE_ID/close'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Conversación cerrada. | SupportConversation (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) |
Transmitir mensajes de soporte
Mensajes de soporte del proyecto en todos los planes como SSE reanudables. event es support.message; id es la secuencia de soporte del proyecto, data es SupportMessage. after tiene prioridad sobre Last-Event-ID. Cursor 0 reproduce el historial. Los mensajes de personal, cliente y IA se distinguen por rol. Los flujos revalidan credenciales y acceso activo al proyecto.
No se envían capturas de pantalla ni datos de credenciales.
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 | Secuencia de mensajes de soporte del proyecto; se reanuda estrictamente después de esta posición. |
| Last-Event-ID | encabezado | opcional |
Plantilla y respuestas de solicitud
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/stream/support'Respuestas
| Estado | Significado | Cuerpo y encabezados |
|---|---|---|
| 200 | Mensaje de soporte SSE. | cadena (text/event-stream) |
| 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) |