NezhaGate
POST https://nezhagate.com/v1/chat/completions

OpenAI-compatible chat completions backed by Google Gemini 3.1 Pro. Supports streaming and long context. Set model to gemini-3.1-pro; defaults to the low-effort tier, pass reasoning_effort=high for the high tier.

📥 Context window (max input):~1,000,000 tokens (million-token long context).

Try in Playground →

Authentication

Header
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Create an API Key in the console to start.

Request body

ParameterTypeRequiredDescription
model string Yes Model ID, here gemini-3.1-pro.
messages array Yes Array of messages; each has role (system/user/assistant) and content. content may be a string, or an array of {type:text} and {type:image_url} parts for image understanding (multimodal/vision).
stream boolean No Stream the response as SSE. Default false.
temperature number No Sampling temperature, 0–2.
max_tokens integer No Maximum number of tokens to generate.
web_search boolean No Set true to enable web search: the gateway augments the prompt with live results (citing sources) before the model answers. Can also be triggered via a tools entry {"type":"web_search"}.
reasoning_effort string No Effort tier: low (default — faster, cheaper) or high (deeper reasoning, billed at the Preview tier). Suffix model names gemini-3.1-pro-low / gemini-3.1-pro-high also work; the legacy id gemini-3.1-pro-preview equals the high tier at its existing price.

Request example

cURL
curl https://nezhagate.com/v1/chat/completions -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"model": "gemini-3.1-pro", "messages": [{"role": "user", "content": "Hello"}], "stream": false}'

Response

200 · JSON
{
  "id": "chatcmpl_xxx",
  "object": "chat.completion",
  "model": "gemini-3.1-pro",
  "choices": [
    {"index": 0, "message": {"role": "assistant", "content": "Hello!"}, "finish_reason": "stop"}
  ],
  "usage": {"prompt_tokens": 11, "completion_tokens": 7, "total_tokens": 18}
}

Image input (Vision)

Put an image in the message content array and the model will analyze it (visual Q&A, reading text / OCR, …). image_url accepts a public image link or an inline base64 data URL (data:image/png;base64,...). Available on multimodal models (gpt-5.5, gemini series, …).

curl · Image input (Vision)
curl https://nezhagate.com/v1/chat/completions -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"model": "gemini-3.1-pro", "messages": [{"role": "user", "content": [{"type": "text", "text": "这张图里有什么?"}, {"type": "image_url", "image_url": {"url": "https://example.com/photo.jpg"}}]}]}'

Error codes

CodeDescription
401Invalid or missing API key
402Insufficient balance / key limit reached
400Invalid parameters or model
429Rate limited
502All upstream providers failed