Skip to main content

Documentation Index

Fetch the complete documentation index at: https://metrion.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Use Metrion as a proxy for Google Gemini. Because Metrion connects to Gemini’s OpenAI-compatible endpoint, you can use the standard OpenAI SDK — only the baseURL changes.
Metrion routes Gemini requests through Google’s OpenAI-compatible API endpoint (generativelanguage.googleapis.com/v1beta/openai/chat/completions). You use the OpenAI SDK, and Metrion handles the translation.

Prerequisites

  • A Metrion account with your sk-metrion-xxx token (find it on the Integrate page)
  • A Google Gemini API key saved in Metrion’s Integrate page

Setup

1
Install the OpenAI SDK
2
TypeScript
npm install openai
Python
pip install openai
3
Configure the client
4
Set baseURL to Metrion’s Gemini proxy and pass your sk-metrion-xxx token as apiKey. Metrion injects your Gemini key and forwards the request to Google’s API.
5
TypeScript
import OpenAI from 'openai'

const client = new OpenAI({
  apiKey: 'sk-metrion-xxx',       // your Metrion token
  baseURL: 'https://www.metrion.dev/api/proxy/gemini',
})
Python
from openai import OpenAI

client = OpenAI(
    api_key="sk-metrion-xxx",     # your Metrion token
    base_url="https://www.metrion.dev/api/proxy/gemini",
)
6
Send a request
7
TypeScript
import OpenAI from 'openai'

const client = new OpenAI({
  apiKey: 'sk-metrion-xxx',
  baseURL: 'https://www.metrion.dev/api/proxy/gemini',
})

const message = await client.chat.completions.create({
  model: 'gemini-2.0-flash',
  max_tokens: 1024,
  messages: [{ role: 'user', content: 'Hello, world!' }],
})

console.log(message.choices[0].message.content)
Python
from openai import OpenAI

client = OpenAI(
    api_key="sk-metrion-xxx",
    base_url="https://www.metrion.dev/api/proxy/gemini",
)

message = client.chat.completions.create(
    model="gemini-2.0-flash",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello, world!"}],
)

print(message.choices[0].message.content)

Direct HTTP

curl https://www.metrion.dev/api/proxy/gemini/v1/chat/completions \
  -H 'Authorization: Bearer sk-metrion-xxx' \
  -H 'content-type: application/json' \
  -d '{
    "model": "gemini-2.0-flash",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello, world!"}]
  }'

Supported models

Model IDNotes
gemini-2.0-flashFast, multimodal, low cost
gemini-2.5-proMost capable Gemini model
gemini-2.5-flashFast and cost-efficient
gemini-1.5-proLong context (1M tokens)
gemini-1.5-flashFast and lightweight

Pass-through mode

To use your own Gemini key without storing it in Metrion, pass it in Authorization: Bearer and identify your Metrion account with the x-metrion-token header:
import OpenAI from 'openai'

const client = new OpenAI({
  apiKey: process.env.GEMINI_API_KEY,      // your Gemini key directly
  baseURL: 'https://www.metrion.dev/api/proxy/gemini',
  defaultHeaders: {
    'x-metrion-token': 'sk-metrion-xxx',   // identifies your Metrion account
  },
})
In pass-through mode, your Gemini key is forwarded directly to Google’s API and is never stored by Metrion.

Track requests by user or service

Add the optional x-metrion-user header to tag individual requests. These labels appear in your Metrion logs and dashboards.
Use x-metrion-user to break down costs by team member, bot, or application — for example "x-metrion-user": "pipeline-rag" or "x-metrion-user": "user-12".
const client = new OpenAI({
  apiKey: 'sk-metrion-xxx',
  baseURL: 'https://www.metrion.dev/api/proxy/gemini',
  defaultHeaders: {
    'x-metrion-user': 'user-12',
  },
})