GET/v1/drafts
Lister les brouillons
list_drafts
scope=mine (par défaut) renvoie les brouillons dont l’appelant est coauteur ; review renvoie les brouillons en attente d’approbation dans les collections où l’appelant a COLLECTION_PUBLISH ; all renvoie tous les brouillons de l’organisation, et orphaned les brouillons sans coauteur actif (les deux exigent ORG_MANAGE_ALL_COLLECTIONS). card_id renvoie les brouillons d’une fiche ; scope=all&card_id=… est aussi accessible au détenteur de CARD_EDIT sur cette fiche, pour voir qu’une autre personne la modifie (coauteurs, updated_by, updated_at) ; le texte des brouillons des autres n’est alors pas renvoyé (body_markdown est vide). Chaque brouillon comporte conflict (card_published : la fiche a été publiée depuis un autre brouillon ou modifiée ; card_deleted). Une clé API (un appelant sans utilisateur) n’est jamais coauteur : pour une clé, scope=mine renvoie les brouillons des collections où la clé peut créer des fiches (depuis la version 1.62.0).
Authentification
Envoyez une clé API dans l’en-tête Authorization : Authorization: Bearer <clé>.
Paramètres de requête
scopeDraftScopecard_idstringlimitintegerPar défaut : 50≥ 1, ≤ 200
offsetintegerPar défaut : 0≥ 0
cursorstringCurseur de la page suivante, tiré de
X-Next-Cursorou denext_cursorde la réponse précédente avec les mêmes filtres ; il porte la taille de page. Avecoffset:422 validation.failed; curseur d’une autre liste, d’autres filtres ou mal formé :400 api.cursor_invalid.length ≤ 512
updated_sincestring (date-time)Uniquement les objets dont
updated_atest égal ou postérieur à ce moment (RFC 3339 avec décalage horaire), pour la synchronisation. Avec ce paramètre, la liste est triée parupdated_atcroissant, puis parid, et le curseur suit cet ordre. Les objets supprimés ne sont pas listés : les suppressions arrivent sous forme d’événements.length ≤ 512
Réponses
200Réponse réussie
En-têtes de la réponse
RateLimit-PolicyLimites en vigueur, au format du brouillon IETF
draft-ietf-httpapi-ratelimit-headers: éléments séparés par des virgules"<name>";q=<quota>;w=<window in seconds>.keyest le débit de requêtes de la clé API (le quota est la rafale, la fenêtre est le temps nécessaire pour la reconstituer entièrement ; pour une session, c’estuser, sans identifiants,ip) ;minute,dayetmonthsont les quotas de l’organisation pour la minute, le jour et le mois calendaires en UTC.RateLimitCe qui reste de chaque limite de
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite de l’entrée la plus stricte de
RateLimit-Policy(celle à laquelle il reste le moins de requêtes).X-RateLimit-RemainingRequêtes restantes au titre de la limite la plus stricte.
X-RateLimit-ResetSecondes restantes avant la réinitialisation de la limite la plus stricte.
application/json
totalintegerobligatoirenext_cursorstring | nullCurseur de la page suivante pour le paramètre
cursor;nullsignifie que c’est la dernière page. Présent quand la requête transmetlimitoucursor.length ≤ 512
has_morebooleanIndique s’il existe une page suivante. Présent quand la requête transmet
limitoucursor.
401Aucun identifiant n’a été envoyé (ni cookie de session ni clé API), ou la clé est introuvable.
En-têtes de la réponse
RateLimit-PolicyLimites en vigueur, au format du brouillon IETF
draft-ietf-httpapi-ratelimit-headers: éléments séparés par des virgules"<name>";q=<quota>;w=<window in seconds>.keyest le débit de requêtes de la clé API (le quota est la rafale, la fenêtre est le temps nécessaire pour la reconstituer entièrement ; pour une session, c’estuser, sans identifiants,ip) ;minute,dayetmonthsont les quotas de l’organisation pour la minute, le jour et le mois calendaires en UTC.RateLimitCe qui reste de chaque limite de
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite de l’entrée la plus stricte de
RateLimit-Policy(celle à laquelle il reste le moins de requêtes).X-RateLimit-RemainingRequêtes restantes au titre de la limite la plus stricte.
X-RateLimit-ResetSecondes restantes avant la réinitialisation de la limite la plus stricte.
application/json
403L’action n’est pas autorisée : le rôle est insuffisant, il n’y a pas d’accès à la collection ou à la fiche, la requête s’exécute en mode « View as », ou l’organisation est suspendue ou supprimée (`detail` est un objet avec `code: org_suspended | org_deleted`).
En-têtes de la réponse
RateLimit-PolicyLimites en vigueur, au format du brouillon IETF
draft-ietf-httpapi-ratelimit-headers: éléments séparés par des virgules"<name>";q=<quota>;w=<window in seconds>.keyest le débit de requêtes de la clé API (le quota est la rafale, la fenêtre est le temps nécessaire pour la reconstituer entièrement ; pour une session, c’estuser, sans identifiants,ip) ;minute,dayetmonthsont les quotas de l’organisation pour la minute, le jour et le mois calendaires en UTC.RateLimitCe qui reste de chaque limite de
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite de l’entrée la plus stricte de
RateLimit-Policy(celle à laquelle il reste le moins de requêtes).X-RateLimit-RemainingRequêtes restantes au titre de la limite la plus stricte.
X-RateLimit-ResetSecondes restantes avant la réinitialisation de la limite la plus stricte.
application/json
422Erreur de validation : le corps ou les paramètres ne correspondent pas au schéma (`detail` est une liste d’erreurs de validation), ou la valeur d’un paramètre est hors des limites admises (`detail` est un message).
En-têtes de la réponse
RateLimit-PolicyLimites en vigueur, au format du brouillon IETF
draft-ietf-httpapi-ratelimit-headers: éléments séparés par des virgules"<name>";q=<quota>;w=<window in seconds>.keyest le débit de requêtes de la clé API (le quota est la rafale, la fenêtre est le temps nécessaire pour la reconstituer entièrement ; pour une session, c’estuser, sans identifiants,ip) ;minute,dayetmonthsont les quotas de l’organisation pour la minute, le jour et le mois calendaires en UTC.RateLimitCe qui reste de chaque limite de
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite de l’entrée la plus stricte de
RateLimit-Policy(celle à laquelle il reste le moins de requêtes).X-RateLimit-RemainingRequêtes restantes au titre de la limite la plus stricte.
X-RateLimit-ResetSecondes restantes avant la réinitialisation de la limite la plus stricte.
application/json
429Trop de requêtes (`api.rate_limited`), quota de l’organisation pour la minute, le jour ou le mois épuisé (`api.quota_exceeded` ; `error.details` contient `quota`, `limit` et `reset_at`), limite de l’organisation atteinte, ou service de réponses occupé (`answers.engine_busy`). Attendez le délai indiqué dans l’en-tête `Retry-After`.
En-têtes de la réponse
Retry-AfterNombre de secondes à attendre avant de réessayer la requête.
RateLimit-PolicyLimites en vigueur, au format du brouillon IETF
draft-ietf-httpapi-ratelimit-headers: éléments séparés par des virgules"<name>";q=<quota>;w=<window in seconds>.keyest le débit de requêtes de la clé API (le quota est la rafale, la fenêtre est le temps nécessaire pour la reconstituer entièrement ; pour une session, c’estuser, sans identifiants,ip) ;minute,dayetmonthsont les quotas de l’organisation pour la minute, le jour et le mois calendaires en UTC.RateLimitCe qui reste de chaque limite de
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite de l’entrée la plus stricte de
RateLimit-Policy(celle à laquelle il reste le moins de requêtes).X-RateLimit-RemainingRequêtes restantes au titre de la limite la plus stricte.
X-RateLimit-ResetSecondes restantes avant la réinitialisation de la limite la plus stricte.
application/json
Codes d’erreur
Codes que ce point de terminaison peut renvoyer dans error.code, en plus des codes généraux communs à toutes les requêtes.
Limites de débit
Les réponses portent les en-têtes RateLimit et RateLimit-Policy, ainsi que les anciens X-RateLimit-Limit, X-RateLimit-Remaining et X-RateLimit-Reset. Une réponse 429 contient Retry-After en secondes : attendez, puis réessayez.