How to Integrate Gate.AI: Quick Start for Developers
Gate.AI API integration allows developers to access multiple AI models through an OpenAI-compatible API, enabling unified model access, routing, and testing from one integration point. For developers building chatbots, internal tools, agents, workflow automation, or model evaluation scripts, this reduces the need to maintain separate SDK setups for every model provider. This guide covers API key creation, auto routing, manual model selection, the OpenAI-compatible base URL, first request testing, and common setup errors; it does not cover advanced enterprise governance, billing policy design, or custom security architecture.
Prerequisites:
- A Gate.AI account with access to Console settings.
- A working local environment with Python, Node.js, or curl.
What Will You Be Able to Do After This Guide?
After completing this guide, you will be able to create a Gate.AI API key, configure the OpenAI-compatible base URL, send a first API request using model: "auto", and test a specific model ID.
What Can Developers Build with Gate.AI API Integration?
Developers can use Gate.AI API integration to build applications that need access to multiple model families through one OpenAI-compatible request format. Typical use cases include:
| Build Type | What Gate.AI Helps With | Example Output |
|---|---|---|
| Chat applications | Route user messages to supported chat models | Customer support assistant |
| Internal tools | Use one API configuration across teams | AI writing or research helper |
| Agents and workflows | Connect model calls to task automation | Tool-calling assistant |
| Model testing | Compareautorouting with a fixed model ID |
Evaluation script |
| Migration projects | Replace an existing OpenAI-compatible base URL | Multi-model prototype |
Use model: "auto" when you want Gate.AI routing to select a model automatically. Use a specific model ID when your application requires repeatable behavior from a named model.
What Do You Need Before Starting?
You only need two blocking items before starting:
| Requirement | Why It Matters |
|---|---|
| Gate.AI account access | You need Console access to create an API key and check routing settings. |
| A local request method | You need Python, Node.js, or curl to send a test request. |
Do not start by choosing every possible model. First confirm that your API key and base URL work, then test manual model selection.
Step 1: Create a Gate.AI API Key
This step creates the credential your application will use to authenticate API requests.
Action:
- Go to
gate.ai. - Choose a login method and authorize your account.
- Open
Console → Settings → API keys. - Select
Create a key. - Copy the API key immediately and store it securely.
You should see the new API key listed in the API key area. If the secret value is only shown once, copy the secret before closing the creation window.
Step 2: Choose Auto Routing or Manual Model Selection
This step decides whether Gate.AI selects a model automatically or your request names a specific model.
Action:
- Open
Console → Settings → Routing. - Check the
Auto routingtoggle. - Keep auto routing enabled if you want Gate.AI to choose a model for each request.
- Use manual model selection if you want to pass a specific model ID in the request body.
| Selection Mode | Request Value | Use When |
|---|---|---|
| Auto routing | "model": "auto" |
You want Gate.AI to route the request automatically. |
| Manual model selection | "model": "anthropic/claude-sonnet-4.6" |
You want to test or use a specific model ID. |
Auto routing is useful for quick starts and general routing tests. Manual selection is better when you need repeatable evaluation against one named model.
Step 3: Configure the OpenAI-Compatible Base URL
This step points your existing OpenAI-style client to Gate.AI instead of the default OpenAI endpoint.
Use this base URL:
https://api.gate.ai/openai/v1
Use this authentication format:
Authorization: Bearer YOUR_API_KEY
The Gate.AI docs specify that the API path is /openai/v1, not only /v1, as of June 2026. Keep the full base URL exactly as shown.
| Configuration Item | Value |
|---|---|
| Base URL | https://api.gate.ai/openai/v1 |
| Authentication | Authorization: Bearer YOUR_API_KEY |
| Format | OpenAI-compatible |
| Chat endpoint | POST /chat/completions |
| Models endpoint | GET /models |
Most integration errors happen because the base URL is shortened or the API key is copied incorrectly. Confirm these two values before changing model settings.
Step 4: Send Your First API Request
This step tests whether the API key, base URL, and OpenAI-compatible chat format work together.
Python example:
from openai import OpenAIclient = OpenAI(api_key="YOUR_API_KEY",base_url="https://api.gate.ai/openai/v1",)completion = client.chat.completions.create(model="auto",messages=[{"role": "system", "content": "You are a concise assistant."},{"role": "user", "content": "Say hello from Gate.AI."}],)print(completion.choices[0].message.content)
Node.js example:
import OpenAI from "openai";const client = new OpenAI({apiKey: "YOUR_API_KEY",baseURL: "https://api.gate.ai/openai/v1",});const completion = await client.chat.completions.create({model: "auto",messages: [{ role: "system", content: "You are a concise assistant." },{ role: "user", content: "Say hello from Gate.AI." }],});console.log(completion.choices[0].message.content);
curl example:
curl https://api.gate.ai/openai/v1/chat/completions \-H "Authorization: Bearer YOUR_API_KEY" \-H "Content-Type: application/json" \-d '{"model": "auto","messages": [{"role": "system", "content": "You are a concise assistant."},{"role": "user", "content": "Say hello from Gate.AI."}]}'
You should receive a normal assistant response. If the request returns an authentication error, check the API key before changing the code.
Step 5: Test a Specific Model ID
This step confirms that manual model selection works when your application needs a named model.
Change the model value from auto to a specific supported model ID:
from openai import OpenAIclient = OpenAI(api_key="YOUR_API_KEY",base_url="https://api.gate.ai/openai/v1",)completion = client.chat.completions.create(model="anthropic/claude-sonnet-4.6",messages=[{"role": "user", "content": "Explain model routing in one paragraph."}],)print(completion.choices[0].message.content)
Use the model ID exactly as shown in Gate.AI model documentation or the Gate.AI model list. If the model name is mistyped, the request may fail even when the API key and base URL are correct.
How Does Gate.AI Auto Routing Work in API Requests?
Gate.AI auto routing uses model: "auto" in the request body and the routing configuration in the Gate.AI console to select a model for the request. As of June 2026, the available routing controls are managed in Console → Settings → Routing.
| Routing Choice | Where You Configure It | What the API Request Uses |
|---|---|---|
| Auto routing | Console → Settings → Routing |
"model": "auto" |
| Manual model selection | Request body | Specific model ID |
| Routing policy control | Console routing settings | Organization-defined behavior |
Auto routing is not the same as leaving the model field blank. Keep the model field present and use auto when you want Gate.AI to route the request.
Which Integration Method Should You Use?
Choose the integration method based on where your application already runs.
| Method | Use When | Main Change |
|---|---|---|
| Python SDK | You already use Python backend scripts or services | Setbase_urlandapi_key |
| Node.js SDK | You use JavaScript or TypeScript services | SetbaseURLandapiKey |
| curl | You want the fastest manual verification | Send headers and JSON payload directly |
| Existing OpenAI-compatible app | Your app already supports a custom base URL | Replace the base URL and API key |
For most developers, curl is the quickest verification step, while Python or Node.js is the better application integration path.
Why Is the Gate.AI API Request Not Working?
Use this checklist before rewriting your integration.
| Symptom | Cause | Fix |
|---|---|---|
401or invalid API key |
The API key is missing, expired, copied incorrectly, or not passed withBearerauthentication. |
Create or copy the key again and sendAuthorization: Bearer YOUR_API_KEY. |
| Model not found | The request uses an incorrect model ID or a model not available in your Gate.AI account. | Check the model ID in Gate.AI model documentation or usemodel: "auto"for a routing test. |
| OpenAI-compatible code fails immediately | The base URL is incomplete or uses only/v1. |
Usehttps://api.gate.ai/openai/v1. |
| Auto routing does not behave as expected | Auto routing is disabled or routing settings do not match the intended behavior. | OpenConsole → Settings → Routingand check the auto routing toggle. |
| Empty or unexpected response | The request body is malformed or the selected model does not support the requested behavior. | Test a minimal chat request first, then add extra parameters one by one. |
Start troubleshooting from authentication, then base URL, then model ID. These three checks resolve most quick-start failures.
What Can You Configure Next?
After the first request works, developers can expand the integration in three directions:
- Configure model routing behavior in the Gate.AI console: https://gate.ai/docs
- Review model availability and choose fixed model IDs for production tests: https://gate.ai/models
- Compare pricing before selecting models for high-volume workloads: https://gate.ai/pricing
FAQ
Why should I use model: "auto" first?
Use model: "auto" first because it verifies API key, base URL, request format, and routing in one simple test. After that works, test a specific model ID.
Can I use my existing OpenAI SDK with Gate.AI?
Yes. Gate.AI supports an OpenAI-compatible API format. Set the Gate.AI API key and replace the base URL with https://api.gate.ai/openai/v1.
Why does my request fail after switching to a specific model?
The model ID may be unavailable, misspelled, or unsupported for your account. Confirm the exact model ID in Gate.AI model documentation, then retry.
Do I need to disable auto routing to use a specific model?
Not always. You can pass a specific model ID in the request body when you want manual model selection. Check Console routing settings if behavior does not match expectations.