Référence API

API Livraison de contenu

Contenu protégé et actifs de publication

Référence HTTP. Générée à partir du contrat backend. Parcourez les points de terminaison ci-dessous ou téléchargez OpenAPI.

Ce groupe compte 8 opérations, générées à partir de api/openapi.yaml. Filtrez par chemin, action ou authentification. Chaque point de terminaison liste ses entrées ; développez-le pour voir un modèle de requête et les codes de réponse. Les modèles demandent vos propres valeurs et un corps conforme au schéma.

Remplacez les espaces réservés en majuscules par vos valeurs. Pour une requête JSON, enregistrez un corps correspondant au schéma dans request.json. Les exemples de cookies utilisent un pot à cookies local issu d’une session authentifiée.

Contenu protégé et actifs de publication

GET/screen/ad-decisions/{decision_id}

Obtenir le contenu de décision publicitaire

Fournit l’objet privé unique lié à une décision émise. L’autorité est l’identité jumelée en direct plus la liaison de décision ; le projet acheteur et l’ID média sont résolus côté serveur, jamais depuis l’appelant, et aucune clé d’objet ni URL signée n’est publiée. Une sonde de longueur zéro retourne uniquement les métadonnées.

Authentification
runtimeCookie OU nativeSessionAuthorization
Corps de la requête
aucun
ID d’opération
getAdDecisionContent

Paramètres

NomEnvoyerRequis ?Description
decision_idcheminobligatoire
Plageen-têteoptionnelV1 accepte une seule plage d’octets.
Modèle de requête et réponses
shell · modèle de requête
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/ad-decisions/DECISION_ID'

Réponses

StatutSensCorps et en-têtes
200Compléter les médias privés liés à la décision.pas de corps; en-têtes : Accept-Ranges, Content-Length, ETag
206Une plage d’octets conforme aux normes.pas de corps; en-têtes : Accept-Ranges, Content-Range, Content-Length, ETag
404not_found - décision inconnue.Problème Runtime (application/problem+json)
410décision expirée ou autrement non exécutable.Problème Runtime (application/problem+json)
416invalid_range.Problème Runtime (application/problem+json) ; en-têtes : Content-Range, Accept-Ranges
par défaut

Réponse stable RFC 9457 à un problème sur un runtime, contenu ou route de sonde face au lecteur, dans la forme du document runtime (RuntimeProblem). Un 421 server_draining porte un Retry-After de 1 seconde, un 500 not_ready ou dependency_unavailable porte 5, et un 500 manifest_degraded porte 60, sauf si le gestionnaire a défini une valeur plus spécifique.

Problème Runtime (application/problem+json)
HEAD/screen/ad-decisions/{decision_id}

Contenu décisionnel publicitaire principal

Autorité et métadonnées identiques au GET sans corps.

Authentification
runtimeCookie OU nativeSessionAuthorization
Corps de la requête
aucun
ID d’opération
headAdDecisionContent

Paramètres

NomEnvoyerRequis ?Description
decision_idcheminobligatoire
Plageen-têteoptionnelV1 accepte une seule plage d’octets.
Modèle de requête et réponses
shell · modèle de requête
curl --request HEAD --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/ad-decisions/DECISION_ID'

Réponses

StatutSensCorps et en-têtes
200Métadonnées uniquement.pas de corps; en-têtes : Accept-Ranges, Content-Length, ETag
par défaut

Réponse stable RFC 9457 à un problème sur un runtime, contenu ou route de sonde face au lecteur, dans la forme du document runtime (RuntimeProblem). Un 421 server_draining porte un Retry-After de 1 seconde, un 500 not_ready ou dependency_unavailable porte 5, et un 500 manifest_degraded porte 60, sauf si le gestionnaire a défini une valeur plus spécifique.

Problème Runtime (application/problem+json)
GET/media/{media_id}

Obtenir les médias protégés stables

URL média immuable stable partagée entre les révisions de liste de lecture. La session runtime identifie l’écran et le projet pour l’autorisation et la comptabilisation de la bande passante.

Chaque requête nécessite l’appartenance à la subvention de grâce de transition désirée, active ou non expirée de cet écran dans sa génération d’accès au contenu actuelle, ou une référence media:<id> dans le document actuel d’une clé de carte qu’une telle subvention liste. Les seuls ID ne donnent aucun accès. ETag est le sha256 cité des octets.

