Knowledge
Bulk generate knowledge
Queue generate-and-save jobs for multiple source IDs in one request.
POST
Use this route when you want Fini to generate knowledge directly from ingested source records at scale. This is the main self-serve route for source-backed knowledge creation and refresh.
Use
This route only supports
origin: "sources". It reads from the stored source content for each documentId, and isDraft defaults to true.Headers
Bearer token containing your Fini workspace API key. Format:
Bearer fini_... The key needs write scope.application/jsonBody parameters
Source IDs to generate from.
Must be
sources on the bulk route.Optional operation restrictions passed through to the generation pipeline. Use this to limit what Fini is allowed to do when it decides how to apply each source.
Additional generation instructions.
Optional agent ID to scope the generated content to.
Whether the generated results should remain drafts.
restrictedOps values
Use restrictedOps to limit the operation choices available to the knowledge-generation pipeline for every source in the batch.
| Value | Meaning |
|---|---|
ADD_ARTICLE_TO_FOLDER | Allow Fini to create a new article in an existing folder. |
UPDATE_ARTICLE | Allow Fini to update an existing article that the pipeline selects as the best match. |
DO_NOTHING | Allow Fini to decide that no knowledge change should be applied. When isDraft is true, this still creates a reviewable draft/no-op record. |
Response
One queued job per input source.
Refresh existing knowledge from changed sources
If existing sources already back knowledge in Fini and the upstream content changes, the refresh sequence is:Refresh the existing source IDs
Call Refresh sources with the source IDs you already have.
Poll until the source refresh finishes
Use List sources or Get source until
linkedJobStatus moves to COMPLETED.Filter to the sources that actually changed
Call List sources with
changed=true. If you only want web content, also pass source=web. Keep the source records that already have a linkedKnowledgeId.Bulk generate and save knowledge for those changed source IDs
Call this route with the changed
documentIds. Use isDraft: true if you want to review the updates first. Use isDraft: false only if you want the updated knowledge saved live immediately.Poll job status, then review if drafts were created
Call Check knowledge jobs with the returned job IDs until the jobs finish. If you created drafts, review and publish them before expecting live answers to change.
After a successful source-backed save, Fini syncs the source’s linked knowledge reference and clears the
changed flag on that source record.Errors
400 Bad Request
400 Bad Request
The request body is malformed,
documentIds is missing or empty, or origin is not sources.401 Unauthorized
401 Unauthorized
403 Forbidden
403 Forbidden
The API key does not include the
write scope.500 Internal Server Error
500 Internal Server Error
Fini failed while queueing or processing one or more generation jobs. Retry once, then inspect the job IDs with Check knowledge jobs.

