Documentation

Rapports : commandes CLI

Générez des rapports planifiés par courriel, lisez et vérifiez le journal d’audit, et interrogez les preuves de lecture : totaux, exhaustivité.

Chaque commande s’exécute comme décrit dans la référence CLI : drapeaux globaux, sortie JSON, codes de sortie, révisions et réessais.

Rapports

reports show KIND génère un rapport (fleet_health, uptime, publishing, alerts, alert_log ou proof_of_play) et, avec --format csv, xlsx ou pdf et --output FILE, l'écrit dans un fichier; reports subscriptions envoie un rapport par courriel aux membres du projet selon un horaire; project export DIR écrit les données du projet avec le résultat de chaque section. Rapports et exportations décrit chacun d'eux.

reports list#

Lister les types de rapport et les filtres de chacun.

reports list

Aucun paramètre.

screenrig reports list

Renvoie data.items, chacun avec le kind, le title, la description du rapport et les filtres qu’il accepte (params), ainsi que les formats de fichier.

reports show#

Générer un rapport sous forme de lignes, ou l’écrire dans un fichier CSV, XLSX ou PDF.

reports show <kind> [--from YYYY-MM-DD] [--to YYYY-MM-DD] [--group-by folder|screen|tag]
    [--folder-id ID [--direct]] [--tag TAG] [--campaign-id ID] [--advertiser NAME]
    [--format json|csv|xlsx|pdf] [--output FILE]
ParamètreTypeRequisPar défautNotes
<kind>stringouiaucunfleet_health, uptime, publishing, alerts, alert_log ou proof_of_play.
--fromstringnon29 jours avant --toPremier jour UTC, inclus, au format YYYY-MM-DD.
--tostringnonaujourd’huiDernier jour UTC, inclus ; au plus 366 jours après --from.
--group-bystringnonfolderCe qu’est une ligne : folder, screen ou tag.
--folder-idstringnonaucunSeulement ce dossier d'écrans et tout ce qu'il contient.
--directbooleannondésactivéAvec --folder-id : seulement les écrans directement dans le dossier (--group-by screen), ou le dossier et ses sous-dossiers.
--tagstringnonaucunSeulement les écrans portant cette étiquette.
--campaign-idstringnonaucunproof_of_play : une campagne directe.
--advertiserstringnonaucunproof_of_play : les campagnes de cet annonceur ou commanditaire, par nom exact, quelle que soit la casse.
--formatstringnonjsonjson, csv, xlsx ou pdf.
--outputcheminnon./KIND.FORMATFichier à écrire avec --format csv, xlsx ou pdf. Par défaut, le type est écrit avec des tirets, comme ./fleet-health.pdf, et le jour de --to est ajouté s’il est fourni, comme ./fleet-health-2026-10-28.pdf.
screenrig reports show fleet_health --group-by screen --from 2026-10-01 --to 2026-10-28
screenrig reports show proof_of_play --advertiser "Acme Corp" --format pdf --output acme-proof-of-play.pdf

Le JSON renvoie data.columns, data.rows, data.totals et data.notes ; les lignes d’un rapport par dossier portent id, parent_id et depth pour le plan, et sa première ligne est le projet entier. Un fichier répond avec son chemin, ses octets et son SHA-256. Un rapport paginé est écrit en entier, jusqu’à 50000 lignes (data.truncated sinon). proof_of_play exige un projet qui vend du temps publicitaire sur ses propres écrans. L’accès Lecture seule avec la capacité reports suffit.

reports subscriptions#

Envoyer un rapport par courriel aux membres du projet selon un horaire.

reports subscriptions list
reports subscriptions show <id>
reports subscriptions create --name NAME --kind KIND --format pdf|xlsx|csv
    --recipients MEMBERS --cadence daily|weekly|monthly [--weekday DAY]
    [--day-of-month N] [--hour N] [--timezone ZONE] [--filter NAME=VALUE]
