API versions explained

This document provides a high-level overview of the differences between the v1 and v1beta versions of the Gemini API.

  • v1: Stable version of the API. Features in the stable version are fully supported over the lifetime of the major version. If there are any breaking changes, a new major version of the API will be created and the existing version will be deprecated after a reasonable period of time. Non-breaking changes may be introduced to the API without changing the major version. The Interactions API and its core features are generally available in v1.
  • v1beta: This version includes early features and capabilities that are actively being developed. While features in v1beta may be subject to changes as we refine them based on feedback, it lets you try new capabilities before they are promoted to stable.

Capability and feature support

The following table details the availability of capabilities across v1 (GA) and v1beta (Beta). Core API capabilities and tools apply to both the Interactions API and generateContent unless specified otherwise:

Feature v1 v1beta
Core API capabilities
Interactions API
Function Calling
Structured Output
Thinking / Reasoning
System Instructions
Audio Output (Speech Config)
Service Tier (Priority / Flex)
Tools
Code Execution Tool
Google Search Grounding
Google Maps Grounding
URL Context Tool
File Search Tool
Computer Use Tool
MCP Servers Tool
Realtime APIs
Live API (WebSockets)
Live Music API
Ephemeral Tokens (Live API)
Platform APIs
Models API
Files Service Route
File Search Stores Route
Agents API
Webhooks API
Context Caching
  • - Supported

Configure API version in an SDK

The Gemini API SDKs default to v1beta, but you can explicitly specify versions by setting the API version as shown in the following code sample:

Python

from google import genai

client = genai.Client(http_options={'api_version': 'v1'})

interaction = client.interactions.create(
    model='gemini-3.6-flash',
    input="Explain how AI works",
)

print(interaction.output_text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({
  httpOptions: { apiVersion: "v1" },
});

async function main() {
  const interaction = await ai.interactions.create({
    model: "gemini-3.6-flash",
    input: "Explain how AI works",
  });
  console.log(interaction.output_text);
}

await main();

REST

curl -X POST "https://generativelanguage.googleapis.com/v1/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "gemini-3.6-flash",
    "input": "Explain how AI works",
  }'