Add file to the AI store
curl --request POST \
--url https://api.getfernand.com/organization/rag/sources/files \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"files": [
{
"name": "documentation.pdf",
"type": "application/pdf",
"content": "JVBERi0xLjQKJeLjz9MK..."
}
]
}
'import requests
url = "https://api.getfernand.com/organization/rag/sources/files"
payload = { "files": [
{
"name": "documentation.pdf",
"type": "application/pdf",
"content": "JVBERi0xLjQKJeLjz9MK..."
}
] }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
files: [
{
name: 'documentation.pdf',
type: 'application/pdf',
content: 'JVBERi0xLjQKJeLjz9MK...'
}
]
})
};
fetch('https://api.getfernand.com/organization/rag/sources/files', 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.getfernand.com/organization/rag/sources/files",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'files' => [
[
'name' => 'documentation.pdf',
'type' => 'application/pdf',
'content' => 'JVBERi0xLjQKJeLjz9MK...'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.getfernand.com/organization/rag/sources/files")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}"
response = http.request(request)
puts response.read_bodypackage main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.getfernand.com/organization/rag/sources/files"
payload := strings.NewReader("{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}using RestSharp;
var options = new RestClientOptions("https://api.getfernand.com/organization/rag/sources/files");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("X-API-Key", "<api-key>");
request.AddJsonBody("{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);HttpResponse<String> response = Unirest.post("https://api.getfernand.com/organization/rag/sources/files")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}")
.asString();{}{
"error": "Maximum size of the vector store exceeded."
}Add file to the AI store
POST
/
organization
/
rag
/
sources
/
files
Add file to the AI store
curl --request POST \
--url https://api.getfernand.com/organization/rag/sources/files \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"files": [
{
"name": "documentation.pdf",
"type": "application/pdf",
"content": "JVBERi0xLjQKJeLjz9MK..."
}
]
}
'import requests
url = "https://api.getfernand.com/organization/rag/sources/files"
payload = { "files": [
{
"name": "documentation.pdf",
"type": "application/pdf",
"content": "JVBERi0xLjQKJeLjz9MK..."
}
] }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
files: [
{
name: 'documentation.pdf',
type: 'application/pdf',
content: 'JVBERi0xLjQKJeLjz9MK...'
}
]
})
};
fetch('https://api.getfernand.com/organization/rag/sources/files', 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.getfernand.com/organization/rag/sources/files",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'files' => [
[
'name' => 'documentation.pdf',
'type' => 'application/pdf',
'content' => 'JVBERi0xLjQKJeLjz9MK...'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.getfernand.com/organization/rag/sources/files")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}"
response = http.request(request)
puts response.read_bodypackage main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.getfernand.com/organization/rag/sources/files"
payload := strings.NewReader("{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}using RestSharp;
var options = new RestClientOptions("https://api.getfernand.com/organization/rag/sources/files");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("X-API-Key", "<api-key>");
request.AddJsonBody("{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);HttpResponse<String> response = Unirest.post("https://api.getfernand.com/organization/rag/sources/files")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"files\": [\n {\n \"name\": \"documentation.pdf\",\n \"type\": \"application/pdf\",\n \"content\": \"JVBERi0xLjQKJeLjz9MK...\"\n }\n ]\n}")
.asString();{}{
"error": "Maximum size of the vector store exceeded."
}Uploads one or more files to the AI store. Supports PDF, DOC, DOCX, and TXT formats. Files must be base64 encoded and cannot exceed the organization’s vector store size limit. All files are processed asynchronously.
Authorizations
Body
application/json
Array of files to upload (max 10MB per file).
Show child attributes
Show child attributes
Response
Files queued for processing.
The response is of type object.
Was this page helpful?
⌘I