Le cookie du navigateur et l’authentification de session native restent sur l’origine Player de confiance ; les redirections et l’accès public au stockage d’objets ne sont pas utilisés.

Authentification
runtimeCookie OU nativeSessionAuthorization
Corps de la requête
aucun
ID d’opération
getStableProtectedMedia

Paramètres

NomEnvoyerRequis ?Description
media_idcheminobligatoire
Plageen-têteoptionnelV1 accepte une seule plage d’octets.
Sec-Fetch-Siteen-têteoptionnel
Sec-Fetch-Modeen-têteoptionnel
Sec-Fetch-Desten-têteoptionnel
Modèle de requête et réponses
shell · modèle de requête
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/media/MEDIA_ID'

Réponses

StatutSensCorps et en-têtes
200Médias privés complets autorisés par la session. Les métadonnées Fetch du navigateur doivent décrire l’utilisation média/image/vidéo same-origin par un lecteur de confiance ; les clients natifs authentifiés peuvent l’omettre.pas de corps; en-têtes : Accept-Ranges, Content-Length, ETag, Content-Disposition
206Une plage d’octets conforme aux normes.pas de corps; en-têtes : Accept-Ranges, Content-Range, Content-Length, ETag
416Plage insatisfaisable, multiple ou mal formée.Problème Runtime (application/problem+json) ; en-têtes : Content-Range, Accept-Ranges
429Limite de sortie des médias protégés dépassée, par client, par écran ou par organisation.Problème Runtime (application/problem+json) ; en-têtes : Retry-After
par défaut

Réponse stable RFC 9457 à un problème sur un runtime, contenu ou route de sonde face au lecteur, dans la forme du document runtime (RuntimeProblem). Un 421 server_draining porte un Retry-After de 1 seconde, un 500 not_ready ou dependency_unavailable porte 5, et un 500 manifest_degraded porte 60, sauf si le gestionnaire a défini une valeur plus spécifique.

Problème Runtime (application/problem+json)
HEAD/media/{media_id}

Médias protégés stables principaux

Métadonnées immuables des médias autorisées par la session avec les mêmes vérifications d’autorisation que GET et sans corps de réponse.

Authentification
runtimeCookie OU nativeSessionAuthorization
Corps de la requête
aucun
ID d’opération
headStableProtectedMedia

Paramètres

NomEnvoyerRequis ?Description
media_idcheminobligatoire
Plageen-têteoptionnelV1 accepte une seule plage d’octets.
Sec-Fetch-Siteen-têteoptionnel
Sec-Fetch-Modeen-têteoptionnel
Sec-Fetch-Desten-têteoptionnel
Modèle de requête et réponses
shell · modèle de requête
curl --request HEAD --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/media/MEDIA_ID'

Réponses

StatutSensCorps et en-têtes
200Médias privés complets autorisés par la session. Les métadonnées Fetch du navigateur doivent décrire l’utilisation média/image/vidéo same-origin par un lecteur de confiance ; les clients natifs authentifiés peuvent l’omettre.pas de corps; en-têtes : Accept-Ranges, Content-Length, ETag, Content-Disposition
206Une plage d’octets conforme aux normes.pas de corps; en-têtes : Accept-Ranges, Content-Range, Content-Length, ETag
416Plage insatisfaisable, multiple ou mal formée.Problème Runtime (application/problem+json) ; en-têtes : Content-Range, Accept-Ranges
429Limite de sortie des médias protégés dépassée, par client, par écran ou par organisation.Problème Runtime (application/problem+json) ; en-têtes : Retry-After
par défaut

Réponse stable RFC 9457 à un problème sur un runtime, contenu ou route de sonde face au lecteur, dans la forme du document runtime (RuntimeProblem). Un 421 server_draining porte un Retry-After de 1 seconde, un 500 not_ready ou dependency_unavailable porte 5, et un 500 manifest_degraded porte 60, sauf si le gestionnaire a défini une valeur plus spécifique.

Problème Runtime (application/problem+json)
GET/media/manifests/{manifest_revision}/{media_id}

Obtenir les médias protégés

Authentification
runtimeCookie OU nativeSessionAuthorization
Corps de la requête
aucun
ID d’opération
getProtectedMedia

Paramètres

