Riferimento API

API Consegna contenuti

Contenuti protetti e risorse di rilascio

Riferimento HTTP. Generato dal contratto backend. Esplora gli endpoint qui sotto o scarica OpenAPI.

Questo gruppo ha 8 operazioni, generate da api/openapi.yaml. Filtra per percorso, azione o autenticazione. Ogni endpoint elenca i suoi input; espandilo per vedere un modello di richiesta e i codici di risposta. I modelli richiedono i tuoi valori e un corpo valido secondo lo schema.

Sostituisci i segnaposto maiuscoli con i tuoi valori. Per una richiesta JSON, salva un corpo che corrisponde allo schema in request.json. Gli esempi di cookie usano un cookie jar locale da una sessione autenticata.

Contenuti protetti e risorse di rilascio

GET/screen/ad-decisions/{decision_id}

Ottieni contenuto decisione annuncio

Serve l’unico oggetto privato legato a una decisione emessa. L’autorità è l’identità live associata più il vincolo decisionale; il progetto acquirente e l’ID media sono risolti lato server, mai dal chiamante, e nessuna chiave oggetto o URL firmato è pubblicato. Una prova di lunghezza zero restituisce solo i metadati.

Autenticazione
runtimeCookie OR nativeSessionAuthorization
Corpo della richiesta
nessuno
ID operazione
getAdDecisionContent

Parametri

NomeInviaObbligatorio?Descrizione
decision_idpathobbligatorio
IntervallointestazioneopzionaleV1 accetta solo un intervallo di byte.
Modello richiesta e risposte
shell · modello richiesta
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/ad-decisions/DECISION_ID'

Risposte

StatoSignificatoCorpo e intestazioni
200Completa media privati vincolati a decisione.nessun corpo; intestazioni: Accept-Ranges, Content-Length, ETag
206Un intervallo di byte conforme agli standard.nessun corpo; intestazioni: Accept-Ranges, Content-Range, Content-Length, ETag
404not_found - decisione sconosciuta.RuntimeProblem (application/problem+json)
410decisione scaduta o altrimenti non eseguibile.RuntimeProblem (application/problem+json)
416invalid_range.RuntimeProblem (application/problem+json); intestazioni: Content-Range, Accept-Ranges
predefinito

Risposta problema stabile RFC 9457 su runtime, contenuto o percorso probe rivolto al Player, nella forma documento runtime (RuntimeProblem). Un 421 server_draining ha Retry-After di 1 secondo, un 500 not_ready o dependency_unavailable ha 5, e un 500 manifest_degraded ha 60, salvo valore più specifico impostato dal gestore.

RuntimeProblem (application/problem+json)
HEAD/screen/ad-decisions/{decision_id}

Head Ad Decision Content

Autorità e metadati identici alla GET senza corpo.

Autenticazione
runtimeCookie OR nativeSessionAuthorization
Corpo della richiesta
nessuno
ID operazione
headAdDecisionContent

Parametri

NomeInviaObbligatorio?Descrizione
decision_idpathobbligatorio
IntervallointestazioneopzionaleV1 accetta solo un intervallo di byte.
Modello richiesta e risposte
shell · modello richiesta
curl --request HEAD --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/ad-decisions/DECISION_ID'

Risposte

StatoSignificatoCorpo e intestazioni
200Solo metadati.nessun corpo; intestazioni: Accept-Ranges, Content-Length, ETag
predefinito

Risposta problema stabile RFC 9457 su runtime, contenuto o percorso probe rivolto al Player, nella forma documento runtime (RuntimeProblem). Un 421 server_draining ha Retry-After di 1 secondo, un 500 not_ready o dependency_unavailable ha 5, e un 500 manifest_degraded ha 60, salvo valore più specifico impostato dal gestore.

RuntimeProblem (application/problem+json)
GET/media/{media_id}

Ottieni contenuti multimediali protetti stabili

URL media immutabile stabile condiviso tra revisioni playlist. La sessione runtime identifica lo schermo e il progetto per autorizzazione e contabilizzazione banda.

Ogni richiesta richiede appartenenza al grant di transizione-grace desiderato, attivo o non scaduto di quello schermo nella sua generazione di accesso contenuti corrente, o un riferimento media:<id> nel documento corrente di una chiave dati scheda che un tale grant elenca. Solo gli ID non concedono accesso. ETag è il sha256 quotato dei byte.

