DownloadsDocsWikiWhyFeaturesPricing

Quickstart

Five ways to make the same request against Verdict's Direct API. All of them need one thing from your API keys page: a vrd_live_ key.

Authentication

Every request carries the key as a bearer token. There is no separate API secret or account id to pass alongside it.

Authorization: Bearer vrd_live_xxxxxxxxxxxxxxxxxxxx

curl

Streaming, with the bearer token and JSON body inline.

curl https://api.verdictide.com/v1/chat/completions \
  -H "Authorization: Bearer vrd_live_..." \
  -H "Content-Type: application/json" \
  -N \
  -d '{
    "model": "verdict/verdict-4-20b",
    "stream": true,
    "messages": [{"role": "user", "content": "Explain streaming."}]
  }'

Python (OpenAI SDK)

The official openai package, unmodified — only base_url changes.

from openai import OpenAI
client = OpenAI(base_url="https://api.verdictide.com/v1", api_key="vrd_live_...")
stream = client.chat.completions.create(
    model="verdict/verdict-4-20b",
    messages=[{"role": "user", "content": "Explain streaming."}],
    stream=True,
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

JavaScript (openai npm)

The official openai npm package.

import OpenAI from "openai"
const client = new OpenAI({ baseURL: "https://api.verdictide.com/v1", apiKey: "vrd_live_..." })
const res = await client.chat.completions.create({
  model: "verdict/verdict-4-20b",
  messages: [{ role: "user", content: "Hello" }],
})
console.log(res.choices[0].message.content)

Aider

Point Aider's OpenAI-compatible base at Verdict.

export OPENAI_API_KEY="vrd_live_..."
aider --openai-api-base https://api.verdictide.com/v1 \
      --model openai/verdict-4-20b

OpenCode

Add Verdict as a custom OpenAI-compatible provider in opencode.json.

export VERDICT_API_KEY="vrd_live_..."
{
  "provider": {
    "verdict": {
      "npm": "@ai-sdk/openai-compatible",
      "options": { "baseURL": "https://api.verdictide.com/v1" },
      "models": { "verdict-4-20b": {} }
    }
  }
}

Learn More