curl --request POST \
--url https://{projectHost}/collections/{collectionName}/docs/fetch \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"ids": [
"example-doc-id-1",
"example-doc-id-2"
]
}
'import requests
url = "https://{projectHost}/collections/{collectionName}/docs/fetch"
payload = { "ids": ["example-doc-id-1", "example-doc-id-2"] }
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({ids: ['example-doc-id-1', 'example-doc-id-2']})
};
fetch('https://{projectHost}/collections/{collectionName}/docs/fetch', 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://{projectHost}/collections/{collectionName}/docs/fetch",
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([
'ids' => [
'example-doc-id-1',
'example-doc-id-2'
]
]),
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://{projectHost}/collections/{collectionName}/docs/fetch"
payload := strings.NewReader("{\n \"ids\": [\n \"example-doc-id-1\",\n \"example-doc-id-2\"\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))
}HttpResponse<String> response = Unirest.post("https://{projectHost}/collections/{collectionName}/docs/fetch")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ids\": [\n \"example-doc-id-1\",\n \"example-doc-id-2\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{projectHost}/collections/{collectionName}/docs/fetch")
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 \"ids\": [\n \"example-doc-id-1\",\n \"example-doc-id-2\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"total": 2,
"took": 10,
"docs": [
{
"collection": "example-collection-name",
"doc": {
"example-field1": "example-value1",
"example-field2": [
0.1,
0.2,
0.3
]
}
},
{
"collection": "example-collection-name",
"doc": {
"example-field1": "example-value2",
"example-field2": [
0.4,
0.5,
0.6
]
}
}
],
"isDocsInline": true
}{
"message": "Invalid request"
}{
"message": "Authentication failed"
}{
"message": "Resource not found"
}{
"message": "<string>"
}{
"message": "Too many requests"
}{
"message": "Internal server error"
}{
"message": "<string>"
}{
"message": "<string>"
}{
"message": "<string>"
}Fetch documents
Lookup and return documents by document IDs from a collection.
curl --request POST \
--url https://{projectHost}/collections/{collectionName}/docs/fetch \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"ids": [
"example-doc-id-1",
"example-doc-id-2"
]
}
'import requests
url = "https://{projectHost}/collections/{collectionName}/docs/fetch"
payload = { "ids": ["example-doc-id-1", "example-doc-id-2"] }
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({ids: ['example-doc-id-1', 'example-doc-id-2']})
};
fetch('https://{projectHost}/collections/{collectionName}/docs/fetch', 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://{projectHost}/collections/{collectionName}/docs/fetch",
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([
'ids' => [
'example-doc-id-1',
'example-doc-id-2'
]
]),
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://{projectHost}/collections/{collectionName}/docs/fetch"
payload := strings.NewReader("{\n \"ids\": [\n \"example-doc-id-1\",\n \"example-doc-id-2\"\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))
}HttpResponse<String> response = Unirest.post("https://{projectHost}/collections/{collectionName}/docs/fetch")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ids\": [\n \"example-doc-id-1\",\n \"example-doc-id-2\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{projectHost}/collections/{collectionName}/docs/fetch")
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 \"ids\": [\n \"example-doc-id-1\",\n \"example-doc-id-2\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"total": 2,
"took": 10,
"docs": [
{
"collection": "example-collection-name",
"doc": {
"example-field1": "example-value1",
"example-field2": [
0.1,
0.2,
0.3
]
}
},
{
"collection": "example-collection-name",
"doc": {
"example-field1": "example-value2",
"example-field2": [
0.4,
0.5,
0.6
]
}
}
],
"isDocsInline": true
}{
"message": "Invalid request"
}{
"message": "Authentication failed"
}{
"message": "Resource not found"
}{
"message": "<string>"
}{
"message": "Too many requests"
}{
"message": "Internal server error"
}{
"message": "<string>"
}{
"message": "<string>"
}{
"message": "<string>"
}Authorizations
Project API Key.
Path Parameters
Collection name.
Body
A list of document IDs to fetch. Note that the maximum number of document IDs is 100.
Overlay eligible pending writes on a directly selected branch's committed data. Defaults to false. Tag and alias reads reject true. Pending bulk imports are excluded. Returns 429 if the pending payload exceeds the consistent-read limit.
If your application need to include vector values in the response, set includeVectors to true.
An object to specify a list of field names to include and/or exclude in the result.
- Option 1
- Option 2
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Read ref selector. A ref that does not exist returns 404 ResourceNotFound; an alias whose target is dangling returns 400 BadRequest.
Show child attributes
Show child attributes
Response
Fetched documents.
Total number of documents returned.
Elapsed time in milliseconds.
Show child attributes
Show child attributes
Whether docs are included inline. When false, docs is empty and the result items must be downloaded from docsUrl.
Presigned download URL when isDocsInline is false. GET the complete URL without forwarding the LambdaDB API key. Returns a JSON array of result items, not an object with a docs field.
Was this page helpful?