Il cookie del browser e l’autenticazione della sessione nativa restano sull’origine attendibile del Player; non si usano reindirizzamenti né accesso pubblico a oggetti di storage.

Autenticazione
runtimeCookie OR nativeSessionAuthorization
Corpo della richiesta
nessuno
ID operazione
getStableProtectedMedia

Parametri

NomeInviaObbligatorio?Descrizione
media_idpathobbligatorio
IntervallointestazioneopzionaleV1 accetta solo un intervallo di byte.
Sec-Fetch-Siteintestazioneopzionale
Sec-Fetch-Modeintestazioneopzionale
Sec-Fetch-Destintestazioneopzionale
Modello richiesta e risposte
shell · modello richiesta
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/media/MEDIA_ID'

Risposte

StatoSignificatoCorpo e intestazioni
200Media privati completi autorizzati dalla sessione. Browser Fetch Metadata deve descrivere l’uso di media/immagini/video same-origin da lettore affidabile; i client nativi autenticati possono ometterlo.nessun corpo; intestazioni: Accept-Ranges, Content-Length, ETag, Content-Disposition
206Un intervallo di byte conforme agli standard.nessun corpo; intestazioni: Accept-Ranges, Content-Range, Content-Length, ETag
416Intervallo insoddisfacibile, multiplo o malformato.RuntimeProblem (application/problem+json); intestazioni: Content-Range, Accept-Ranges
429Superato il limite di egress dei media protetti per client, schermo o organizzazione.RuntimeProblem (application/problem+json); intestazioni: Retry-After
predefinito

Risposta problema stabile RFC 9457 su runtime, contenuto o percorso probe rivolto al Player, nella forma documento runtime (RuntimeProblem). Un 421 server_draining ha Retry-After di 1 secondo, un 500 not_ready o dependency_unavailable ha 5, e un 500 manifest_degraded ha 60, salvo valore più specifico impostato dal gestore.

RuntimeProblem (application/problem+json)
HEAD/media/{media_id}

Media protetto stabile principale

Metadati immutabili dei media autorizzati dalla sessione con gli stessi controlli di concessione di GET e senza corpo di risposta.

Autenticazione
runtimeCookie OR nativeSessionAuthorization
Corpo della richiesta
nessuno
ID operazione
headStableProtectedMedia

Parametri

NomeInviaObbligatorio?Descrizione
media_idpathobbligatorio
IntervallointestazioneopzionaleV1 accetta solo un intervallo di byte.
Sec-Fetch-Siteintestazioneopzionale
Sec-Fetch-Modeintestazioneopzionale
Sec-Fetch-Destintestazioneopzionale
Modello richiesta e risposte
shell · modello richiesta
curl --request HEAD --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/media/MEDIA_ID'

Risposte

StatoSignificatoCorpo e intestazioni
200Media privati completi autorizzati dalla sessione. Browser Fetch Metadata deve descrivere l’uso di media/immagini/video same-origin da lettore affidabile; i client nativi autenticati possono ometterlo.nessun corpo; intestazioni: Accept-Ranges, Content-Length, ETag, Content-Disposition
206Un intervallo di byte conforme agli standard.nessun corpo; intestazioni: Accept-Ranges, Content-Range, Content-Length, ETag
416Intervallo insoddisfacibile, multiplo o malformato.RuntimeProblem (application/problem+json); intestazioni: Content-Range, Accept-Ranges
429Superato il limite di egress dei media protetti per client, schermo o organizzazione.RuntimeProblem (application/problem+json); intestazioni: Retry-After
predefinito

Risposta problema stabile RFC 9457 su runtime, contenuto o percorso probe rivolto al Player, nella forma documento runtime (RuntimeProblem). Un 421 server_draining ha Retry-After di 1 secondo, un 500 not_ready o dependency_unavailable ha 5, e un 500 manifest_degraded ha 60, salvo valore più specifico impostato dal gestore.

RuntimeProblem (application/problem+json)
GET/media/manifests/{manifest_revision}/{media_id}

Ottieni contenuti multimediali protetti

Autenticazione
runtimeCookie OR nativeSessionAuthorization
Corpo della richiesta
nessuno
ID operazione
getProtectedMedia

Parametri