reports subscriptions update <id> [--name NAME] [--format pdf|xlsx|csv]
    [--recipients MEMBERS] [--filter NAME=VALUE] [--cadence daily|weekly|monthly]
    [--weekday DAY] [--day-of-month N] [--hour N] [--timezone ZONE]
    [--pause | --resume] [--expect-rev REVISION]
reports subscriptions delete <id>
reports subscriptions send <id>
ParamètreTypeRequisPar défautNotes
<id>stringouiaucunL’ID rsub_ d’un abonnement, tiré de reports subscriptions list.
--namestringà la créationaucunAu maximum 100 caractères.
--kindstringà la créationaucunUn type de reports show : fleet_health, uptime, publishing, alerts, alert_log ou proof_of_play. Il ne change jamais.
--formatstringà la créationaucunLa pièce jointe : pdf, xlsx ou csv.
--recipientsstringà la créationaucunJusqu’à 25 membres du projet, séparés par des virgules : un ID d’utilisateur, l’adresse courriel d’un membre ou owner. update remplace les destinataires.
--filterstringnonaucunUn filtre de rapport sous la forme NAME=VALUE, comme group_by=screen, folder_id=sfd_ID, tag=Lobby ou advertiser=Acme ; répétable. update remplace les filtres.
--cadencestringà la créationaucundaily, weekly ou monthly.
--weekdaystringnonmondayExécutions hebdomadaires : de monday à sunday.
--day-of-monthintegernon1Exécutions mensuelles : le jour, de 1 à 28.
--hourintegernon0Heure de la journée dans le fuseau horaire, de 0 à 23.
--timezonestringnonUTCUn fuseau horaire IANA, comme America/Los_Angeles.
--pausebooleannondésactivéupdate seulement : n’envoie rien jusqu’à la reprise. Incompatible avec --resume.
--resumebooleannondésactivéupdate seulement : reprend l’envoi à partir de la prochaine occurrence.
--expect-revintegernonaucunupdate seulement : échoue si l’abonnement n’est pas à cette révision.
screenrig reports subscriptions create --name "Monday fleet health" --kind fleet_health --cadence weekly --weekday monday --hour 7 --timezone America/Los_Angeles --format pdf --recipients ann@example.com,usr_01EXAMPLEPERSON0000
screenrig reports subscriptions update rsub_01EXAMPLESUB0000000000 --pause

Chaque exécution couvre la période qui la précède en jours UTC : hier, les sept jours précédents ou le mois dernier. Les destinataires doivent être des membres du projet, et un membre qui part cesse de recevoir le rapport. update exige au moins un changement. send envoie le rapport par courriel maintenant pour la période qu’une exécution couvrirait maintenant, sans déplacer l’horaire, et répond avec l’abonnement, y compris last_status et last_error de cet envoi. Une exécution échouée est retentée et apparaît comme last_status failed avec last_error ; une pièce jointe PDF ou XLSX de plus de 8 Mio n’est pas envoyée. Une organisation compte au plus 50 abonnements dans l’ensemble de ses projets. La lecture exige la capacité project et l’accès Lecture seule ; la création, la modification, la suppression et l’envoi exigent l’accès Gérer.

Journal d’audit

audit list|show|head|verify|export lit le journal d’audit du projet : audit list recherche les modifications de configuration par acteur, source, ressource, action et champ, audit show affiche une entrée avec l’avant et l’après de chaque champ modifié, audit head affiche la tête de chaîne à conserver comme ancre, audit verify recalcule la chaîne (au besoin par rapport à une ancre) et se termine avec le code 13 lorsqu’elle n’est pas vérifiée, et audit export écrit le journal filtré dans un fichier CSV, XLSX ou PDF. Journal d’audit décrit chacune de ces commandes.

audit list#

Lister les entrées d’audit, les plus récentes d’abord.

audit list [--actor ID] [--actor-kind KIND] [--source SOURCE] [--resource-type TYPE]
    [--resource-id ID] [--action CODE] [--field POINTER] [--since TIME] [--until TIME]
    [--limit N] [--after CURSOR]
