docs: add pagination api

This commit is contained in:
Mohamed Sohail 2022-05-19 16:34:24 +03:00
parent ef60e1b035
commit 642ccdddaa
Signed by: kamikazechaser
GPG Key ID: 7DD45520C01CD85D
1 changed files with 12 additions and 2 deletions

View File

@ -7,3 +7,13 @@ The data warehouse additionally exposes a couple of REST API's (GraphQL planned)
3. Internal API (planned)
Each API is domain separated i.e. separate SQL query files and router control.
### Pagination
Some API endpoints use a modified cursor pagination. This is to avaoid uncessary full db scans and clientside bloat when paginating data for tables.
The pagination expects the following query string:
- `?per_page=` (int) - No. of items to return. Has a hard limit of 100
- `?forward=` (boolean) - If true, scrolls forward else backwards
- `?cursor=` (id:int) - Used with the forward query. If pagination forwards, pass in the id of the last result i.e. `results[length(results) - 1]`. If paginating backwards pass the id of the first element of the current result set i.e. `results[0]`.