Skip to content
No models found
OpenRouter
© 2026 OpenRouter, Inc

Product

  • Chat
  • Rankings
  • Apps
  • Models
  • Providers
  • Pricing
  • Enterprise
  • Labs

Company

  • About
  • Announcements
  • CareersHiring
  • Privacy
  • Terms of Service
  • Support
  • State of AI
  • Works With OR
  • Data

Developer

  • Documentation
  • API Reference
  • SDK
  • Status

Connect

  • Discord
  • GitHub
  • LinkedIn
  • X
  • YouTube
Favicon for google

Google: Gemini 3.1 Pro Preview Custom Tools

google/gemini-3.1-pro-preview-customtools

Compare

Gemini 3.1 Pro Preview Custom Tools is a variant of Gemini 3.1 Pro that improves tool selection behavior by preventing overuse of a general bash tool when more efficient third-party or user-defined functions are available. This specialized preview endpoint significantly increases function calling reliability and ensures the model selects the most appropriate tool in coding agents and complex, multi-tool workflows.

It retains the core strengths of Gemini 3.1 Pro, including multimodal reasoning across text, image, video, audio, and code, a 1M-token context window, and strong software engineering performance.

Modalities

Input Price

$2per 1M

Output Price

$12per 1M

Context

1M

Weekly Tokens

6.13B

Released

Feb 25, 2026

Overview
Providers
Performance
Pricing
Apps
Activity
Uptime
API

Sample code and API for Gemini 3.1 Pro Preview Custom Tools

OpenRouter normalizes requests and responses across providers for you.

1

Get your API key

Create an API key from your OpenRouter dashboard and set it as an environment variable:

2

Make your first request

Use google/gemini-3.1-pro-preview-customtools with the OpenRouter API:

OpenRouter supports reasoning-enabled models that can show their step-by-step thinking process. Use the reasoning parameter in your request to enable reasoning, and access the reasoning_details array in the response to see the model's internal reasoning before the final answer. When continuing a conversation, preserve the complete reasoning_details when passing messages back to the model so it can continue reasoning from where it left off. Learn more about reasoning tokens.

In the examples below, the OpenRouter-specific headers are optional. Setting them allows your app to appear on the OpenRouter leaderboards.

Using third-party SDKs

For information about using third-party SDKs and frameworks with OpenRouter, please see our frameworks documentation.

3

Enable streaming

Add "stream": true to your request body to receive responses as server-sent events:

Endpoint

POSThttps://openrouter.ai/api/v1/chat/completions
AuthorizationBearer $OPENROUTER_API_KEY
Content-Typeapplication/json
HTTP-Refereroptional — your site URL, for rankings
X-Titleoptional — your site name, for rankings
Modelgoogle/gemini-3.1-pro-preview-customtools

Parameters

NameTypeDefaultDescription
reasoningmap—Controls reasoning behavior for models that support thinking tokens, including whether reasoning is enabled, the reasoning effort, maximum reasoning tokens, and whether reasoning is excluded from the response.
include_reasoningboolean—Deprecated alias for reasoning.exclude.
max_tokensinteger—This sets the upper limit for the number of tokens the model can generate in response.
temperaturefloat1This setting influences the variety in the model's responses.
top_pfloat1This setting limits the model's choices to a percentage of likely tokens: only the top tokens whose probabilities add up to P.
seedinteger—If specified, the inferencing will sample deterministically, such that repeated requests with the same seed and parameters should return the same result.
response_formatmap—Forces the model to produce specific output format.
toolsarray—Tool calling parameter, following OpenAI's tool calling request shape.
tool_choicestring or object—Controls which (if any) tool is called by the model.
stoparray—Stop generation immediately if the model encounter any token specified in the stop array.
structured_outputsboolean—If the model can return structured outputs using response_format json_schema.