Paginación
Cómo se recorren los listados de la API de partners de SLAN con paginación por cursor.
Los listados paginan por cursor, no por número de página.
GET /v1/partner/users?limit=20&cursor=01JKX7MNDR0000000000000037| Parámetro | Valor |
|---|---|
limit |
Cuántos elementos por página. Por omisión 20, máximo 100 |
cursor |
El publicId desde el que continuar. Se omite en la primera página |
La respuesta tiene siempre la misma forma:
{ "items": [], "nextCursor": "01JKX7PEND0000000000000036"}nextCursor: null significa que esa era la última página. No hay total de elementos ni
número de páginas: calcularlos obligaría a recorrer toda la tabla en cada petición.
Recorrer un listado completo
Pides la primera página sin cursor y procesas sus items. Si la respuesta trae
nextCursor, repites la misma petición pasándolo como cursor, y sigues hasta que llegue en
null.
Cuando vayas a recorrer un listado entero, pide limit=100: son menos peticiones y gastas
menos de tu límite de uso.
Por qué cursor y no offset
Con ?page=3 los resultados se desplazan cuando alguien crea un registro mientras recorres el
listado: un elemento puede aparecer dos veces o no aparecer nunca. El cursor apunta a una
posición concreta, así que eso no ocurre.
El cursor es opaco: es un publicId, pero trátalo como una cadena que te devolvemos y nos
devuelves. No lo construyas ni lo interpretes.