CLIENT SETUP

Keep your client. Change the route.

AIWave uses an OpenAI-compatible request shape. Set the exact Base URL, keep your key server-side, and use a current model ID.

The one value that must be exact

https://aiwave.live/v1 is the Base URL for all three setup paths below. Do not add /chat/completions to the Base URL, and do not remove /v1.

1. OpenAI SDK

Change base_url in Python or baseURL in JavaScript. The request body keeps the OpenAI-compatible shape.

Python

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["AIWAVE_API_KEY"],
    base_url="https://aiwave.live/v1",
)
response = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "Reply with OK."}],
)
print(response.choices[0].message.content)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.AIWAVE_API_KEY,
  baseURL: "https://aiwave.live/v1",
});

const response = await client.chat.completions.create({
  model: "deepseek-v4-flash",
  messages: [{ role: "user", content: "Reply with OK." }],
});
console.log(response.choices[0].message.content);

curl

curl https://aiwave.live/v1/chat/completions \
  -H "Authorization: Bearer $AIWAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"deepseek-v4-flash","messages":[{"role":"user","content":"Reply with OK."}]}'

2. Common chat apps

When an app offers a custom provider or OpenAI-compatible provider, use these fields.

FieldValueWhat it controls
PrefixNoneDo not add a provider prefix to the model ID.
API TypeOpenAI-compatibleUse the app’s OpenAI-compatible chat-completions adapter.
Base URLhttps://aiwave.live/v1Keep /v1; do not append /chat/completions.
API KeyAIWAVE_API_KEYPaste the key into the app’s secret field; never put it in a public prompt or screenshot.
Model IDdeepseek-v4-flashUse the exact current ID from Models; do not invent an alias.
If the app has both Base URL and Endpoint fields

Put https://aiwave.live/v1 in Base URL and leave a separate endpoint field at its default, unless the app explicitly asks for the full chat-completions path.

3. Cursor and Continue

Both tools can use an OpenAI-compatible custom provider. Keep the configuration small, then make one short test call.

Cursor

Open Settings, find the model provider or OpenAI-compatible provider section, set the Base URL to https://aiwave.live/v1, paste the key in the secret field, and select the exact Model ID from Models. Start with a short prompt before enabling larger context or agent actions.

Continue

In the model configuration, choose the OpenAI-compatible provider, set apiBase to https://aiwave.live/v1, set the model to deepseek-v4-flash, and load the key from an environment variable or the tool’s secret store. Do not commit the configuration with a key value.

Verify before debugging the tool

Run the curl smoke test first. If curl returns 200 but the editor fails, inspect the editor’s provider type, Base URL normalization, selected model ID, and whether it loaded the current environment variable.

The four setup mistakes to check first

SymptomLikely causeFix
404 or an HTML pageWrong domain or missing /v1Use https://aiwave.live/v1.
401Key has whitespace, is not loaded, or was placed in the wrong providerReload the key into the tool’s secret store and do not print it.
Model not foundAlias or stale model IDCopy the exact ID from the current Models page.
Request reaches OpenAIAIWave key was kept with api.openai.comChange the client Base URL; the key and route must belong to the same provider.

Next steps