Add and configure io.net Intelligence models in TrueFoundry’s AI Gateway using Custom Endpoints
io.net Intelligence exposes an OpenAI-compatible chat completions API for open-source models such as meta-llama/Llama-3.3-70B-Instruct. Use Custom Endpoints in the AI Gateway to register io.net once, keep the io.net API key on the gateway, and let your applications call models through a single TrueFoundry API key with access control and tracing.
Sign up at ai.io.net if you do not already have an account.
2
Generate an io.net API key
In the io.net dashboard, open API Keys and Secrets and create a new API key. See the io.net API keys guide for details.Store the key securely. You will paste it into the gateway’s Custom Headers configuration — not in client application code.
3
Get your TrueFoundry API key and gateway URL
You need a TrueFoundry API key (TFY_API_KEY) and your gateway base URL to call models through the gateway. See Gateway base URL and Authentication.
Add io.net to the AI Gateway using Custom Endpoints.
1
Create a Custom Endpoint provider account
In the TrueFoundry dashboard, go to AI Gateway → Models → Custom Endpoints and click Add Custom Endpoint.In Configure Account, set:
Name (Account Name): ionet — this is your provider account name and appears as the first path segment in every request URL ({providerAccountName})
Endpoint Type: None
Header Auth: keep disabled
Custom Endpoints — create a provider account
2
Add an io.net endpoint
On the Endpoints step, add an integration and configure:
Display Name: model — this is your custom endpoint display name and appears as the second path segment in every request URL ({endpointName})
Base URL: https://api.intelligence.io.solutions/api
Enable Custom Headers and add:
Authorization: Bearer <IO_NET_API_KEY>
Content-Type: application/json
Endpoint settings — Base URL and upstream headers
The Authorization header here is sent from the gateway to io.net. Your application should only send the TrueFoundry API key to the gateway.
You can click + Add Custom Endpoint to register multiple endpoints under the same account (for example, model, vision, or fast-inference). Each gets its own Display Name in the URL, but they can all point to the same io.net Base URL and headers. Which io.net model runs is chosen in the request body model field — not by the display name.
3
Set access control and save
On the Access Control step, choose who can manage and use this provider account, then Save.
Manager: users/teams who can edit or delete the custom endpoint
User: users/teams who can call the endpoint (for example, everyone)
io.net hosts many models (for example meta-llama/Llama-3.3-70B-Instruct, meta-llama/Llama-3.2-90B-Vision-Instruct, and others listed in the io.net docs). You do not need a separate custom endpoint per model — set the model field in the JSON request body to the io.net model ID you want.If you add multiple custom endpoints under the same account (different Display Name values), use the matching {endpointName} in the URL; each endpoint can still call any io.net model via the request body.
Replace ionet and model in the URL with your own Account Name and Display Name if you used different values during setup.
Because io.net is OpenAI-compatible, you can point the OpenAI SDK at the gateway proxy path instead of io.net directly:
import osfrom openai import OpenAIGATEWAY_BASE_URL = "{GATEWAY_BASE_URL}" # e.g. https://internal.devtest.truefoundry.tech/api/llmTFY_API_KEY = os.environ.get("TFY_API_KEY", "your-tfy-api-key")PROVIDER_ACCOUNT_NAME = "ionet" # Account NameENDPOINT_NAME = "model" # Custom endpoint Display Nameclient = OpenAI( api_key=TFY_API_KEY, base_url=f"{GATEWAY_BASE_URL}/proxy-api/{PROVIDER_ACCOUNT_NAME}/{ENDPOINT_NAME}/v1",)response = client.chat.completions.create( model="meta-llama/Llama-3.3-70B-Instruct", messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Tell me about Truefoundry AI Gateway"}, ], temperature=0.7, stream=False,)print(response.choices[0].message.content)
Support scope: Custom Endpoints proxy requests transparently to io.net. See io.net chat completions reference for supported request fields and models. For gateway limitations on Custom Endpoints (HTTPS, streaming, and so on), see Custom Endpoints.