Query Knowledge Base
curl --request POST \
--url https://api.ravan.ai/api/v1/rag/query \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"org_id": "<string>",
"kb_id": "<string>",
"query": "<string>"
}
'import requests
url = "https://api.ravan.ai/api/v1/rag/query"
payload = {
"org_id": "<string>",
"kb_id": "<string>",
"query": "<string>"
}
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({org_id: '<string>', kb_id: '<string>', query: '<string>'})
};
fetch('https://api.ravan.ai/api/v1/rag/query', 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.ravan.ai/api/v1/rag/query",
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([
'org_id' => '<string>',
'kb_id' => '<string>',
'query' => '<string>'
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.ravan.ai/api/v1/rag/query"
payload := strings.NewReader("{\n \"org_id\": \"<string>\",\n \"kb_id\": \"<string>\",\n \"query\": \"<string>\"\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))
}HttpResponse<String> response = Unirest.post("https://api.ravan.ai/api/v1/rag/query")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"org_id\": \"<string>\",\n \"kb_id\": \"<string>\",\n \"query\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ravan.ai/api/v1/rag/query")
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 \"org_id\": \"<string>\",\n \"kb_id\": \"<string>\",\n \"query\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"data": {
"results": [
{
"text": "<string>",
"score": 123,
"doc_id": "<string>",
"metadata": {}
}
]
}
}RAG Knowledge Base API
Query Knowledge Base
Query Knowledge Base.
POST
/
api
/
v1
/
rag
/
query
Query Knowledge Base
curl --request POST \
--url https://api.ravan.ai/api/v1/rag/query \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"org_id": "<string>",
"kb_id": "<string>",
"query": "<string>"
}
'import requests
url = "https://api.ravan.ai/api/v1/rag/query"
payload = {
"org_id": "<string>",
"kb_id": "<string>",
"query": "<string>"
}
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({org_id: '<string>', kb_id: '<string>', query: '<string>'})
};
fetch('https://api.ravan.ai/api/v1/rag/query', 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.ravan.ai/api/v1/rag/query",
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([
'org_id' => '<string>',
'kb_id' => '<string>',
'query' => '<string>'
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.ravan.ai/api/v1/rag/query"
payload := strings.NewReader("{\n \"org_id\": \"<string>\",\n \"kb_id\": \"<string>\",\n \"query\": \"<string>\"\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))
}HttpResponse<String> response = Unirest.post("https://api.ravan.ai/api/v1/rag/query")
.header("X-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"org_id\": \"<string>\",\n \"kb_id\": \"<string>\",\n \"query\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ravan.ai/api/v1/rag/query")
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 \"org_id\": \"<string>\",\n \"kb_id\": \"<string>\",\n \"query\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>",
"data": {
"results": [
{
"text": "<string>",
"score": 123,
"doc_id": "<string>",
"metadata": {}
}
]
}
}Authorizations
string
required
Your Agni API key used to authenticate the request. Pass it in the
X-Api-Key header. Find or rotate it from your Ravan AI account settings.Body
string
required
The organization ID that owns the resource. Use the organization ID from your Agni account.
string
required
The unique knowledge base ID. Use the ID returned by the knowledge base create or list endpoint.
string
required
The natural-language question or search query to run against the knowledge base.
Response
boolean
Whether the request succeeded.
string
Human-readable status message.
object
⌘I

