Skip to content

Document cursor pagination and capped totals - #293

Open
javorosas wants to merge 4 commits into
mainfrom
docs/pagination-cursor
Open

Document cursor pagination and capped totals#293
javorosas wants to merge 4 commits into
mainfrom
docs/pagination-cursor

Conversation

@javorosas

Copy link
Copy Markdown
Member

Contexto

Prepara la documentación para anunciar el soporte opt-in de pagination=cursor
(ya mergeado en la API) y el capping de totales a 3,000 (totals_are_capped),
incluyendo la política de paginación por páginas (máximo 30 páginas). La doc se
escribe como si la política completa ya estuviera vigente; el correo de anuncio
definirá la fecha de aplicación.

Cambios

  • Guía nueva de paginación (docs/guides/pagination.mdx, ES + EN):
    • Comparativa pagination=page vs pagination=cursor (cursor recomendado para listas grandes).
    • Parámetros pagination, limit, page, after, before y sus combinaciones válidas.
    • Formas de respuesta de ambos modos (previous_cursor, next_cursor, total_results, totals_are_capped).
    • Navegación secuencial con cursores y tope de 3,000 resultados.
  • OpenAPI (ambos specs, openapi_v2.yaml y openapi_v2.en.yaml):
    • Nuevos parámetros compartidos SearchPagination, SearchAfter, SearchBefore en components.parameters.
    • $ref a esos parámetros en los 19 endpoints de búsqueda (catálogos, customers, invoices, organizations, products, receipts, retentions).
    • Campos previous_cursor, next_cursor y totals_are_capped en el schema compartido SearchResult.
  • CHANGELOG.md: entrada de release para el anuncio.

Validación

  • Ambos YAML parsean y los 57 $ref nuevos quedan dentro de listas parameters (0 fugas en security).
  • git diff --check sin errores.

- Add pagination guide (ES/EN) covering pagination=page|cursor, after/before
  navigation, totals capped at 3,000 and totals_are_capped.
- Add shared SearchPagination/SearchAfter/SearchBefore parameters to search
  endpoints in both OpenAPI specs.
- Extend SearchResult schema with previous_cursor, next_cursor and
  totals_are_capped.
- Add CHANGELOG entry for the opt-in cursor pagination.
@javorosas javorosas self-assigned this Aug 27, 2026
…ability

Both pagination modes cap the total count at 3,000, so cursor is not faster
because it avoids exact counts. Reframe the recommendation around reach
(page caps at 3,000 results / 30 pages) and stable position-based pages.
Align the guide and OpenAPI SearchResult with perf #2206: a cursor search
only includes total_results/totals_are_capped on the first page (no
after/before); later pages return data and cursors only.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant