Documentation

Helix API

A unified API for text, image, video, and audio. OpenAI-compatible by default, with native Claude and Gemini paths when you need them.

Quickstart

Keep the SDK you already use. Change the base URL and the key.

import OpenAI from "openai";

const helix = new OpenAI({
  apiKey: process.env.HELIX_API_KEY,
  baseURL: "https://api.helix.dev/v1",
});

const res = await helix.chat.completions.create({
  model: "grok-4.5",
  messages: [{ role: "user", content: "Summarize this PR." }],
});
curl -X POST https://api.helix.dev/v1/chat/completions \
  -H "Authorization: Bearer $HELIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-4.5",
    "messages": [
      { "role": "user", "content": "Introduce Helix in three sentences." }
    ]
  }'

Authentication

Send a Helix key as a Bearer token. Gemini-style x-goog-api-key and Anthropic x-api-key headers are accepted on native routes.

Chat completions

POST /v1/chat/completions is the default. Streaming is SSE. Also supported: /v1/responses, /v1/messages, and /v1beta/models/*.

Failover

Attach fallbacks in the console or send helix.fallbacks in the request body. Helix retries on timeout, 5xx, and provider rate limits without bubbling a new error shape to your client.

Images and video

Images: POST /v1/images/generations. Video: POST /v1/videos then GET /v1/videos/{id}. Seedance, Kling, Veo, and Grok video share that contract.