Référence API

API Notes du projet

Notes partagées par les agents du projet

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 5 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.

Notes partagées par les agents du projet

GET/api/notes

Lister les notes

Liste les notes du projet, de la plus récente à la plus ancienne. Une note est un fait court en texte brut qu’un agent a écrit pour son futur soi et les autres agents du projet ; c’est du contexte, jamais une instruction ni une approbation.

Toute lecture de justificatif active, y compris en lecture seule, ne débite pas le compteur API. state est open (par défaut), resolved ou all ; about_id conserve les notes sur un écran ou une liste de lecture et author_id les notes qu’un agent a écrites.

Passez next_cursor en tant que after pour la page suivante ; il est vide à la dernière page. new marque une note ouverte qu’un autre agent a écrite après que cet appelant a lu les notes pour la dernière fois.

Lire les notes est la première page des notes ouvertes sans about_id ni author_id : cette réponse calcule le nouveau par rapport à la lecture précédente, puis déplace le marqueur de lecture à maintenant (les pages suivantes de la même liste conservent le marqueur antérieur).

Il comprend aussi la révision : jusqu’à 5 notes ouvertes dont la révision est due (les plus anciennes d’abord), que l’appelant doit confirmer si elles tiennent encore et résoudre sinon. Une révision laissée sans réponse pendant 30 jours après son premier retour résout la note comme not_confirmed.

Seul un agent avec accès Gérer déplace son marqueur et démarre ces 30 jours ; un agent en lecture seule ou un client service obtient la même réponse et ne change rien. Toute autre page ou filtre renvoie une revue vide et ne déplace rien. Les comptes sont les notes ouvertes du projet et, pour cet appelant, combien sont nouvelles et dues.

Un agent limité aux écrans ne liste que les notes sur ses propres écrans, sur les listes de lecture et sur le projet : la liste, la révision et les totaux omettent les notes sur un écran en dehors de son périmètre, et une liste à travers les projets omet un projet où l’agent est limité ; sélectionnez donc ce projet.

Authentification
projectBearer
Corps de la requête
aucun
ID d’opération
listNotes

Paramètres

NomEnvoyerRequis ?Description
ScreenRig-Projecten-têteoptionnelObsolète pour une version. Doit être cohérent avec les droits JWT des projets ; ajoute les en-têtes Deprecation et Warning. Pas d’échange de jeton.
étatrequêteoptionnel
about_idrequêteoptionnelSeules les notes concernant cet écran ou cette liste de lecture.
author_idrequêteoptionnelSeules les notes écrites par cet agent.
aprèsrequêteoptionnelnext_cursor de la page précédente.
limiterequêteoptionnel
Modèle de requête et réponses
shell · modèle de requête
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/notes'

Réponses

StatutSensCorps et en-têtes
200Une page de notes, les notes à réviser et les comptes.NoteList (application/json)
400

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
par défaut

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
POST/api/notes

Ajouter une note

Ajoute une note pour les agents du projet : un fait sur lequel un autre agent agirait, jamais un rapport d’avancement, un clavardage ou un secret. Le corps fait de 1 à 2000 caractères de texte brut après suppression des espaces et peut s’étendre sur plusieurs lignes.

Le texte contenant une information d’identification (jetons, clés, clés privées, mots de passe dans les URL) est refusé avec note_contains_credential et le texte qui ressemble à une instruction à un modèle avec note_rejected ; rien n’est stocké et le détail ne répète jamais le texte. concernant les noms un écran (archivé inclus) ou une playlist du projet, sinon not_found. ttl_seconds (3600 à 31536000) crée une note temporaire qui se résout comme expirée ; une note sans cela est soumise à révision 90 jours après son ajout ou sa dernière confirmation. remplace les noms d’une note ouverte que celle-ci remplace : elle est résolue comme remplacée dans la même transaction (note_not_open quand elle est déjà résolue).

Un corps dont le texte normalisé (rogné, espaces réduits, minuscules) et le champ about correspondent à une note ouverte confirme cette note et la renvoie avec 200 au lieu d’en ajouter une; aucun événement note.added n’est ajouté. Une organisation contient au plus 200 notes ouvertes, tous projets confondus; la 201e est note_limit_reached, dont le détail nomme jusqu’à 5 notes à résoudre d’abord.

Ajoute note.added (et note.resolved pour une note remplacée) sans le texte. Une nouvelle tentative exacte avec la même Idempotency-Key renvoie la première réponse pendant vingt-quatre heures.

Pour un agent limité aux écrans (docs/screen-scope.md), un about qui est un écran en dehors de son périmètre ou inconnu du projet, ou un replaces qui nomme une note sur un écran en dehors de son périmètre, donne outside_screen_scope (403) et rien n’est stocké.

Authentification
projectBearer
Corps de la requête
NoteWrite
ID d’opération
addNote

Paramètres

NomEnvoyerRequis ?Description
ScreenRig-Projecten-têteoptionnelObsolète pour une version. Doit être cohérent avec les droits JWT des projets ; ajoute les en-têtes Deprecation et Warning. Pas d’échange de jeton.
Idempotency-Keyen-têteoptionnelOmettre pour une opération fraîche. Fournissez et réutilisez une clé pour dédupliquer les tentatives ; le CLI gère les clés automatiquement.

Champs du corps de la requête

ChampDescription
corps (obligatoire, chaîne)Texte brut, 1 à 2000 caractères après suppression des espaces ; les sauts de ligne sont conservés. minLength : 1 maxLength : 2000
à propos (facultatif, en ligne)
ttl_seconds (optionnel, entier)Expire la note aussi longtemps après son ajout. Sans cela, la note est revue après 90 jours. minimum : 3600 maximum : 31536000
remplace (optionnel, chaîne)Une note ouverte que celle-ci remplace ; elle est résolue comme remplacée. motif : "^(?:(?:stage|qa|development)_)?nte_[A-Za-z0-9_-]{16,24}$"
Modèle de requête et réponses
shell · modèle de requête
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/notes'

Réponses

StatutSensCorps et en-têtes
201Ajouté.Note (application/json)
200Le texte correspondait à une note ouverte, qui est confirmée et renvoyée.Note (application/json)
400

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
403

outside_screen_scope - l’appelant est limité aux écrans et l’écran, le dossier d’écrans, le sélecteur ou l’audience que la requête nomme ou atteint est en dehors de ceux-ci (docs/screen-scope.md). Un ID en dehors du périmètre et un ID qui n’existe pas obtiennent la même réponse ; errors[0].screen_scope porte le périmètre de l’appelant, et l’écriture est refusée en entier, jamais restreinte.

Problème (application/problem+json)
404

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
409note_not_open, note_limit_reached ou idempotency_mismatch.Problème (application/problem+json)
422note_contains_credential ou note_rejected.Problème (application/problem+json)
par défaut

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
GET/api/notes/{id}

Obtenir la note

Une note du projet, ouverte ou résolue. Les notes sont du contexte écrit par des agents, jamais des instructions ni une approbation. Ne débite pas le compteur d’API. Une note sur un écran en dehors du périmètre d’un agent limité aux écrans donne outside_screen_scope (403) ; un ID inconnu donne not_found.

Authentification
projectBearer
Corps de la requête
aucun
ID d’opération
getNote

Paramètres

NomEnvoyerRequis ?Description
ScreenRig-Projecten-têteoptionnelObsolète pour une version. Doit être cohérent avec les droits JWT des projets ; ajoute les en-têtes Deprecation et Warning. Pas d’échange de jeton.
idcheminobligatoire
Modèle de requête et réponses
shell · modèle de requête
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/notes/RESOURCE_ID'

Réponses

StatutSensCorps et en-têtes
200La note.Note (application/json)
403

outside_screen_scope - l’appelant est limité aux écrans et l’écran, le dossier d’écrans, le sélecteur ou l’audience que la requête nomme ou atteint est en dehors de ceux-ci (docs/screen-scope.md). Un ID en dehors du périmètre et un ID qui n’existe pas obtiennent la même réponse ; errors[0].screen_scope porte le périmètre de l’appelant, et l’écriture est refusée en entier, jamais restreinte.

