You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/routes/consumer/v2/openapi-cy.json
+16Lines changed: 16 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -291,6 +291,9 @@
291
291
},
292
292
{
293
293
"$ref": "#/components/parameters/sort_by"
294
+
},
295
+
{
296
+
"$ref": "#/components/parameters/cursor"
294
297
}
295
298
],
296
299
"responses": {
@@ -374,6 +377,9 @@
374
377
{
375
378
"$ref": "#/components/parameters/sort_by"
376
379
},
380
+
{
381
+
"$ref": "#/components/parameters/cursor"
382
+
},
377
383
{
378
384
"$ref": "#/components/parameters/filter_id"
379
385
}
@@ -572,6 +578,16 @@
572
578
},
573
579
"example": "title:asc,last_updated_at:desc"
574
580
},
581
+
"cursor": {
582
+
"name": "cursor",
583
+
"in": "query",
584
+
"description": "Opaque keyset cursor returned in <code>page_info.next_cursor</code> / <code>prev_cursor</code>. Pass it back to fetch the next (or previous) slice of rows without paying the OFFSET cost. Cursors are bound to a specific dataset revision, language and sort order — they become invalid if any of those change, and the server will return <code>400</code> in that case. Mutually exclusive with <code>page_number</code> > 1.",
Copy file name to clipboardExpand all lines: src/routes/consumer/v2/openapi-en.json
+18-2Lines changed: 18 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -272,7 +272,7 @@
272
272
"Data"
273
273
],
274
274
"summary": "Get paginated data for a dataset",
275
-
"description": "Returns rows for the latest published revision in the format specified by the required <code>format</code> parameter. <code>csv</code> and <code>xlsx</code> return the full dataset as a streamed file attachment. <code>json</code>, <code>frontend</code> and <code>html</code> return paginated responses (default <code>page_size</code> 100, max 10,000). To apply filters, first create a filter via POST /{dataset_id}/data, then use GET /{dataset_id}/data/{filter_id}.",
275
+
"description": "Returns rows for the latest published revision in the format specified by the required <code>format</code> parameter. <code>csv</code> and <code>xlsx</code> return the full dataset as a streamed file attachment. <code>json</code>, <code>frontend</code> and <code>html</code> return paginated responses (default <code>page_size</code> 100, max 10,000). <br><br>Pagination supports two modes: <code>page_number</code>-based (OFFSET) for shallow paging, and opaque <code>cursor</code>-based (keyset) for efficient deep paging. The response carries both <code>next_cursor</code> and <code>prev_cursor</code> in <code>page_info</code> so clients can switch into cursor mode at any point. The two modes are mutually exclusive within a single request. <br><br>To apply filters, first create a filter via POST /{dataset_id}/data, then use GET /{dataset_id}/data/{filter_id}.",
276
276
"parameters": [
277
277
{
278
278
"$ref": "#/components/parameters/language"
@@ -291,6 +291,9 @@
291
291
},
292
292
{
293
293
"$ref": "#/components/parameters/sort_by"
294
+
},
295
+
{
296
+
"$ref": "#/components/parameters/cursor"
294
297
}
295
298
],
296
299
"responses": {
@@ -354,7 +357,7 @@
354
357
"Data"
355
358
],
356
359
"summary": "Get a filtered data table for a dataset",
357
-
"description": "Returns current data for a published dataset, filtered and displayed according to the chosen options for a specific filter ID. The required <code>format</code> parameter selects the response shape: <code>csv</code> and <code>xlsx</code> stream the full filtered dataset, while <code>json</code>, <code>frontend</code> and <code>html</code> return paginated responses (default <code>page_size</code> 100, max 10,000).",
360
+
"description": "Returns current data for a published dataset, filtered and displayed according to the chosen options for a specific filter ID. The required <code>format</code> parameter selects the response shape: <code>csv</code> and <code>xlsx</code> stream the full filtered dataset, while <code>json</code>, <code>frontend</code> and <code>html</code> return paginated responses (default <code>page_size</code> 100, max 10,000). Both <code>page_number</code> and opaque <code>cursor</code> pagination are supported (mutually exclusive within a single request) — see GET /{dataset_id}/data for details.",
358
361
"parameters": [
359
362
{
360
363
"$ref": "#/components/parameters/language"
@@ -374,6 +377,9 @@
374
377
{
375
378
"$ref": "#/components/parameters/sort_by"
376
379
},
380
+
{
381
+
"$ref": "#/components/parameters/cursor"
382
+
},
377
383
{
378
384
"$ref": "#/components/parameters/filter_id"
379
385
}
@@ -572,6 +578,16 @@
572
578
},
573
579
"example": "title:asc,last_updated_at:desc"
574
580
},
581
+
"cursor": {
582
+
"name": "cursor",
583
+
"in": "query",
584
+
"description": "Opaque keyset cursor returned in <code>page_info.next_cursor</code> / <code>prev_cursor</code>. Pass it back to fetch the next (or previous) slice of rows without paying the OFFSET cost. Cursors are bound to a specific dataset revision, language and sort order — they become invalid if any of those change, and the server will return <code>400</code> in that case. Mutually exclusive with <code>page_number</code> > 1.",
0 commit comments