Tradotta dall'inglese. In caso di differenze fa fede la pagina in inglese. Leggi in inglese
Paginazione
Paginazione a cursore e scansioni di sincronizzazione incrementale.
Gli elenchi che possono diventare grandi usano la paginazione a cursore (prodotti, inserzioni, ordini, eventi, operazioni, azioni, inserzioni ignorate, aziende, ordini dello storefront):
curl "https://api.nembol.com/rest/v1/products?limit=50" \
-H "Authorization: Bearer $NEMBOL_API_KEY"{
"data": [ { "id": "…" } ],
"has_more": true,
"next_cursor": "eyJ1IjoiMjAyNi0wNy0yNFQx…"
}Ripassa next_cursor come ?cursor= per ottenere la pagina successiva. Quando has_more
è false, hai finito. limit va da 1 a 100 (predefinito 25). I cursori sono opachi.
Non analizzarli e non conservarli a lungo. Un cursore non fornito da Nembol (troncato,
modificato, vuoto) risponde 422 validation_failed con param: cursor: non viene
mai letto come prima pagina.
Elenchi senza cursore
Alcuni elenchi sono piccoli per natura, o limitati, e arrivano in un'unica risposta.
Non hanno limit / cursor; dove has_more è presente, è sempre
false.
| Elenco | Come si pagina |
|---|---|
GET /customers | A pagine: page (da 1), limit 1–100, total nella risposta |
GET /promotions | Le 200 più recenti. Quelle più vecchie restano raggiungibili per id (GET /promotions/{id}) |
GET /notifications | Le 200 più recenti |
GET /storefront/discounts, GET /storefront/bundles | Tutti, in un'unica risposta |
GET /channel_accounts, GET /webhook_endpoints, GET /redirect_urls, GET /error_fixes | Tutti, in un'unica risposta (un negozio ne ha pochi) |
GET /sales, GET /catalog/diagnostics | Report: un oggetto, nessun elenco |
Garanzia di ordinamento
Gli elenchi sono ordinati dal più recente, con id come criterio stabile di spareggio: prodotti e
inserzioni per updated_at, ordini per created_at (il momento in cui l'ordine è stato
effettuato), eventi per created_at. Questo ordinamento fa parte del contratto. Le pagine non saltano né ripetono mai elementi all'interno
di una singola scansione.
Sincronizzazione incrementale
Per tenere sincronizzato un sistema esterno senza rileggere tutto, scansiona con
updated_after:
curl "https://api.nembol.com/rest/v1/products?updated_after=2026-07-24T00:00:00Z&limit=100" \
-H "Authorization: Bearer $NEMBOL_API_KEY"Registra il timestamp di inizio della scansione, scorri le pagine fino alla fine, poi
usa quel timestamp come updated_after della scansione successiva. I prodotti eliminati e uniti
escono dall'elenco predefinito: per intercettarli in una scansione, leggi anche
status=archived&updated_after=… (oppure usa il webhook product.deleted). (Per una sincronizzazione push,
usa invece i webhook. La scansione è la soluzione di riserva
per la riconciliazione.)
Ordini modificati. GET /orders?updated_after=… restituisce gli ordini
effettuati o modificati (stato, evasione, tracking: es. annullati o
rimborsati sul canale) dopo quel momento; l'updated_at di ogni ordine indica
quando è cambiato l'ultima volta. Fai polling con l'orario del tuo polling precedente. Per il push,
usa i webhook order.created e order.status_changed.
Ultimo aggiornamento il 20 ottobre 2026