List knowledge bases
curl --request GET \
--url https://api.zeroruntime.ai/v1/knowledge-bases \
--header 'Authorization: <api-key>'import requests
url = "https://api.zeroruntime.ai/v1/knowledge-bases"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.zeroruntime.ai/v1/knowledge-bases', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zeroruntime.ai/v1/knowledge-bases",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.zeroruntime.ai/v1/knowledge-bases"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.zeroruntime.ai/v1/knowledge-bases")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeroruntime.ai/v1/knowledge-bases")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"knowledgeId": "k7x2m",
"name": "pricing.pdf",
"type": "pdf",
"status": "ready",
"statusReason": null,
"failureCode": null,
"sizeInBytes": 482113,
"pageCount": 12,
"sectionCount": 48,
"charCount": 61204,
"folderId": null,
"currentVersion": 1,
"latestVersion": 1,
"createdAt": "2026-10-13T09:30:00.000Z",
"updatedAt": "2026-10-13T09:30:41.000Z"
}
],
"pageInfo": {
"currentPage": 1,
"perPage": 15,
"lastPage": 1,
"total": 1
}
}{
"message": "Invalid payload",
"errors": {
"formErrors": [
"<string>"
],
"fieldErrors": {}
}
}{
"error": "<string>"
}Knowledge bases
List knowledge bases
Lists your knowledge bases, newest first.
By default only the top level is listed, or the folder in folderId. Send flat=true to list every knowledge base.
GET
/
v1
/
knowledge-bases
List knowledge bases
curl --request GET \
--url https://api.zeroruntime.ai/v1/knowledge-bases \
--header 'Authorization: <api-key>'import requests
url = "https://api.zeroruntime.ai/v1/knowledge-bases"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.zeroruntime.ai/v1/knowledge-bases', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zeroruntime.ai/v1/knowledge-bases",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.zeroruntime.ai/v1/knowledge-bases"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.zeroruntime.ai/v1/knowledge-bases")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeroruntime.ai/v1/knowledge-bases")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"knowledgeId": "k7x2m",
"name": "pricing.pdf",
"type": "pdf",
"status": "ready",
"statusReason": null,
"failureCode": null,
"sizeInBytes": 482113,
"pageCount": 12,
"sectionCount": 48,
"charCount": 61204,
"folderId": null,
"currentVersion": 1,
"latestVersion": 1,
"createdAt": "2026-10-13T09:30:00.000Z",
"updatedAt": "2026-10-13T09:30:41.000Z"
}
],
"pageInfo": {
"currentPage": 1,
"perPage": 15,
"lastPage": 1,
"total": 1
}
}{
"message": "Invalid payload",
"errors": {
"formErrors": [
"<string>"
],
"fieldErrors": {}
}
}{
"error": "<string>"
}Authorizations
Your API token, sent raw (no Bearer prefix).
Query Parameters
true lists every knowledge base, whatever folder it's in. Without it, the first page also includes the level's folders ahead of the knowledge bases.
Available options:
true, false Required range:
x >= 1Required range:
1 <= x <= 100Case-insensitive match on the name or knowledgeId.
Only these types. Repeat it for several.
Available options:
pdf, txt, csv, json, docx, md, url Only these statuses. Repeat it for several.
Available options:
processing, ready, failed List this folder's contents.