ParamètreTypeRequisPar défautNotes
--actorstringnonaucunSeulement les modifications faites par cette personne, cet agent ou ce client de service, selon son ID.
--actor-kindstringnonaucunperson, agent, service_client, staff ou system.
--sourcestringnonaucunLa surface par laquelle un changement est passé : dashboard, api, cli, device, webhook ou system.
--resource-typestringnonaucunSeulement les modifications de ce type de ressource, comme screen, playlist, webhook ou member.
--resource-idstringnonaucunSeulement les modifications de cette ressource.
--actionstringnonaucunUn code d’action comme screen.update, ou un préfixe se terminant par * comme playlist.*.
--fieldstringnonaucunSeulement les modifications qui ont touché ce membre ou un membre en dessous, sous forme de pointeur JSON comme /label.
--sincestringnonaucunSeulement les modifications à cet instant RFC 3339 ou après, comme 2026-10-01T00:00:00Z.
--untilstringnonaucunSeulement les modifications avant cet instant RFC 3339.
--limitintegernon50Entrées par page, de 1 à 200.
--afterstringnonaucunLe data.next_cursor de la page précédente.
screenrig audit list --resource-type screen --resource-id scr_01EXAMPLESCREEN00000000
screenrig audit list --action 'playlist.*' --source cli --limit 20

Renvoie data.items du plus récent au plus ancien, chacun avec actor (kind, id, name), source, action, resource (type, id, name) et changes, chacun étant un path (un pointeur JSON dans la ressource), before et after ; un identifiant secret s’affiche (redacted) des deux côtés. seq et hash apparaissent dès qu’une entrée est chaînée, en quelques secondes. data.next_cursor vaut null sur la dernière page. L’accès Lecture seule avec la capacité project suffit.

audit show#

Afficher une entrée d’audit avec l’avant et l’après de chaque champ modifié.

audit show <id>
ParamètreTypeRequisPar défautNotes
<id>stringouiaucunL’ID aud_ d’une entrée, tiré de audit list.
screenrig audit show aud_01EXAMPLEENTRY0000000000

Renvoie l’entrée avec path, before et after de chaque champ modifié, qui a fait la modification et par quelle interface, et sa place dans la chaîne une fois chaînée.

audit head#

Afficher la tête de la chaîne d’audit à conserver comme ancre.

audit head

Aucun paramètre.

screenrig audit head

Affiche la dernière entrée chaînée sous la forme SEQ:HASH, le plancher de rétention d’où part la chaîne et le nombre d’entrées en attente de chaînage. Conservez la tête : audit verify --anchor SEQ:HASH prouve plus tard que l’historique n’a été ni réécrit ni tronqué.

audit verify#

Recalculer la chaîne d’empreintes d’audit et signaler tout ce qui ne correspond pas.

audit verify [--from-seq N] [--limit N] [--anchor SEQ:HASH]
ParamètreTypeRequisPar défautNotes
--from-seqintegernonentrée la plus ancienne conservéePremière position de la chaîne à vérifier.
--limitintegernon5000Entrées à vérifier dans cet appel, au plus 5000.
--anchorstringnonaucunUne tête de chaîne SEQ:HASH que vous avez conservée : prouve aussi que l’historique jusqu’à elle est inchangé.
screenrig audit verify --anchor 128:3f2c0b6e9a4d81c7f5e0a2b4c6d8e0f1a3b5c7d9e1f30415263748596a7b8c9d

Signale hash_mismatch, prev_mismatch, gap, head_mismatch, anchor_mismatch ou floor_mismatch par entrée dans data.problems. Se termine avec le code 13 et data.ok false lorsque la chaîne n’est pas vérifiée ; data.next_seq poursuit une chaîne plus longue.

audit export#

Écrire le journal d’audit filtré dans un fichier CSV, XLSX ou PDF.

