TypeScript SDK
import { NinjaChat } from "@ninjachat/sdk";
const client = new NinjaChat({ apiKey: process.env.NINJACHAT_API_KEY! });
const result = await client.embeddings.create({
model: "text-embedding-3-small", input: ["A document to index"],
});
console.log(result.data[0].embedding);import os
from ninjachat import NinjaChat
client = NinjaChat(api_key=os.environ["NINJACHAT_API_KEY"])
result = client.embeddings.create(
model="text-embedding-3-small", input=["A document to index"],
)
print(result["data"][0]["embedding"])curl --request POST \
--url https://www.ninjachat.ai/api/v1/embeddings \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"input": "<string>"
}
'{
"object": "list",
"model": "<string>",
"data": [
{
"object": "embedding",
"index": 1,
"embedding": [
123
]
}
],
"usage": {
"prompt_tokens": 1,
"total_tokens": 1
},
"cost_usd": 1,
"request_id": "<string>"
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}Media & search
Create embeddings
Exact-model text embeddings. OpenAI text-embedding-3-small: 0.02permillioninputtokens.Voyagevoyage−4−large:0.12 per million. Charges round up to the wallet’s $0.0001 precision. No cross-model fallback or input truncation by default.
POST
/
embeddings
TypeScript SDK
import { NinjaChat } from "@ninjachat/sdk";
const client = new NinjaChat({ apiKey: process.env.NINJACHAT_API_KEY! });
const result = await client.embeddings.create({
model: "text-embedding-3-small", input: ["A document to index"],
});
console.log(result.data[0].embedding);import os
from ninjachat import NinjaChat
client = NinjaChat(api_key=os.environ["NINJACHAT_API_KEY"])
result = client.embeddings.create(
model="text-embedding-3-small", input=["A document to index"],
)
print(result["data"][0]["embedding"])curl --request POST \
--url https://www.ninjachat.ai/api/v1/embeddings \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"input": "<string>"
}
'{
"object": "list",
"model": "<string>",
"data": [
{
"object": "embedding",
"index": 1,
"embedding": [
123
]
}
],
"usage": {
"prompt_tokens": 1,
"total_tokens": 1
},
"cost_usd": 1,
"request_id": "<string>"
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}{
"error": {
"message": "<string>",
"type": "<string>",
"code": "<string>",
"param": "<string>"
}
}Authorizations
Use an API key created in the NinjaChat developer console.
Headers
Safely retry the same logical write without duplicate billing or execution.
Required string length:
1 - 255Body
application/json
Available options:
text-embedding-3-small, voyage-4-large Minimum string length:
1Available options:
float, base64 Available options:
query, document