Use metadata
Attach extra fields to your documents. Metadata is returned with every search result — perfect for URLs, tags, prices, or anything your UI needs.
import { Etoile } from "@etoile-dev/client";
const etoile = new Etoile({
apiKey: process.env.ETOILE_API_KEY,
});
await etoile.index({
id: "starry-night",
collection: "paintings",
title: "The Starry Night",
content: "A swirling night sky over a village...",
metadata: {
artist: "Vincent van Gogh",
year: 1889,
url: "/paintings/starry-night",
},
});const response = await fetch("https://etoile.dev/api/v1/index", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.ETOILE_SECRET_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
id: "starry-night",
collection: "paintings",
title: "The Starry Night",
content: "A swirling night sky over a village...",
metadata: {
artist: "Vincent van Gogh",
year: 1889,
url: "/paintings/starry-night",
},
}),
});curl -X POST "https://etoile.dev/api/v1/index" \
-H "Authorization: Bearer $ETOILE_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"id": "starry-night",
"collection": "paintings",
"title": "The Starry Night",
"content": "A swirling night sky over a village...",
"metadata": {
"artist": "Vincent van Gogh",
"year": 1889,
"url": "/paintings/starry-night"
}
}'Related
- Update metadata — patch without re-indexing
- Index document (POST) — API reference
- Search — metadata is returned in results