NomeInviaObbligatorio?Descrizione
manifest_revisionpathobbligatorio
media_idpathobbligatorio
IntervallointestazioneopzionaleV1 accetta solo un intervallo di byte.
Sec-Fetch-Siteintestazioneopzionale
Sec-Fetch-Modeintestazioneopzionale
Sec-Fetch-Destintestazioneopzionale
Modello richiesta e risposte
shell · modello richiesta
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/media/manifests/MANIFEST_REVISION/MEDIA_ID'

Risposte

StatoSignificatoCorpo e intestazioni
200Media privati completi autorizzati dalla sessione. Browser Fetch Metadata deve descrivere l’uso di media/immagini/video same-origin da lettore affidabile; i client nativi autenticati possono ometterlo.nessun corpo; intestazioni: Accept-Ranges, Content-Length, ETag, Content-Disposition
206Un intervallo di byte conforme agli standard.nessun corpo; intestazioni: Accept-Ranges, Content-Range, Content-Length, ETag
416Intervallo insoddisfacibile, multiplo o malformato.RuntimeProblem (application/problem+json); intestazioni: Content-Range, Accept-Ranges
429Superato il limite di egress dei media protetti per client, schermo o organizzazione.RuntimeProblem (application/problem+json); intestazioni: Retry-After
predefinito

Risposta problema stabile RFC 9457 su runtime, contenuto o percorso probe rivolto al Player, nella forma documento runtime (RuntimeProblem). Un 421 server_draining ha Retry-After di 1 secondo, un 500 not_ready o dependency_unavailable ha 5, e un 500 manifest_degraded ha 60, salvo valore più specifico impostato dal gestore.

RuntimeProblem (application/problem+json)
GET/screen/manifests/{manifest_revision}/releases/{release_id}/package

Ottieni pacchetto app web nativo

Recupera il pacchetto immutabile normalizzato per una release applicativa caricata, così un lettore nativo associato può mantenere la sua ultima release autorizzata nota buona attraverso il riavvio del processo e la perdita temporanea di rete.

Il cookie dispositivo associato, la concessione esatta dello schermo, la revisione del manifesto, la generazione di accesso ai contenuti, l’appartenenza alla release e i metadati del pacchetto pronto sono controllati a ogni richiesta. Token progetto, cookie runtime anonimi, cookie release, primitive iframe esterne e accesso diretto all’object-storage non autorizzano mai i byte del pacchetto.

Autenticazione
pairedDeviceCookie O nativeSessionAuthorization
Corpo della richiesta
nessuno
ID operazione
getNativeWebappPackage

Parametri

NomeInviaObbligatorio?Descrizione
manifest_revisionpathobbligatorio
release_idpathobbligatorio
IntervallointestazioneopzionaleV1 accetta solo un intervallo di byte.
Sec-Fetch-Siteintestazioneopzionale
Sec-Fetch-Modeintestazioneopzionale
Sec-Fetch-Destintestazioneopzionale
Modello richiesta e risposte
shell · modello richiesta
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/manifests/MANIFEST_REVISION/releases/RELEASE_ID/package'

Risposte

StatoSignificatoCorpo e intestazioni
200Pacchetto privato normalizzato completo.nessun corpo; intestazioni: Accept-Ranges, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
206Un intervallo di byte conforme agli standard dallo stesso pacchetto immutabile.nessun corpo; intestazioni: Accept-Ranges, Content-Range, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
416Intervallo insoddisfacibile, multiplo o malformato.RuntimeProblem (application/problem+json); intestazioni: Content-Range, Accept-Ranges
429

Problema rate_limited stabile su runtime o percorso contenuto rivolto al Player, nella forma documento runtime (RuntimeProblem). Ritenta solo dopo l'intervallo Retry-After autorevole. I dinieghi a finestra fissa includono anche RateLimit-Policy e membri RateLimit applicabili; i dinieghi per concorrenza e budget byte omettono tali divulgazioni opzionali.

RuntimeProblem (application/problem+json); intestazioni: Retry-After, RateLimit-Policy, RateLimit
predefinito

Risposta problema stabile RFC 9457 su runtime, contenuto o percorso probe rivolto al Player, nella forma documento runtime (RuntimeProblem). Un 421 server_draining ha Retry-After di 1 secondo, un 500 not_ready o dependency_unavailable ha 5, e un 500 manifest_degraded ha 60, salvo valore più specifico impostato dal gestore.

