Skip to main content
Chaque point de terminaison de liste /v1 renvoie la même enveloppe et pagine de la même manière : par jeton, en avant seulement.

L’enveloppe de liste

string
Toujours "list".
array
La page de ressources, dans un ordre stable et déterministe.
string | null
Transmettez cette valeur comme page_token dans la requête suivante pour obtenir la page suivante. null lorsqu’il n’y a plus de résultats.
boolean
Indique si d’autres résultats existent au-delà de cette page.

Paramètres de requête

integer
défaut:"25"
Taille de la page. Un entier compris entre 1 et 500. Les valeurs hors de cette plage renvoient une 400 avec le code invalid_request.
string
La valeur next_page_token de la réponse précédente. Omettez-la pour la première page.
Il n’existe aucun paramètre de décalage, aucun parcours vers la page précédente et aucun total exact. Pour dénombrer une collection, il faut la parcourir.
Exception : GET /v1/cohorts/{id}/members renvoie au plus 50 lignes par page, même si vous demandez une valeur limit supérieure. has_more et next_page_token reflètent toujours le reste réel de la cohorte.
Authentifiez-vous avec l’une ou l’autre des formes d’identifiants Basic — consultez le Guide de démarrage rapide (apikey:secret ou secret:). Définissez BASE selon l’hôte régional de l’organisation — consultez Régions.

Parcourir une liste

Chargez LIVING_SECURITY_API_KEY depuis votre gestionnaire de secrets, comme dans le guide de démarrage rapide. Cet exemple nécessite entity:read; la clé utilisée pour le guide de la première requête peut avoir besoin de cette autorisation supplémentaire. Installez requests pour Python ou jq pour l’exemple en shell. Les deux exemples épinglent une version, conservent les filtres inchangés et rejettent les redirections. Ils s’arrêtent en cas d’erreur et après 1 000 pages plutôt que de présenter un parcours partiel comme complet. Le délai de lecture de Python limite l’inactivité, et non la durée totale de la tâche; imposez une échéance à la tâche dans votre intégration. Demandez des pages jusqu’à ce que next_page_token soit null. Privilégiez limit=500 pour les lectures en masse afin de couvrir la collection en moins de requêtes — consultez les limites de débit.

Conserver des filtres stables pendant la pagination

Les jetons de page sont des curseurs opaques et signés. Chaque jeton est lié à l’organisation, au compte de service authentifié, à la version du contrat et à l’ensemble exact de filtres de la requête qui l’a produit. Modifier l’un de ces éléments en cours de parcours — par exemple, ajouter un filtre type à la deuxième page — renvoie une 400 avec le code invalid_request sur le paramètre page_token :
400 Invalid request
Pour modifier les filtres, recommencez un nouveau parcours depuis la première page.
Traitez page_token comme une chaîne opaque : retransmettez-la exactement telle que vous l’avez reçue. Ne la décodez pas, ne la conservez pas à long terme et ne construisez pas de jetons — leur format interne peut changer à tout moment sans préavis.
Les points de terminaison de liste rejettent les paramètres de requête qu’ils ne prennent pas en charge avec un 400 invalid_request nommant le paramètre. Consultez la référence de chaque point de terminaison pour connaître ses filtres pris en charge.

Gérer une collection interrompue ou en évolution

Ces exemples ne relancent pas automatiquement les erreurs. Pour 429, respectez Retry-After et suivez les directives de nouvelle tentative bornées. Conservez la même région, le même compte de service, la même version, les mêmes filtres et le dernier jeton de page traité avec succès lors de la nouvelle tentative d’une lecture. Changer d’identifiants n’accorde pas d’accès : chaque requête vérifie toujours les autorisations actuelles. Une lecture sur plusieurs pages n’est pas un instantané de la collection. Les lignes peuvent changer pendant que vous la parcourez. Traitez les ressources selon leur id stable et rendez les écritures en aval idempotentes; un redémarrage peut renvoyer de nouveau une ligne. Si un jeton est rejeté, examinez l’erreur page_token et corrigez la requête avant de recommencer à la première page. N’écartez pas silencieusement des données déjà traitées et ne marquez pas une exportation interrompue comme terminée. Pour obtenir des totaux de rapport exacts, utilisez la ressource de rapport appropriée plutôt que de considérer un parcours de liste en direct comme un instantané.