Apigator by MixerBox

Cookbook

Recipes

Short, copy-paste recipes for common tasks and the tools you already use. Everything points at https://api.apigator.ai/v1 with your Apigator key. Full reference: /docs.

Tasks

Chat (Python)

from openai import OpenAI
client = OpenAI(base_url="https://api.apigator.ai/v1", api_key="sk-...")
r = client.chat.completions.create(model="gpt-4o",
    messages=[{"role":"user","content":"Hello!"}])
print(r.choices[0].message.content)

Generate an image

curl https://api.apigator.ai/v1/images/generations \
  -H "Authorization: Bearer sk-..." \
  -d '{"model":"openai/gpt-image-1","prompt":"a red crocodile mascot","n":1}'

Transcribe audio (speech-to-text)

curl https://api.apigator.ai/v1/audio/transcriptions \
  -H "Authorization: Bearer sk-..." \
  -F model="groq/whisper-large-v3" \
  -F file=@speech.mp3

Embeddings → RAG

Embed your chunks, store the vectors, embed the query, retrieve nearest, then answer with chat.

from openai import OpenAI
client = OpenAI(base_url="https://api.apigator.ai/v1", api_key="sk-...")

def embed(texts):
    r = client.embeddings.create(model="openai/text-embedding-3-small", input=texts)
    return [d.embedding for d in r.data]

# 1) embed + store your docs' vectors  2) embed the query  3) retrieve top-k by cosine
# 4) pass the retrieved text as context to client.chat.completions.create(...)

Decision model: classify & route (TypeSafe Jev)

Ask typed questions about any text and get calibrated probabilities back — no parsing. Not a chat model; it has its own endpoint. More: /jev.

import requests

r = requests.post(
    "https://api.apigator.ai/typesafe/v1/systemone",
    headers={"Authorization": "Bearer sk-..."},
    json={
        "model": "jev-latest",
        "state": "Help! My payouts have been failing for 3 days.",
        "questions": {
            "department": {"type": "choice", "instructions": "Which team should handle this?",
                           "criteria": {"billing": "Payments", "technical": "Bugs, integrations", "sales": "Pricing"}},
            "is_urgent": {"type": "noul", "instructions": "Does this convey urgency?"},
        },
    },
)
a = r.json()["answers"]
print(a["department"]["choice"], a["department"]["confidence"])  # billing 0.81
print(a["is_urgent"]["noul"])                                    # 0.95 = P(yes)

Use with your tools

Apigator is OpenAI-compatible, so anything that lets you set a base URL + key works.

LangChain (Python)

from langchain_openai import ChatOpenAI
llm = ChatOpenAI(base_url="https://api.apigator.ai/v1", api_key="sk-...", model="gpt-4o")

Vercel AI SDK (Node)

import { createOpenAI } from "@ai-sdk/openai";
const apigator = createOpenAI({ baseURL: "https://api.apigator.ai/v1", apiKey: process.env.APIGATOR_KEY });
// const { text } = await generateText({ model: apigator("gpt-4o"), prompt: "Hi" });

Cursor

Settings → Models → OpenAI API Key: set Override Base URL to https://api.apigator.ai/v1, paste your Apigator key, and add a model id (e.g. gpt-4o).

Cline / Continue / Aider

Pick the OpenAI Compatible provider; Base URL https://api.apigator.ai/v1, API key sk-..., model any id from /models. For Aider: OPENAI_API_BASE=https://api.apigator.ai/v1 OPENAI_API_KEY=sk-... aider --model gpt-4o.

Claude Code CLI

One command: curl -fsSL https://apigator.ai/setup-claude-cli.sh | bash. Full guide: /claude-cli.