NomEnvoyerRequis ?Description
manifest_revisioncheminobligatoire
media_idcheminobligatoire
Plageen-têteoptionnelV1 accepte une seule plage d’octets.
Sec-Fetch-Siteen-têteoptionnel
Sec-Fetch-Modeen-têteoptionnel
Sec-Fetch-Desten-têteoptionnel
Modèle de requête et réponses
shell · modèle de requête
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/media/manifests/MANIFEST_REVISION/MEDIA_ID'

Réponses

StatutSensCorps et en-têtes
200Médias privés complets autorisés par la session. Les métadonnées Fetch du navigateur doivent décrire l’utilisation média/image/vidéo same-origin par un lecteur de confiance ; les clients natifs authentifiés peuvent l’omettre.pas de corps; en-têtes : Accept-Ranges, Content-Length, ETag, Content-Disposition
206Une plage d’octets conforme aux normes.pas de corps; en-têtes : Accept-Ranges, Content-Range, Content-Length, ETag
416Plage insatisfaisable, multiple ou mal formée.Problème Runtime (application/problem+json) ; en-têtes : Content-Range, Accept-Ranges
429Limite de sortie des médias protégés dépassée, par client, par écran ou par organisation.Problème Runtime (application/problem+json) ; en-têtes : Retry-After
par défaut

Réponse stable RFC 9457 à un problème sur un runtime, contenu ou route de sonde face au lecteur, dans la forme du document runtime (RuntimeProblem). Un 421 server_draining porte un Retry-After de 1 seconde, un 500 not_ready ou dependency_unavailable porte 5, et un 500 manifest_degraded porte 60, sauf si le gestionnaire a défini une valeur plus spécifique.

Problème Runtime (application/problem+json)
GET/screen/manifests/{manifest_revision}/releases/{release_id}/package

Obtenir le paquet d’app Web natif

Récupère le paquet immuable normalisé pour une version d’application téléversée afin qu’un lecteur natif jumelé puisse conserver sa dernière version autorisée connue malgré un redémarrage du processus et une perte temporaire de réseau.

Le cookie de l’appareil jumelé, l’octroi d’écran exact, la révision du manifeste, la génération d’accès au contenu, l’adhésion à la version et les métadonnées du paquet prêt sont vérifiés à chaque requête. Les jetons de projet, les cookies d’exécution anonymes, les cookies de version, les primitives iframe externes et l’accès direct au stockage d’objets n’autorisent jamais les octets de paquet.

Authentification
pairedDeviceCookie OU nativeSessionAuthorization
Corps de la requête
aucun
ID d’opération
getNativeWebappPackage

Paramètres

NomEnvoyerRequis ?Description
manifest_revisioncheminobligatoire
release_idcheminobligatoire
Plageen-têteoptionnelV1 accepte une seule plage d’octets.
Sec-Fetch-Siteen-têteoptionnel
Sec-Fetch-Modeen-têteoptionnel
Sec-Fetch-Desten-têteoptionnel
Modèle de requête et réponses
shell · modèle de requête
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/manifests/MANIFEST_REVISION/releases/RELEASE_ID/package'

Réponses

StatutSensCorps et en-têtes
200Package privé normalisé complet.pas de corps; en-têtes : Accept-Ranges, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
206Une plage d’octets conforme aux normes issue du même paquet immuable.pas de corps; en-têtes : Accept-Ranges, Content-Range, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
416Plage insatisfaisable, multiple ou mal formée.Problème Runtime (application/problem+json) ; en-têtes : Content-Range, Accept-Ranges
429

Problème stable rate_limited sur un runtime ou une route de contenu face au lecteur, dans la forme du document runtime (RuntimeProblem). Réessayez seulement après l’intervalle Retry-After autoritaire. Les refus à fenêtre fixe incluent aussi la politique RateLimit-Policy applicable et les membres RateLimit ; les refus de concurrence et de budget d’octets omettent ces divulgations optionnelles.

Problème Runtime (application/problem+json) ; en-têtes : Retry-After, RateLimit-Policy, RateLimit
par défaut

Réponse stable RFC 9457 à un problème sur un runtime, contenu ou route de sonde face au lecteur, dans la forme du document runtime (RuntimeProblem). Un 421 server_draining porte un Retry-After de 1 seconde, un 500 not_ready ou dependency_unavailable porte 5, et un 500 manifest_degraded porte 60, sauf si le gestionnaire a défini une valeur plus spécifique.