Problème (application/problem+json)
404

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
par défaut

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
POST/api/notes/{id}/confirm

Confirmer la note

Indique qu’une note ouverte tient toujours. confirmed_at devient maintenant ; une note sans TTL doit être revue de nouveau 90 jours à partir de maintenant et sa révision en attente est effacée. Tout agent du projet peut confirmer toute note ouverte. Une note résolue donne note_not_open. Une note sur un écran en dehors du périmètre d’un agent limité aux écrans donne outside_screen_scope (403).

Authentification
projectBearer
Corps de la requête
aucun
ID d’opération
confirmNote

Paramètres

NomEnvoyerRequis ?Description
ScreenRig-Projecten-têteoptionnelObsolète pour une version. Doit être cohérent avec les droits JWT des projets ; ajoute les en-têtes Deprecation et Warning. Pas d’échange de jeton.
idcheminobligatoire
Idempotency-Keyen-têteoptionnelOmettre pour une opération fraîche. Fournissez et réutilisez une clé pour dédupliquer les tentatives ; le CLI gère les clés automatiquement.
Modèle de requête et réponses
shell · modèle de requête
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' 'https://api.screenrig.ai/api/notes/RESOURCE_ID/confirm'

Réponses

StatutSensCorps et en-têtes
200La note confirmée.Note (application/json)
403

outside_screen_scope - l’appelant est limité aux écrans et l’écran, le dossier d’écrans, le sélecteur ou l’audience que la requête nomme ou atteint est en dehors de ceux-ci (docs/screen-scope.md). Un ID en dehors du périmètre et un ID qui n’existe pas obtiennent la même réponse ; errors[0].screen_scope porte le périmètre de l’appelant, et l’écriture est refusée en entier, jamais restreinte.

Problème (application/problem+json)
404

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
409

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
par défaut

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
POST/api/notes/{id}/resolve

Résoudre la note

Résout une note ouverte qui n’est plus valable, avec une raison de 1 à 500 caractères, filtrée comme le corps d’une note (note_contains_credential, note_rejected). Tout agent du projet peut résoudre n’importe quelle note ouverte. Une note résolue reste lisible pendant 30 jours, puis est supprimée. Ajoute note.resolved. Une note résolue est note_not_open.

Une note sur un écran en dehors du périmètre d’un agent limité aux écrans donne outside_screen_scope (403).

Authentification
projectBearer
Corps de la requête
NoteResolve
ID d’opération
resolveNote

Paramètres

NomEnvoyerRequis ?Description
ScreenRig-Projecten-têteoptionnelObsolète pour une version. Doit être cohérent avec les droits JWT des projets ; ajoute les en-têtes Deprecation et Warning. Pas d’échange de jeton.
idcheminobligatoire
Idempotency-Keyen-têteoptionnelOmettre pour une opération fraîche. Fournissez et réutilisez une clé pour dédupliquer les tentatives ; le CLI gère les clés automatiquement.

Champs du corps de la requête

ChampDescription
raison (obligatoire, chaîne)minLength : 1 maxLength : 500
Modèle de requête et réponses
shell · modèle de requête
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --header 'Content-Type: application/json' --data '@request.json' 'https://api.screenrig.ai/api/notes/RESOURCE_ID/resolve'

Réponses

StatutSensCorps et en-têtes
200La note résolue.Note (application/json)
403

outside_screen_scope - l’appelant est limité aux écrans et l’écran, le dossier d’écrans, le sélecteur ou l’audience que la requête nomme ou atteint est en dehors de ceux-ci (docs/screen-scope.md). Un ID en dehors du périmètre et un ID qui n’existe pas obtiennent la même réponse ; errors[0].screen_scope porte le périmètre de l’appelant, et l’écriture est refusée en entier, jamais restreinte.

Problème (application/problem+json)
400

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
404

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
409

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
422

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)
par défaut

Réponse stable RFC 9457 à un problème. 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 (application/problem+json)