Skip to content

Knowledge bases

List documents

List documents with filename search, state and tag filters, sorting, and cursor pagination. Tag values use display names; use List tags to resolve the slots required for writes. OAuth scope: `api:read`.

GET/api/v2/knowledge/{knowledgeBaseId}/documents

List documents with filename search, state and tag filters, sorting, and cursor pagination. Tag values use display names; use List tags to resolve the slots required for writes.

OAuth scope: api:read.

Authentication

Send a personal or workspace API key in X-API-Key. See key types and access; operations that reject workspace keys say so in their description.

Send X-API-Key in the request header.

Alternatively

Send a Sim OAuth access token in Authorization: Bearer. See OAuth authentication and scopes.

Authorization: Bearer YOUR_ACCESS_TOKEN

Required scopes: api:read

OAuth flows
json
{
  "authorizationCode": {
    "authorizationUrl": "https://www.sim.ai/api/auth/oauth2/authorize",
    "tokenUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "refreshUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "scopes": {
      "api:read": "Read your workspaces, workflows, files, tables, and logs",
      "api:write": "Read, create, change, run, and delete resources in your workspaces",
      "offline_access": "Stay signed in without asking again"
    }
  }
}

OAuth scope: api:read.

Path parameters

knowledgeBaseIdstringRequired

Unique knowledge base identifier.

minLength
1

Query parameters

workspaceIdstringRequired

Workspace that owns the knowledge base.

minLength
1
limitinteger

Maximum documents to return per page. Must be a whole number from 1 to 100. Defaults to 50.

default
50
minimum
1
maximum
100
searchstring

Case-insensitive substring match against the document filename.

minLength
1
maxLength
200
enabledFilterstring

Filter by whether documents are enabled for search.

default
all
enum
["all","enabled","disabled"]
sortBystring

Field used to sort the result. Do not rely on case-insensitive ordering when sorting by filename.

default
uploadedAt
enum
["filename","fileSize","tokenCount","chunkCount","uploadedAt","processingStatus","enabled"]
sortOrderstring

Sort direction.

default
desc
enum
["asc","desc"]
cursorstring

Opaque cursor from the previous page. Send it back with the same sort and filters; only limit may change. Change anything else and pagination must restart without a cursor.

minLength
1
tagFiltersstring

A JSON-encoded array of at most 10 tag filters, using the same display-name shape as knowledge search: [{"tagName":"category","operator":"eq","value":"billing"}]. Every filter must hold, including two that name the same tag. A name that is not defined in this knowledge base is rejected, never ignored.

Responses

200

A page of knowledge documents.

object

A cursor-paginated page of knowledge documents.

2 fields
dataarrayRequired

Items in the current page.

Schema details
Array itemobject

Document summary with the document tag values keyed by display name.

12 fields
idstringRequired

Unique document identifier.

knowledgeBaseIdstringRequired

Knowledge base to which the document belongs.

filenamestringRequired

Original filename of the uploaded document.

fileSizenumberRequired

File size in bytes.

mimeTypestringRequired

MIME type of the document file.

processingStatusstringRequired

Current document processing state.

enum
["pending","processing","completed","failed"]
chunkCountnumberRequired

Number of indexed chunks; zero until processing completes.

tokenCountnumberRequired

Total tokens extracted from the document.

characterCountnumberRequired

Total characters extracted from the document.

enabledbooleanRequired

Whether the document is enabled for search.

createdAtvalueRequired

ISO 8601 timestamp when the document was uploaded, or null.

format
date-time
Schema details

Any of

Option 1string
Option 2null
tagsobjectRequired

Document tag values keyed by display name. Writes use slots such as tag1; use List tags to map names to slots.

Schema details
Additional propertiesvalue

Tag value; dates are ISO 8601 strings and an unset tag is null.

Schema details

Any of

Option 1string
Option 2number
Option 3boolean
Option 4null

Additional properties are not allowed.

nextCursorvalueRequired

Opaque cursor for the next page. Send it back as cursor; null means there are no more pages. Do not construct a cursor yourself.

Schema details

Any of

Option 1string
Option 2null

Additional properties are not allowed.

Response headers

X-RateLimit-Limitinteger

Maximum requests allowed in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Remaininginteger

Requests remaining in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Resetstring

ISO 8601 timestamp when the current rate-limit window resets.

format
date-time
pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Was this helpful?
Suggest an edit