curl --request GET \
--url https://api.anam.ai/v1/knowledge/documents/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.anam.ai/v1/knowledge/documents/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.anam.ai/v1/knowledge/documents/{id}', 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.anam.ai/v1/knowledge/documents/{id}",
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: Bearer <token>"
],
]);
$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.anam.ai/v1/knowledge/documents/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.anam.ai/v1/knowledge/documents/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anam.ai/v1/knowledge/documents/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "00000000-0000-0000-0000-000000000000",
"knowledgeFolderId": "00000000-0000-0000-0000-000000000000",
"filename": "getting-started.pdf",
"fileType": "application/pdf",
"fileSize": 248320,
"fileUrl": "https://cdn.anam.ai/knowledge/getting-started.pdf",
"status": "READY",
"errorMessage": null,
"chunkSize": null,
"chunkOverlap": null,
"appliedChunking": {
"strategy": "paragraph",
"chunkSize": 800,
"chunkOverlap": 100,
"source": "folder",
"appliedAt": "2026-04-20T10:01:12.000Z"
},
"createdAt": "2026-04-20T10:00:00.000Z",
"updatedAt": "2026-04-20T10:01:12.000Z"
}get knowledge document
Get a single document by ID
curl --request GET \
--url https://api.anam.ai/v1/knowledge/documents/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.anam.ai/v1/knowledge/documents/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.anam.ai/v1/knowledge/documents/{id}', 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.anam.ai/v1/knowledge/documents/{id}",
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: Bearer <token>"
],
]);
$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.anam.ai/v1/knowledge/documents/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.anam.ai/v1/knowledge/documents/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anam.ai/v1/knowledge/documents/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "00000000-0000-0000-0000-000000000000",
"knowledgeFolderId": "00000000-0000-0000-0000-000000000000",
"filename": "getting-started.pdf",
"fileType": "application/pdf",
"fileSize": 248320,
"fileUrl": "https://cdn.anam.ai/knowledge/getting-started.pdf",
"status": "READY",
"errorMessage": null,
"chunkSize": null,
"chunkOverlap": null,
"appliedChunking": {
"strategy": "paragraph",
"chunkSize": 800,
"chunkOverlap": 100,
"source": "folder",
"appliedAt": "2026-04-20T10:01:12.000Z"
},
"createdAt": "2026-04-20T10:00:00.000Z",
"updatedAt": "2026-04-20T10:01:12.000Z"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique identifier of the knowledge document
Response
Successfully retrieved document
A single file uploaded into a knowledge group. Retrieved chunks reference it by ID.
Unique identifier for the document.
ID of the knowledge group this document belongs to.
Original filename as uploaded.
MIME type or extension-derived file type.
Size of the file in bytes.
Internal URL at which the file is stored.
Current processing state. Only READY documents are searchable.
UPLOADED, PROCESSING, READY, FAILED Failure reason when status is FAILED, otherwise null.
Chunk size override set at upload, in tokens; null when not overridden. When both chunkSize and chunkOverlap are null, the document uses its group's settings. When only chunkOverlap is set, a null chunkSize means the default of 350.
Chunk overlap override set at upload, in tokens; null when not overridden. When both chunkSize and chunkOverlap are null, the document uses its group's settings. When only chunkSize is set, a null chunkOverlap means the default of 0.
Settings the last successful processing used. Null until the document has been processed.
Show child attributes
Show child attributes
Timestamp when the document was uploaded.
Timestamp when the document record was last updated.
Was this page helpful?

