Models

The two models the API serves, the names to send, their limits and their prices.

On this page

The API serves two models. You pick one with the model field of every request, by its name.

The models

Name to sendContextOutput limitInputCached inputOutput
Raven Flash1M128K$0.50$0.05$2.50
Raven Max1M128K$1.25$0.13$6.25

Context and output limits are in tokens. Prices are in US dollars per 1M tokens and are billed from your prepaid credits; API Credits has the debit formula.

  • Raven Max: Codebase Refactoring, Complex Architecture, Formal Research, Hard Bug Triage.
  • Raven Flash: Autonomous Coding in DCode, Interactive Chat, CI/CD Pipelines, High-Volume Classification.

Both models read images (Vision), call your tools (Tool calling) and can reason before they answer (Reasoning).

Sending the model name

Send the name exactly as the API lists it: Raven Flash or Raven Max, with the space. Letter case does not matter, so raven flash works too. Any other spelling, such as raven-max, is refused with 404 and the code model_not_found; the message lists the names that work.

404 response
{  "error": {    "message": "The model 'raven-max' does not exist. Available models: Raven Flash, Raven Max.",    "type": "invalid_request_error",    "code": "model_not_found"  }}

Every answer names the model in its model field, in the listed form.

Listing the models

GET /v1/models returns the models the API serves. It needs a key and costs nothing.

curl

curl https://api.dipoleml.com/v1/models \  -H "Authorization: Bearer $RAVEN_API_KEY"

python

import osfrom openai import OpenAIclient = OpenAI(    base_url="https://api.dipoleml.com/v1",    api_key=os.environ["RAVEN_API_KEY"],)for model in client.models.list():    print(model.id)
response
{  "object": "list",  "data": [    {"id": "Raven Flash", "object": "model", "created": 1767225600, "owned_by": "dipoleml"},    {"id": "Raven Max", "object": "model", "created": 1767225600, "owned_by": "dipoleml"}  ]}

In the Anthropic SDK's shape

A request that sends an anthropic-version header (as the Anthropic SDK does) gets the same list in that SDK's shape, and may ask for one model by name, with the space written as %20:

curl
curl https://api.dipoleml.com/v1/models/Raven%20Max \  -H "x-api-key: $RAVEN_API_KEY" \  -H "anthropic-version: 2023-06-01"
response
{  "type": "model",  "id": "Raven Max",  "display_name": "Raven Max",  "created_at": "2026-01-01T00:00:00.000Z",  "object": "model",  "created": 1767225600,  "owned_by": "dipoleml"}

The list in this shape also carries has_more (always false), first_id and last_id. See Messages format.