Pagination
L’API EzyConnect utilise deux mécanismes de pagination selon les endpoints.
Pagination par curseur (afterId / afterDate)
Section intitulée « Pagination par curseur (afterId / afterDate) »Les endpoints de consultation utilisent une pagination par curseur, idéale pour le polling incrémental.
Paramètres
Section intitulée « Paramètres »| Paramètre | Type | Description |
|---|---|---|
afterId | long | Retourne les résultats avec un id supérieur à cette valeur |
afterDate | DateTime | Retourne les résultats modifiés après cette date (ISO 8601) |
Endpoints supportés
Section intitulée « Endpoints supportés »| Endpoint | afterId | afterDate | Limite |
|---|---|---|---|
GET /orders | oui | oui | 100 |
GET /orders/reports | oui | oui | 100 |
GET /procurements | oui | oui | 100 |
GET /procurements/reports | oui | oui | 100 |
GET /articles/movements | oui | oui | 1000 |
Pattern de polling recommandé
Section intitulée « Pattern de polling recommandé »last_id = 0
while True: response = requests.get( f"https://api.ezyconnect.com/orders/reports?afterId={last_id}", headers=headers ) reports = response.json()
if not reports: time.sleep(60) # Attendre avant de réessayer continue
for report in reports: process_report(report) last_id = max(last_id, report["id"])Filtrage direct (filter / sort)
Section intitulée « Filtrage direct (filter / sort) »Les endpoints articles utilisent le filtrage QueryKit au lieu de la pagination par curseur :
| Endpoint | Mécanisme | Limite |
|---|---|---|
GET /articles | filter + sort | 100 |
GET /articles/stock | filter + sort + atDate | pas de limite explicite |
Paramètre spécial : atDate
Section intitulée « Paramètre spécial : atDate »L’endpoint GET /articles/stock accepte un paramètre atDate pour obtenir le snapshot de stock à une date donnée :
GET /articles/stock?atDate=2024-06-15Si atDate n’est pas fourni, le snapshot le plus récent est retourné.
Limites de résultats
Section intitulée « Limites de résultats »| Endpoint | Résultats max |
|---|---|
GET /articles | 100 |
GET /orders | 100 |
GET /orders/reports | 100 |
GET /procurements | 100 |
GET /procurements/reports | 100 |
GET /articles/movements | 1000 |
GET /articles/stock | Pas de limite explicite |