curl --request GET \
--url 'https://api-prod.usefini.com/v2/hc-folders/public?botId=4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3' \
--header 'Authorization: Bearer fini_your_api_key'
const response = await fetch('https://api-prod.usefini.com/v2/hc-folders/public?botId=2a1cf0f0-f35d-46ad-8e61-a15c86b2b312', {
method: 'GET',
headers: {
Authorization: 'Bearer fini_your_api_key'
}
});
const data = await response.json();
import requests
response = requests.get(
"https://api-prod.usefini.com/v2/hc-folders/public?botId=2a1cf0f0-f35d-46ad-8e61-a15c86b2b312",
headers={"Authorization": "Bearer fini_your_api_key"},
)
data = response.json()
{
"folders": [
{
"id": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"title": "Billing",
"description": "Refunds, invoices, and subscription changes.",
"parentFolderId": null,
"active": true,
"botIds": [
"2a1cf0f0-f35d-46ad-8e61-a15c86b2b312"
],
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
],
"articles": [
{
"id": "4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3",
"title": "Refund policy",
"mainKnowledge": "Customers can request a refund within 30 days of purchase.",
"agentInstruction": "Use this article for refund eligibility questions.",
"questions": [
"Can I get a refund?"
],
"keywords": [
"refund",
"billing"
],
"escalation": false,
"parentFolderId": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"isDraft": false,
"origin": "api",
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
]
}
Folders & assignments
Get knowledge folders
Return the current knowledge-tree snapshot, optionally scoped to one agent.
GET
/
v2
/
hc-folders
/
public
curl --request GET \
--url 'https://api-prod.usefini.com/v2/hc-folders/public?botId=4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3' \
--header 'Authorization: Bearer fini_your_api_key'
const response = await fetch('https://api-prod.usefini.com/v2/hc-folders/public?botId=2a1cf0f0-f35d-46ad-8e61-a15c86b2b312', {
method: 'GET',
headers: {
Authorization: 'Bearer fini_your_api_key'
}
});
const data = await response.json();
import requests
response = requests.get(
"https://api-prod.usefini.com/v2/hc-folders/public?botId=2a1cf0f0-f35d-46ad-8e61-a15c86b2b312",
headers={"Authorization": "Bearer fini_your_api_key"},
)
data = response.json()
{
"folders": [
{
"id": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"title": "Billing",
"description": "Refunds, invoices, and subscription changes.",
"parentFolderId": null,
"active": true,
"botIds": [
"2a1cf0f0-f35d-46ad-8e61-a15c86b2b312"
],
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
],
"articles": [
{
"id": "4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3",
"title": "Refund policy",
"mainKnowledge": "Customers can request a refund within 30 days of purchase.",
"agentInstruction": "Use this article for refund eligibility questions.",
"questions": [
"Can I get a refund?"
],
"keywords": [
"refund",
"billing"
],
"escalation": false,
"parentFolderId": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"isDraft": false,
"origin": "api",
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
]
}
Use this route to inspect the current knowledge folders snapshot in the workspace.
Headers
string
required
Bearer token containing your Fini workspace API key. Format:
Bearer fini_... The key needs read scope.Query parameters
string
Optional agent ID. When supplied, Fini returns the tree scoped to that agent’s attached folders.
curl --request GET \
--url 'https://api-prod.usefini.com/v2/hc-folders/public?botId=4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3' \
--header 'Authorization: Bearer fini_your_api_key'
const response = await fetch('https://api-prod.usefini.com/v2/hc-folders/public?botId=2a1cf0f0-f35d-46ad-8e61-a15c86b2b312', {
method: 'GET',
headers: {
Authorization: 'Bearer fini_your_api_key'
}
});
const data = await response.json();
import requests
response = requests.get(
"https://api-prod.usefini.com/v2/hc-folders/public?botId=2a1cf0f0-f35d-46ad-8e61-a15c86b2b312",
headers={"Authorization": "Bearer fini_your_api_key"},
)
data = response.json()
{
"folders": [
{
"id": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"title": "Billing",
"description": "Refunds, invoices, and subscription changes.",
"parentFolderId": null,
"active": true,
"botIds": [
"2a1cf0f0-f35d-46ad-8e61-a15c86b2b312"
],
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
],
"articles": [
{
"id": "4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3",
"title": "Refund policy",
"mainKnowledge": "Customers can request a refund within 30 days of purchase.",
"agentInstruction": "Use this article for refund eligibility questions.",
"questions": [
"Can I get a refund?"
],
"keywords": [
"refund",
"billing"
],
"escalation": false,
"parentFolderId": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"isDraft": false,
"origin": "api",
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
]
}
Response
Returns a knowledge folders snapshot object. See Organize knowledge for the shared snapshot fields.The workspace-API-key response includes
id, createdAt, updatedAt, and snapshotObjV2.Errors
401 Unauthorized
401 Unauthorized
The API key is missing, malformed, revoked, or invalid.
403 Forbidden
403 Forbidden
The API key does not include the
read scope.The snapshot is empty
The snapshot is empty
This usually means the workspace has no folders yet, or no folders attached to the
botId you requested.Was this page helpful?
⌘I

