Read a root or child collection with ancestor filter context
Requires record read access. parentId null pages roots; a record ID pages direct children. Returns up to 100 records with hasMore and a revision-bound cursor. A saved view applies its visibility, filters and sibling sorting; matching descendants retain ancestors as context. Restart at page one after a stale cursor. The bulk children relation is omitted.
Authorization
apiKey Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/v1/workspaces/string/databases/string/sub-records/window" \ -H "Content-Type: application/json" \ -d '{ "parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43" }'{ "data": { "records": [ { "id": "1d8a44e0-7c93-4f21-b60a-3e8d2f5a9c14", "workspaceId": "4b81aa0c-6d2f-4b19-9f0e-1a7c3d5e8b02", "databaseId": "9f2c1e7a-3b58-4d0c-8e27-6a1f9d4b3c85", "contentSurfaceId": "string", "title": "Ship the desktop app", "data": { "status": "in_progress", "due": "2026-08-01" }, "relations": {}, "computed": {}, "system": {}, "related": {}, "archived": false, "externalId": "string", "createdByUserId": "string", "updatedByUserId": "string", "createdAt": "2026-07-10T08:00:00.000Z", "updatedAt": "2026-07-14T11:26:02.000Z" } ], "recordIds": [ "3afd324f-58d9-4fb7-a1d0-205823dcdf21" ], "contextIds": [ "898a733e-dfda-4434-9ed3-329ce93c76e2" ], "cursor": "string", "hasMore": true }}{ "_tag": "ApiNotFound", "error": "not_found", "message": "That item does not exist, or this key cannot see it.", "status": 404}{ "_tag": "ApiNotFound", "error": "not_found", "message": "That item does not exist, or this key cannot see it.", "status": 404}Read parent context and sub-record progress
Requires record read access. Reads up to 200 active record IDs in this database. Returns their active parent, direct-child count, and completion across all active children or descendant leaves, independently of view filters.
Move a sub-record with a parent precondition
Requires record write access. parentId null promotes to the top level. expectedParentId must match the stored parent; stale moves fail. A move carries descendants and rejects cross-database targets, archived parents, cycles and depth beyond 32 levels. The returned record omits its bulk children relation.