> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usefini.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Overview
> Generate knowledge from sources, manage live articles, organize the tree, and assign knowledge to agents.
Knowledge is the live side of Fini. [Sources](/en/api-reference/sources) feed into it, agents retrieve from it, and these routes let you generate, manage, organize, and assign that knowledge.
<Info>
There are two ways to work with knowledge in the public API. The recommended self-serve path is source-backed: ingest sources, generate drafts or live knowledge, review if needed, then organize and assign that knowledge. The advanced/manual path is to write and manage articles directly through [Manage knowledge](/en/api-reference/manage-knowledge).
</Info>
## Reference pages
<CardGroup cols={3}>
<Card title="Initialize knowledge folders" icon="folder" href="/en/api-reference/initialize-knowledge-folders">
`POST /v2/knowledge/public/tree/initialize` — generate a downloadable tree template for first-time structure setup.
</Card>
<Card title="Persist knowledge folders" icon="upload" href="/en/api-reference/persist-knowledge-folders">
`POST /v2/knowledge/public/tree/persist` — import a tree file into the workspace knowledge graph.
</Card>
<Card title="Generate knowledge" icon="wand-magic-sparkles" href="/en/api-reference/generate-knowledge">
`POST /v2/knowledge/public` — queue one knowledge-generation job from candidate text.
</Card>
<Card title="Bulk generate knowledge" icon="layer-group" href="/en/api-reference/bulk-generate-knowledge">
`POST /v2/knowledge/public/bulk` — queue generate-and-save jobs for multiple source IDs.
</Card>
<Card title="Check knowledge jobs" icon="clock" href="/en/api-reference/check-knowledge-jobs">
`POST /v2/knowledge/public/jobs/status` — poll one or more background jobs by ID.
</Card>
<Card title="Manage knowledge" icon="book-open" href="/en/api-reference/manage-knowledge">
Read, create, update, draft, publish, inspect history, revert, and delete live articles.
</Card>
<Card title="Organize knowledge" icon="folder" href="/en/api-reference/organize-knowledge">
Read the knowledge tree, manage folders, move articles between folders, and assign them to agents.
</Card>
</CardGroup>
## Recommended paths
### Source-backed self-serve path
<Steps>
<Step title="Ingest sources">
Start from [Sources](/en/api-reference/sources) and ingest the raw content you want to turn into knowledge.
</Step>
<Step title="Optionally initialize the first tree">
If this is the first knowledge setup in the workspace, use [Initialize knowledge folders](/en/api-reference/initialize-knowledge-folders) and [Persist knowledge folders](/en/api-reference/persist-knowledge-folders) to scaffold the initial folder structure.
</Step>
<Step title="Generate knowledge">
Use [Bulk generate knowledge](/en/api-reference/bulk-generate-knowledge) for source-backed generation, or [Generate knowledge](/en/api-reference/generate-knowledge) when you already have candidate text.
</Step>
<Step title="Poll jobs and review when needed">
Use [Check knowledge jobs](/en/api-reference/check-knowledge-jobs), then review or publish drafts before expecting live agent answers to change.
</Step>
<Step title="Organize and assign">
Use [Organize knowledge](/en/api-reference/organize-knowledge) to shape the tree and attach the relevant folders to agents.
</Step>
</Steps>
### Direct manual path
Use [Manage knowledge](/en/api-reference/manage-knowledge) when you already know the live articles you want to create or update, and use [Organize knowledge](/en/api-reference/organize-knowledge) when you need to change the tree or agent visibility around them.
## Endpoint map
### Knowledge generation
| Method | Path | Scope | Purpose |
| - | - | - | - |
| `POST` | `/v2/knowledge/public/tree/initialize` | `write` | Generate a tree-import template file from an initialization prompt. |
| `POST` | `/v2/knowledge/public/tree/persist` | `write` | Upload a tree file and persist it into the workspace knowledge graph. |
| `POST` | `/v2/knowledge/public` | `write` | Queue one knowledge-generation job from candidate text. |
| `POST` | `/v2/knowledge/public/bulk` | `write` | Queue generate-and-save jobs for multiple source IDs. |
| `POST` | `/v2/knowledge/public/jobs/status` | `read` | Check status for one or more background knowledge jobs. |
### Manage knowledge
| Method | Path | Scope | Purpose |
| - | - | - | - |
| `GET` | `/v2/hc-articles/public` | `read` | List articles. Use `type=live` or `type=draft` to filter. |
| `POST` | `/v2/hc-articles/ids/public` | `read` | Fetch one or more articles by ID. |
| `POST` | `/v2/hc-articles/public` | `write` | Create a live article or draft article. |
| `PUT` | `/v2/hc-articles/:id/public` | `write` | Update an existing article. |
| `POST` | `/v2/hc-articles/:id/draft/public` | `write` | Create a draft from an existing live article. |
| `POST` | `/v2/hc-articles/:id/publish/public` | `write` | Publish a draft article. |
| `GET` | `/v2/hc-articles/:id/history/public` | `read` | List saved history versions for one article. |
| `POST` | `/v2/hc-articles/:id/history/public` | `read` | Fetch one saved article version by version number. |
| `POST` | `/v2/hc-articles/:id/revert/public` | `write` | Revert an article to a saved history version. |
| `DELETE` | `/v2/hc-articles/:id/public` | `write` | Delete an article. |
### Organize knowledge
| Method | Path | Scope | Purpose |
| - | - | - | - |
| `GET` | `/v2/hc-folders/public` | `read` | Return the current knowledge-tree snapshot, optionally filtered by `botId`. |
| `POST` | `/v2/hc-folders/public` | `write` | Create a folder in the knowledge tree. |
| `PUT` | `/v2/hc-folders/:id/public` | `write` | Update a folder's title, description, or active state. |
| `PUT` | `/v2/hc-folders/:id/move/public` | `write` | Move a folder under a different parent. |
| `PUT` | `/v2/hc-articles/:id/move/public` | `write` | Move an article into a different folder. |
| `DELETE` | `/v2/hc-folders/:id/public` | `write` | Delete a folder. |
| `POST` | `/v2/hc-bot-folder-junctions/public` | `write` | Assign or unassign folders to agents in bulk. |
<Note>
The article read surface is now unified under `GET /v2/hc-articles/public`. There is no workspace-API-key `GET /v2/hc-articles/:id/public` route in the current controller. If you need a direct lookup by ID, use `POST /v2/hc-articles/ids/public` with one or more `articleIds`.
</Note>
## Related topics
- [Overview](/en/api-reference/tags.md)
This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.
Knowledge generation