audit export --format csv|xlsx|pdf [--output FILE]
    [--actor ID] [--actor-kind KIND] [--source SOURCE] [--resource-type TYPE]
    [--resource-id ID] [--action CODE] [--field POINTER] [--since TIME] [--until TIME]
ParamètreTypeRequisPar défautNotes
--formatstringouiaucuncsv, xlsx ou pdf.
--outputcheminnon./audit-log.FORMATFichier à écrire. Avec --until, le nom par défaut ajoute ce jour, comme ./audit-log-2026-10-01.csv.
--actor, --actor-kind, --source, --resource-type, --resource-id, --action, --field, --since, --untilstringnonaucunLes filtres de audit list. Sans --since, le fichier couvre les 30 derniers jours.
screenrig audit export --format csv --output audit.csv
screenrig audit export --format pdf --resource-type playlist --output playlist-changes.pdf

Écrit une ligne par champ modifié, de la plus ancienne à la plus récente, jusqu’à 50000 lignes (data.truncated sinon), avec la tête de chaîne et le plancher de rétention dans le fichier, et répond avec son chemin, ses octets et son SHA-256.

Lecture

Les preuves de lecture se présentent sous quatre formes. playback plays lit une ligne par début visible d’une image, d’une vidéo ou d’une application sur un écran, du plus ancien au plus récent selon received_at : preuve de lecture pour un rapport ou un annonceur. playback list lit les totaux quotidiens, une ligne par écran, objet média et jour UTC. playback totals lit les comptes de lecture par jour UTC, ou classe les écrans ou médias les plus actifs. playback completeness lit combien des lectures numérotées par les Players sont parvenues à screenRIG, et où des lectures ont disparu.

Chaque commande de lecture accepte --format json|csv|xlsx|pdf et --output FILE, et le tableau de bord exporte les mêmes fichiers. json, la valeur par défaut, est l’enveloppe de la commande et refuse --output ; les autres formats écrivent un fichier. playback plays et playback list transmettent en continu leur propre CSV, et --output - l’envoie vers stdout au lieu de l’enveloppe. Tout autre fichier est rendu sur le serveur et enregistré dans un chemin de fichier. Un xlsx ou un pdf contient au plus 50 000 lignes pour playback plays et au plus 200 pour playback list. Chaque commande nomme son fichier par défaut.

Les lectures sont conservées pour la rétention des événements du forfait, au moins 30 jours.

Code de problèmeSortieSens
invalid_request8Une plage de lectures de plus de 31 jours, une plage quotidienne au-delà de la limite de la commande, ou un filtre mal formé. Le CLI refuse la plupart avant d’envoyer quoi que ce soit (sortie 2).
rate_limited7Le budget d’exportation de lecture de 30 requêtes par minute et par organisation est épuisé. Attendez retry_after_seconds.

Requêtes d’agent : chaque page JSON est une requête d’agent, donc --all fait une requête par page. Une exportation CSV est une requête pour toute sa plage. Chaque requête de lectures (une page JSON, CSV, XLSX ou PDF) et chaque exportation CSV de playback list consomme aussi le budget d’exportation des lectures. playback totals et playback completeness sont chacune une requête d’agent et ne consomment rien de ce budget.

playback plays#

Lire les enregistrements de lecture par lecture, une ligne par démarrage visible.

