Specialized Models
API-only image, embedding, audio, and rerank products billed from balance.
On this page
- Caedral Vision — image generation
- Caedral E1 Small — proprietary embeddings (384 dimensions, 512-token context, L2-normalized). Request with model caedral-embed; inference runs caedral-embed-e1-small-v1 on Caedral infrastructure.
- Caedral Voice V1 — native English speech
- Third-party speech (caedral-voice)
- Transcriptions — speech to text
- Caedral Rerank — document reranking
- Billing and errors
Embeddings, rerank, images, speech, and transcriptions share the same subscription API key as chat. Caedral E1 Small (caedral-embed-e1-small-v1) is hosted on Caedral. Rerank runs BAAI/bge-reranker-v2-m3 on Caedral infrastructure. Specialized products map publicly to their upstream models: caedral-vision routes to google/gemini-3.1-flash-image and caedral-voice routes to openai/gpt-audio — call either the product ID or the upstream ID. Caedral's own voice, Caedral Voice V1 (model ID caedral-voice-1, English, voices caedral-f1/f2/m1/m2), is also served on this endpoint by Caedral infrastructure. Published rates are on /models.
| Product | Endpoint | Model ID | Billing |
|---|---|---|---|
| Caedral Vision | POST /v1/images/generations | Any image catalog ID | See /models |
| Caedral E1 Small | POST /v1/embeddings | caedral-embed-e1-small-v1 | Caedral Models pool — $0.001 / 1M tokens |
| Caedral Voice V1 | POST /v1/audio/speech | caedral-voice-1 | Caedral Models pool — $0.30 / 1M input tokens |
| Speech (third-party) | POST /v1/audio/speech | caedral-voice or any speech catalog ID | See /models |
| Transcriptions | POST /v1/audio/transcriptions | Any transcription catalog ID | See /models |
| Caedral Rerank | POST /v1/rerank | BAAI/bge-reranker-v2-m3 | External Models pool — $0.0005 / request |
Caedral Vision — image generation
const result = await caedral.images.generate({ model: "caedral-vision", prompt: "A minimalist logo for an AI infrastructure company", n: 1,}); console.log(result.data[0]?.url);curl https://api.caedral.com/v1/images/generations \ -H "Authorization: Bearer $CAEDRAL_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"caedral-vision","prompt":"A sunset over mountains"}'Caedral E1 Small — proprietary embeddings (384 dimensions, 512-token context, L2-normalized). Request with model caedral-embed; inference runs caedral-embed-e1-small-v1 on Caedral infrastructure.
const result = await caedral.embeddings.create({ model: "caedral-embed", input: ["Caedral routes frontier models through one API"],}); console.log(result.data[0]?.embedding.length); // 384curl https://api.caedral.com/v1/embeddings \ -H "Authorization: Bearer $CAEDRAL_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"caedral-embed","input":"Hello world"}'Caedral Voice V1 — native English speech
Model caedral-voice-1, voices caedral-f1 / caedral-f2 / caedral-m1 / caedral-m2. WAV 24 kHz mono PCM16. Max 2000 characters. Speed 0.5–2.0. Full examples: /docs/caedral-voice.
curl https://api.caedral.com/v1/audio/speech \ -H "Authorization: Bearer $CAEDRAL_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"caedral-voice-1","voice":"caedral-f1","input":"Welcome to Caedral.","speed":1.0,"response_format":"wav"}' \ --output welcome.wavThird-party speech (caedral-voice)
const result = await caedral.audio.generate({ model: "caedral-voice", input: "Welcome to Caedral.", voice: "alloy",}); console.log(result.choices?.[0]?.message);curl https://api.caedral.com/v1/audio/speech \ -H "Authorization: Bearer $CAEDRAL_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"caedral-voice","input":"Hello from Caedral"}'Transcriptions — speech to text
Send base64 audio to POST /v1/audio/transcriptions. Use a transcription model ID from /models (for example openai/whisper-large-v3). Whisper-class models are billed by audio duration; others may bill per token. The live rate is on the model page.
curl https://api.caedral.com/v1/audio/transcriptions \ -H "Authorization: Bearer $CAEDRAL_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"openai/whisper-large-v3","input_audio":{"data":"<base64>","format":"wav"}}'Caedral Rerank — document reranking
const result = await caedral.rerank.create({ model: "caedral-rerank", query: "How does Caedral billing work?", documents: [ "API usage draws from subscription pools (or on-demand when enabled).", "Specialized products bill the External Models pool at published rates.", "Free-tier catalog chat models cost $0 with an active subscription.", ], top_n: 2,}); console.log(result.results);curl https://api.caedral.com/v1/rerank \ -H "Authorization: Bearer $CAEDRAL_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"caedral-rerank","query":"billing","documents":["doc a","doc b"]}'Billing and errors
All specialized endpoints require a valid API key (Bearer token). Usage draws from included pools at published rates. If pools are exhausted, the API returns HTTP 402 with error type insufficient_balance unless on-demand is enabled. Manage plans at /dashboard/billing.