List documents
Lists documents and spreadsheets with cursor pagination.
Permission
The key must be granted docs.documents.read
A key without it gets 403 insufficient_scope, with the missing permission named in details.
Scoped to what the key's owner can see: a scope says what kind of thing a key may do, never which documents it reaches. There is no total count — page until has_more is false — because the underlying query does not compute one and a number that is sometimes wrong is worse than an absent one.
Query parameters
| Field | Type | Description |
|---|---|---|
type |
string |
Restrict to one kind. Uploaded files are listed at /v1/files.
documentspreadsheet
|
folder_id |
string | Only documents filed in this folder. |
q |
string | Free-text match against the title. |
trashed |
boolean |
true lists the trash instead.
Defaults to false
|
limit |
integer |
1 to 200.
Defaults to 50
|
cursor |
string | From the previous page's next_cursor. Opaque. |
Request
curl https://api.veruapis.com/v1/documents?type=spreadsheet&limit=25 \
-H "Authorization: Bearer vak_live_..."
Response
| Field | Type | Description |
|---|---|---|
id |
string | |
type |
string |
documentspreadsheet
|
title |
string | |
state |
string |
activetrashed
|
owner_id |
string | The workspace user who owns it, which is not necessarily the key's owner. |
folder_id |
string | Empty for a document in the root. |
metadata |
object | Whatever you stored on it. |
created_at |
RFC 3339 | |
updated_at |
RFC 3339 |
{
"data": [
{
"id": "0192a1c2-6f3e-7a41-b8d2-5e9f0c3a7b41",
"type": "spreadsheet",
"title": "Q3 plan",
"state": "active",
"owner_id": "01918e4b-7c2e-7f11-b4a9-0242ac130003",
"folder_id": "0192f001-0000-7a41-b8d2-5e9f0c3a7b41",
"created_at": "2026-09-01T10:00:00Z",
"updated_at": "2026-09-09T16:20:00Z"
}
],
"meta": { "request_id": "req_01j8z9...", "timestamp": "2026-09-02T10:00:00Z" },
"pagination": { "next_cursor": "eyJ1aWQiOjQyMTF9", "has_more": true, "limit": 25 }
}
This is how an automation finds the spreadsheet id every /v1/spreadsheets call needs. No total count: page until has_more is false.
Every failure uses the same shape, with a stable string code you can branch on. See the error reference.
Related
- POST Copy a document
- POST Post a comment
- POST Create a document
- DELETE Delete a comment
- DELETE Delete a document
- GET Get a document
- GET List comments
- POST Restore a document
- PATCH Edit or resolve a comment
- PATCH Update a document