Skip to main content
POST
Resolve citation links in a batch

Authorizations

Authorization
string
header
required

User session JWT or instance API key (iak_*). Send as Authorization: Bearer <token>.

Path Parameters

knowledgeBaseId
string
required

Knowledge base id. Legacy physical prefix vs_ (the kb_ rename is deferred).

Maximum string length: 128
Pattern: ^vs_[A-Za-z0-9-]+$

Body

application/json
document_ids
string[]
required

Document ids to resolve (1-50 per request). Bounded strings, deliberately NOT pattern-constrained to ^vsf_ so legacy or backfilled ids still resolve.

Required array length: 1 - 50 elements
Required string length: 1 - 128
knowledge_base_id
string

Optional override of the path parameter (body wins).

Maximum string length: 128
agent_id
string

Agent context for trusted-workspace authorization, used when a trusted product resolves citations on an end user's behalf.

Maximum string length: 128

Response

One entry per requested document (order not guaranteed). Always 200, even when every item failed - inspect each entry.

Batch citation-resolution response. data holds one entry per requested document, in no guaranteed order; each entry is either a resolved document.source_url object or a per-item error object. Even a fully-failed batch returns 200 - inspect every item.

object
enum<string>
required
Available options:
list
data
object[]
required

Result of the lazy citation resolver. For uploaded_file, the URL is a short-lived native share URL minted BY THE STORAGE WORKSPACE (not the user - a knowledge-base reader may have no rights on the underlying file; chunk text is already readable through search, so the source follows the knowledge base's ACL). For all other source types, url is the document's source_url as-is and expires_at is null.