RuntimeProblem (application/problem+json)
HEAD/screen/manifests/{manifest_revision}/releases/{release_id}/package

Pacchetto app web nativo principale

Restituisce le stesse intestazioni di autorizzazione e identità immutabile di GET senza i byte del pacchetto.

Autenticazione
pairedDeviceCookie O nativeSessionAuthorization
Corpo della richiesta
nessuno
ID operazione
headNativeWebappPackage

Parametri

NomeInviaObbligatorio?Descrizione
manifest_revisionpathobbligatorio
release_idpathobbligatorio
IntervallointestazioneopzionaleV1 accetta solo un intervallo di byte.
Sec-Fetch-Siteintestazioneopzionale
Sec-Fetch-Modeintestazioneopzionale
Sec-Fetch-Destintestazioneopzionale
Modello richiesta e risposte
shell · modello richiesta
curl --request HEAD --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/manifests/MANIFEST_REVISION/releases/RELEASE_ID/package'

Risposte

StatoSignificatoCorpo e intestazioni
200Metadati normalizzati autorizzati del pacchetto.nessun corpo; intestazioni: Accept-Ranges, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
206Metadati autorizzati per un intervallo di byte.nessun corpo; intestazioni: Accept-Ranges, Content-Range, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
416Intervallo insoddisfacibile, multiplo o malformato.nessun corpo; intestazioni: Content-Range, Accept-Ranges
429

Problema rate_limited stabile su runtime o percorso contenuto rivolto al Player, nella forma documento runtime (RuntimeProblem). Ritenta solo dopo l'intervallo Retry-After autorevole. I dinieghi a finestra fissa includono anche RateLimit-Policy e membri RateLimit applicabili; i dinieghi per concorrenza e budget byte omettono tali divulgazioni opzionali.

RuntimeProblem (application/problem+json); intestazioni: Retry-After, RateLimit-Policy, RateLimit
predefinito

Risposta problema stabile RFC 9457 su runtime, contenuto o percorso probe rivolto al Player, nella forma documento runtime (RuntimeProblem). Un 421 server_draining ha Retry-After di 1 secondo, un 500 not_ready o dependency_unavailable ha 5, e un 500 manifest_degraded ha 60, salvo valore più specifico impostato dal gestore.

RuntimeProblem (application/problem+json)
GET/{asset_path}

Consuma Launch Ticket o ottieni asset di rilascio

Operazione host di rilascio esatta. Con una query ticket, consuma atomica il ticket monouso di 30 secondi, associa Host/release/screen/content-generation/manifest/grant, imposta solo il cookie release-grant esatto dell’host e reindirizza allo stesso percorso senza il ticket. Senza ticket, convalida quel cookie a ogni GET/HEAD.

Il parametro asset_path è greedy (x-screenrig-greedy-path) e viene risolto solo sotto la root del rilascio pronto. I cookie runtime/progetto/dispositivo e i token bearer progetto non autorizzano mai questa operazione.

Autenticazione
releaseLaunchTicket O releaseGrantCookie
Corpo della richiesta
nessuno
ID operazione
consumeLaunchTicketOrGetReleaseAsset

Parametri

NomeInviaObbligatorio?Descrizione
asset_pathpathobbligatorio
Sec-Fetch-Siteintestazioneopzionale
Sec-Fetch-Modeintestazioneopzionale
Sec-Fetch-Destintestazioneopzionale
Modello richiesta e risposte
shell · modello richiesta
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://r-{release_host_label}.apps.screenrig.ai/index.html'

Risposte

StatoSignificatoCorpo e intestazioni
200Asset immutabile autorizzato da concessione host esatto.nessun corpo; intestazioni: Referrer-Policy, X-Content-Type-Options, ETag
302Ticket consumato una volta; cookie di concessione di rilascio emesso; ticket rimosso dalla posizione.nessun corpo; intestazioni: Location, Set-Cookie, Cache-Control, Referrer-Policy
403Host/release errato /screen/generation/grant, ticket obsoleto/riutilizzato, cookie non valido, Fetch Metadata contraddittorio o metodo non consentito.Problema (application/problem+json)
404Risorsa assente senza esporre la struttura del filesystem di rilascio.Problema (application/problem+json)