playback plays [--from TIME] [--to TIME] [--screen-id ID] [--media-id ID] [--tag TAG] [--cursor CURSOR] [--limit N] [--all]
playback plays --format csv|xlsx|pdf [--output FILE] [--from TIME] [--to TIME] [--screen-id ID] [--media-id ID] [--tag TAG]
ParamètreTypeRequisPar défautNotes
--from TIMEstringnon24 heures avant --toLimite inclusive sur received_at : un instant RFC 3339 avec secondes et décalage, now, ou un âge tel que 7d, 12h ou 30m.
--to TIMEstringnonmaintenantLimite exclusive, dans les mêmes formes. La plage est au maximum de 31 jours.
--screen-id IDstringnonchaque écranUn écran scr_.
--media-id IDstringnonchaque objetUn objet média med_.
--tag TAGstringnonchaque écranUne étiquette que l’écran portait quand la lecture a été reçue : de 1 à 32 lettres ou chiffres.
--cursor CURSORstringnonle début de la plageLe next_cursor de la page précédente (pc_…), avec les mêmes filtres.
--limit Nintegernon200Lignes par page JSON, de 1 à 1000. JSON uniquement : --format csv le refuse.
--allbooleannondésactivéSuivez le curseur jusqu’à la fin de la plage, 1000 lignes par page sauf indication contraire de --limit, pour un maximum de 50 pages. JSON uniquement : --format csv le refuse.
--format FORMATstringnonjsonjson, csv, xlsx ou pdf. csv transmet en continu toute la plage ; xlsx et pdf contiennent ses 50 000 premières lignes.
--output FILEcheminnon./playback-plays.csv, ./plays.xlsx ou ./plays.pdfLe fichier à écrire ; il exige un format de fichier. Avec --format csv, - écrit le CSV vers stdout au lieu de l’enveloppe.
screenrig playback plays --from 7d --tag Lobby --all
screenrig playback plays --format csv --from 2026-09-01T00:00:00Z --to 2026-10-01T00:00:00Z --output september-plays.csv
screenrig playback plays --format xlsx --from 7d --tag Lobby --output lobby-plays.xlsx

Le CLI normalise les deux bornes en UTC et les envoie à chaque requête ; data.from et data.to les renvoient. Les 5 secondes les plus récentes sont retenues jusqu’à stabilisation, donc une lecture apparaît environ 5 secondes après réception, et data.to rapporte cette fin effective. Une lecture d’application porte release_id et un media_id vide. Le JSON retourne une page dans data.items avec data.next_cursor, et data.next.argv est la commande exacte pour la page suivante. --all s’arrête tôt, avec data.next et un avertissement, au plafond de pages (playback_plays_truncated) ou quand le budget d’export est épuisé (playback_export_rate_limited), plutôt que de dépenser des requêtes en refus.

Le CSV suit la RFC 4180 avec la ligne d’en-tête fixe screen_id,playlist_id,page_id,primitive_id,media_id,primitive,started_at,received_at,manifest_revision,playlist_revision, les heures en UTC RFC 3339. primitive_id et started_at sont vides sauf si le Player les a rapportés. Une cellule commençant par =, +, -, @, tabulation ou retour chariot porte un ' initial pour empêcher l’évaluation par les tableurs. Le CLI écrit via un fichier temporaire privé dans le même dossier et remplace un fichier existant seulement après la fin propre du flux. --timeout est la limite sans progression pour le flux, 60 000 ms sans octet par défaut, pas une limite de durée totale. L’enveloppe rapporte path, bytes, rows, sha256, content_type, from, to et last_received_at ; le CSV n’entre jamais dans l’enveloppe. Avec --output -, le CSV va vers stdout et aucune enveloppe n’est affichée.

Si un flux échoue en cours de route, la commande se termine avec un code non nul et n’écrit jamais le fichier cible. Les lignes complètes déjà reçues restent dans FILE.partial (FILE.partial-2 et ainsi de suite quand il existe déjà), et error.next exporte le reste de la plage depuis le dernier received_at dans un FILE-rest.csv inutilisé. Les lignes reçues à cet instant précis apparaissent dans les deux, donc ignorez les doublons lors de leur jonction. Avec --output -, le CSV incomplet reste sur stdout, et l’erreur et la commande next vont vers stderr.

xlsx et pdf sont rendus sur le serveur et enregistrés de la même façon, via un fichier temporaire privé. L’enveloppe rapporte path, bytes, sha256, content_type et format, et le fichier contient les 50 000 premières lignes de la plage.

playback list#

Lire les totaux quotidiens de lecture pour ce projet, jours les plus récents en premier.