Problème Runtime (application/problem+json)
HEAD/screen/manifests/{manifest_revision}/releases/{release_id}/package

Package d’application Web native principal

Retourne les mêmes en-têtes d’autorisation et d’identité immuable que GET sans les octets du paquet.

Authentification
pairedDeviceCookie OU nativeSessionAuthorization
Corps de la requête
aucun
ID d’opération
headNativeWebappPackage

Paramètres

NomEnvoyerRequis ?Description
manifest_revisioncheminobligatoire
release_idcheminobligatoire
Plageen-têteoptionnelV1 accepte une seule plage d’octets.
Sec-Fetch-Siteen-têteoptionnel
Sec-Fetch-Modeen-têteoptionnel
Sec-Fetch-Desten-têteoptionnel
Modèle de requête et réponses
shell · modèle de requête
curl --request HEAD --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/screen/manifests/MANIFEST_REVISION/releases/RELEASE_ID/package'

Réponses

StatutSensCorps et en-têtes
200Métadonnées normalisées autorisées du paquet.pas de corps; en-têtes : Accept-Ranges, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
206Métadonnées autorisées pour une plage d’octets.pas de corps; en-têtes : Accept-Ranges, Content-Range, Content-Length, Content-Type, Content-Disposition, Cache-Control, ETag, Referrer-Policy, Cross-Origin-Resource-Policy, X-Content-Type-Options, Vary
416Plage insatisfaisable, multiple ou mal formée.pas de corps; en-têtes : Content-Range, Accept-Ranges
429

Problème stable rate_limited sur un runtime ou une route de contenu face au lecteur, dans la forme du document runtime (RuntimeProblem). Réessayez seulement après l’intervalle Retry-After autoritaire. Les refus à fenêtre fixe incluent aussi la politique RateLimit-Policy applicable et les membres RateLimit ; les refus de concurrence et de budget d’octets omettent ces divulgations optionnelles.

Problème Runtime (application/problem+json) ; en-têtes : Retry-After, RateLimit-Policy, RateLimit
par défaut

Réponse stable RFC 9457 à un problème sur un runtime, contenu ou route de sonde face au lecteur, dans la forme du document runtime (RuntimeProblem). Un 421 server_draining porte un Retry-After de 1 seconde, un 500 not_ready ou dependency_unavailable porte 5, et un 500 manifest_degraded porte 60, sauf si le gestionnaire a défini une valeur plus spécifique.

Problème Runtime (application/problem+json)
GET/{asset_path}

Utiliser le ticket de lancement ou obtenir l’élément de publication

Opération d’hôte de publication exacte. Avec une requête de ticket, consomme atomiquement le ticket à usage unique de 30 secondes, lie Host/release/screen/content-generation/manifest/grant, définit uniquement le cookie de subvention de publication d’hôte exact, et redirige vers le même chemin sans le ticket. Sans ticket, valide ce cookie à chaque GET/HEAD.

Le paramètre asset_path est gourmand (x-screenrig-greedy-path) et est résolu uniquement sous la racine de la version prête. Les cookies runtime/projet/appareil et les jetons porteurs de projet n’autorisent jamais cette opération.

Authentification
releaseLaunchTicket OU releaseGrantCookie
Corps de la requête
aucun
ID d’opération
consumeLaunchTicketOrGetReleaseAsset

Paramètres

NomEnvoyerRequis ?Description
asset_pathcheminobligatoire
Sec-Fetch-Siteen-têteoptionnel
Sec-Fetch-Modeen-têteoptionnel
Sec-Fetch-Desten-têteoptionnel
Modèle de requête et réponses
shell · modèle de requête
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://r-{release_host_label}.apps.screenrig.ai/index.html'

Réponses

StatutSensCorps et en-têtes
200Actif immuable autorisé par la subvention d’hôte exacte.pas de corps; en-têtes : Referrer-Policy, X-Content-Type-Options, ETag
302Billet consommé une fois ; cookie de libération délivré ; billet retiré de l’emplacement.pas de corps; en-têtes : Location, Set-Cookie, Cache-Control, Referrer-Policy
403Hôte/version incorrecte /screen/generation/grant, ticket périmé/rejoué, cookie invalide, métadonnées Fetch contradictoires ou méthode interdite.Problème (application/problem+json)
404Actif absent sans exposer la forme du système de fichiers de publication.Problème (application/problem+json)