Connect the VNAI Pro API to 9Router
Add the VNAI Pro endpoint, API key, and models to 9Router as an OpenAI-compatible provider
9Router is a client tool and proxy that runs on your machine. This page only covers adding the VNAI Pro API as an upstream provider in 9Router.
Two different API keys
Use your VNAI Pro API key under Providers so 9Router can call models from this service. Do not use the local key generated by 9Router to protect 9Router's own endpoint.
Prepare an API key and model
- Create a VNAI Pro API key at https://api.vnaipro.app/keys.
- Choose the Auto group or a group containing the model you want to use.
- Check the account balance, key quota, and model restrictions.
- Open Check models, enter the key, and copy the exact model ID.
You will use these values:
| Field | Value |
|---|---|
| Base URL | https://api.vnaipro.app/v1 |
| API key | The key created on the VNAI Pro website |
| Model ID | The ID from Check models or the /v1/models endpoint |
Do not use the documentation domain as the Base URL or paste a full request URL such as
/v1/chat/completions or /v1/responses.
Install and run 9Router
Node.js 18 or later is required:
npm install -g 9router
9routerThe dashboard opens at http://localhost:20128. To prevent it from opening the browser automatically:
9router --no-browserSign in and immediately change the default password under Settings → Change Password.
Create the OpenAI-compatible provider
Open Providers in the dashboard. Under Custom Providers (OpenAI/Anthropic Compatible), click Add OpenAI Compatible and enter:
| 9Router field | Recommended value |
|---|---|
| Name | VNAI Pro |
| Prefix | vnai |
| API Type | Chat Completions |
| Base URL | https://api.vnaipro.app/v1 |
| API Key (for Check) | Your VNAI Pro API key |
| Model ID (optional) | The exact model ID copied earlier |
Click Check. When the status is Valid, click Create.
Important: Check does not save the API key
API Key (for Check) only validates the connection. After clicking Create, you must still open the new provider and complete Add API Key below. Otherwise, the provider has no credential for real requests.
Save the API key to the provider
Open the new VNAI Pro card, click Add API Key, and enter:
| Field | Value |
|---|---|
| Name | A recognizable name such as VNAI Pro - Main |
| API Key | Your VNAI Pro API key |
| Default Model | The exact model ID without the vnai/ prefix |
| Priority | 1 |
Click Check, then Save. The provider should show an active status. 9Router uses the prefix
only when exposing model names such as vnai/MODEL_ID.
Import and test models
On the VNAI Pro provider page:
- Click Import from /models to load models available to the API key.
- If the endpoint does not return a catalog, enter an ID under Model ID and click Add.
- Click the Test icon beside a model to verify it.
Use only IDs returned for that API key. A display name shown on the website may differ from the ID accepted by the API.
When to select Responses API
Use Chat Completions for the first setup. If your model or group requires /v1/responses, create
a second OpenAI-compatible provider:
| Field | Value |
|---|---|
| Name | VNAI Pro Responses |
| Prefix | vnai-responses |
| API Type | Responses API |
| Base URL | https://api.vnaipro.app/v1 |
Then repeat Add API Key. Separate prefixes prevent confusion between the two protocols.
Troubleshooting
Check returns 401 or 403
The API key is invalid, revoked, or lacks access to the group/model. Review or create a key at
https://api.vnaipro.app/keys. Do not add a Bearer prefix in the API Key field.
Check returns 404 or HTML
The Base URL is wrong. Use https://api.vnaipro.app/v1; do not use the docs domain or append
/models, /chat/completions, or /responses to the Base URL.
Check is valid but the provider does not work
You only entered API Key (for Check) while creating the node. Open VNAI Pro → Add API Key, enter the key and Default Model, then click Save.
model not found
Open Check models or use Import from /models, then copy the exact ID. Confirm that
the key's group contains the model and that Default Model does not include the vnai/ prefix.
Models cannot be imported
If /v1/models is unavailable but you know the model ID, add it manually. If the model test also
fails, check the balance, quota, model access, and selected API Type.
429
Check the API key's remaining quota and the account balance, then reduce concurrent requests if needed.
See the 9Router repository.