playback list [--screen-id ID] [--media-id ID] [--day YYYY-MM-DD | --day-from YYYY-MM-DD --day-to YYYY-MM-DD]
              [--format json|csv|xlsx|pdf] [--output FILE]
ParamètreTypeRequisPar défautNotes
--screen-id IDstringnonchaque écranDoit commencer par scr_.
--media-id IDstringnonchaque objetDoit commencer par med_.
--day YYYY-MM-DDstringnonchaque jourUne journée calendaire UTC. Pas avec --day-from ni --day-to.
--day-from YYYY-MM-DDstringnonaucunPremier jour d’une plage de jours UTC inclusive. Avec --day-to, la plage compte au plus 366 jours. Un CSV la définit par défaut à 30 jours avant --day-to. Pas avec --day.
--day-to YYYY-MM-DDstringnonaucunDernier jour de cette plage. Un CSV la définit par défaut à aujourd’hui. Pas avec --day.
--format FORMATstringnonjsonjson, csv, xlsx ou pdf. csv transmet en continu chaque ligne correspondante, et, sans plage, les 31 jours jusqu’à aujourd’hui. xlsx et pdf contiennent les mêmes lignes que la liste JSON.
--output FILEcheminnon./playback-aggregates.csv, ./play-aggregates.xlsx ou ./play-aggregates.pdfLe fichier à écrire ; il exige un format de fichier. Avec --format csv, - écrit le CSV vers stdout au lieu de l’enveloppe.
screenrig playback list --screen-id scr_01EXAMPLESCREEN00000000 --day 2026-08-14
screenrig playback list --format csv --day-from 2026-09-01 --day-to 2026-09-30
screenrig playback list --format pdf --day-from 2026-09-01 --day-to 2026-09-30 --output september.pdf

Une ligne par écran, objet média et jour UTC. Les filtres sélectionnent les lignes propres à l’appelant. JSON renvoie au plus 200 lignes dans data.items, le jour le plus récent d’abord; les totaux quotidiens sont actualisés environ toutes les 10 minutes, et playback plays montre les démarrages plus récents. La ligne d’en-tête du CSV est screen_id,media_id,filename,primitive,day,play_count,last_page_id,last_manifest_revision,first_started_at,last_started_at. Le CSV est une requête écrite comme un CSV de lectures, et sa réponse indique path, bytes, rows, sha256 et content_type; une réponse xlsx ou pdf indique path, bytes, sha256, content_type et format. Une exportation quotidienne échouée ne conserve rien; relancez-la.

playback totals#

Lire les comptes de lecture par jour UTC, ou classer les écrans ou médias les plus actifs.

playback totals [--by day|screen|media|screen_day] [--day-from YYYY-MM-DD] [--day-to YYYY-MM-DD]
                [--screen-id ID | --media-id ID] [--top N] [--format json|csv|xlsx|pdf] [--output FILE]
ParamètreTypeRequisPar défautNotes
--by GROUPINGstringnondayday répond une ligne par jour UTC. screen ou media classe les plus occupés. screen_day répond la série journalière des écrans principaux.
--day-from YYYY-MM-DDstringnon29 jours avant --day-toPremier jour UTC, inclus.
--day-to YYYY-MM-DDstringnonaujourd’huiDernier jour UTC, inclusivement.
--screen-id IDstringnonchaque écranAvec --by day, comptez uniquement cet écran. Pas avec --media-id.
--media-id IDstringnonchaque objetAvec --by day, comptez uniquement cet objet média. Pas avec --screen-id.
--top Nintegernon10Lignes d’un classement, de 1 à 100 ; de 1 à 10 avec --by screen_day. Nécessite --by ; ne s’applique pas à --by day.
--format FORMATstringnonjsonjson, csv, xlsx ou pdf. Les trois autres écrivent les mêmes lignes dans un fichier.
--output FILEcheminnon./play-totals.csv, ./play-totals.xlsx ou ./play-totals.pdfLe fichier à écrire avec --format csv, xlsx ou pdf. Un chemin de fichier seulement : - est refusé.
screenrig playback totals
screenrig playback totals --day-from 2026-09-01 --day-to 2026-09-30 --screen-id scr_01EXAMPLESCREEN00000000
screenrig playback totals --by screen --top 5
screenrig playback totals --by media --day-from 2026-09-01 --day-to 2026-09-30
screenrig playback totals --by screen_day --top 3
screenrig playback totals --by screen --top 10 --format xlsx --output busiest-screens.xlsx

Les comptes proviennent des agrégats quotidiens, qui suivent l’ingestion avec un délai d’environ 21 minutes ; playback plays montre les démarrages plus récents. day répond à data.days, screen et media répondent à data.screens et data.media, et screen_day répond à data.screen_days. Une série journalière couvre au maximum 366 jours (92 avec --screen-id ou --media-id) et un classement au maximum 92. data.truncated est true lorsqu’un classement sur une fenêtre trop grande pour une lecture ne conserve que les meilleures clés de chaque tranche. Un format de fichier écrit le fichier du serveur dans --output, et son enveloppe rapporte path, bytes, sha256, content_type et format.

playback completeness#

Lire combien des lectures numérotées par les Players sont parvenues à screenRIG par jour UTC, et les lacunes où des lectures ont disparu.

playback completeness [--day-from YYYY-MM-DD] [--day-to YYYY-MM-DD] [--screen-id ID] [--limit N]
                      [--format json|csv|xlsx|pdf] [--output FILE]
ParamètreTypeRequisPar défautNotes
--day-from YYYY-MM-DDstringnon29 jours avant --day-toPremier jour UTC, inclus. La période couvre au plus 92 jours.
--day-to YYYY-MM-DDstringnonaujourd’huiDernier jour UTC, inclusivement.
--screen-id IDstringnonchaque écranSeulement cet écran. Doit commencer par scr_.
--limit Nintegernon100Nombre de lacunes à lister, des plus récentes aux plus anciennes, de 1 à 500.
--format FORMATstringnonjsonjson, csv, xlsx ou pdf. Les trois autres écrivent les mêmes lignes dans un fichier.
--output FILEcheminnon./play-completeness.csv, ./play-completeness.xlsx ou ./play-completeness.pdfLe fichier à écrire avec --format csv, xlsx ou pdf. Un chemin de fichier seulement : - est refusé.
screenrig playback completeness
screenrig playback completeness --day-from 2026-09-01 --day-to 2026-09-30
screenrig playback completeness --screen-id scr_01EXAMPLESCREEN00000000 --limit 20
screenrig playback completeness --format pdf --output completeness.pdf

Chaque démarrage de média porte un numéro, de sorte qu’une lecture qu’un écran a effectuée sans jamais la livrer, par exemple une lecture faite hors ligne au-delà de sa file de rapports de 24 heures, laisse une lacune. data.completeness vaut data.measured_plays sur data.measured_plays plus data.missing_plays pour la fenêtre, de 0 à 1, et null quand aucun des deux n’a été mesuré : les lectures sans numéro, provenant de Players qui ne numérotent pas leurs lectures ou d’avant qu’ils le fassent, ne sont pas mesurées. data.days donne les trois mêmes chiffres pour chaque jour UTC qui en a, du plus ancien au plus récent, une lacune étant comptée au jour de la lecture qui la suit. data.gaps liste chaque lacune de la plus récente à la plus ancienne avec screen_id, day, from et to (les heures de démarrage des lectures de part et d’autre) et missing_plays ; --limit la plafonne, et data.truncated vaut true quand il en existe davantage. Un écran éteint ne fait aucune lecture et ne laisse aucune lacune. L’agrégat est actualisé toutes les 10 minutes. Une requête API mesurée ; le budget d’exportation de lecture ne s’applique pas. Un format de fichier écrit le fichier du serveur dans --output, et son enveloppe rapporte path, bytes, sha256, content_type et format.

Autres groupes de commandes