Gemini API — Guía para desarrolladores

La Gemini API de Google proporciona acceso programatico a los modelos Gemini mediante REST y SDKs oficiales. Disponible en Google AI Studio para prototipado y en Vertex AI para producción enterprise, la API combina capacidades multimodales nativas, ventanas de contexto de 1 millón de tokens y funciones avanzadas como function calling, grounding con Google Search y ejecución de código en sandbox. Esta guía cubre desde la primera llamada hasta las funciones más avanzadas.

Última actualización:
Cinco puntos clave sobre la Gemini API
  • REST en generativelanguage.googleapis.com: la API expone un endpoint REST estándar compatible con cualquier lenguaje. Google ofrece SDKs para Python, JavaScript, Go, Swift y Dart para simplificar la integración.
  • Capa gratuita: Gemini 3.5 Flash mantiene un tier gratuito reducido en Google AI Studio. Gemini 3.1 Pro es solo de pago desde abril de 2026. No se requiere tarjeta de credito para empezar con Flash.
  • Multimodalidad completa: una misma llamada a la API puede incluir texto, imágenes, audio, video y documentos PDF. No hay endpoints separados por modalidad, lo que simplifica la arquitectura del agente.
  • Function calling y salida estructurada: Gemini puede invocar funciones definidas por el desarrollador y devolver JSON valido según un schema, lo que facilita la integración con sistemas externos y pipelines de datos.
  • Caching y File API: el prompt caching reduce el coste en contextos repetidos; el File API permite subir archivos grandes para referenciarlos en múltiples llamadas sin reenviarlos en cada solicitud.
Flujo de integracion de la Gemini API: AI Studio gratuito, obtener API Key, instalar SDK google-genai, llamada generate_content, respuesta .text. Capacidades: function calling, Google Search grounding, prompt caching 75% ahorro, File API.
Flujo de integracion de la Gemini API desde cero: cuenta gratuita en AI Studio, clave de API, instalacion del SDK y primera llamada.
Documentación de la API de Gemini
Documentación oficial de la Gemini API en ai.google.dev, con referencia de endpoints, guías de inicio rápido y ejemplos de function calling y multimodalidad.

Introducción a la Gemini API

La Gemini API es la interfaz programatica que Google expone para acceder a los modelos de la familia Gemini en producción. El endpoint principal es generativelanguage.googleapis.com y sigue el estándar REST con autenticación mediante clave de API o credenciales de Google Cloud. Cualquier lenguaje capaz de realizar solicitudes HTTP puede integrar Gemini sin necesidad de SDK, aunque Google ofrece bibliotecas oficiales que simplifican la gestión de autenticación, reintentos y streaming.

La API da acceso a todos los modelos de la familia Gemini: Gemini 3.1 Pro, Gemini 3.5 Flash y Gemini Flash-Lite, cada uno con diferentes equilibrios entre capacidad de razonamiento, velocidad y coste. Además de generación de texto, la API expone capacidades de embeddings, clasificación de contenido, ejecución de código en sandbox y grounding con Google Search.

El punto de entrada recomendado para desarrolladores nuevos en Gemini es ai.google.dev, donde Google publica la documentación oficial, guías de inicio rápido y el acceso a Google AI Studio, el entorno web de prototipado con capa gratuita. Una vez generada la clave de API en AI Studio, la misma clave funciona tanto para el entorno gratuito cómo para la API de pago al activar facturación.

Primeros pasos: clave de API y primera llamada

Obtener la clave de API en Google AI Studio

El proceso para obtener acceso a la Gemini API tiene tres pasos:

  1. Crear o acceder con una cuenta de Google en aistudio.google.com.
  2. En el menu lateral, hacer clic en Get API key y crear una nueva clave. La clave tiene el formato AIza... y se muestra una sola vez.
  3. Almacenar la clave en una variable de entorno (GEMINI_API_KEY es la convención habitual) en lugar de incluirla en el código fuente.

La capa gratuita de AI Studio no requiere introducir datos de tarjeta de credito. Gemini 3.5 Flash mantiene tier gratuito reducido. Para eliminar limites y obtener un SLA de disponibilidad, hay que activar la facturación en Google Cloud.

Primera llamada con Python

El SDK oficial de Python para Gemini es google-genai. La instalación y primera llamada son:

pip install google-genai
import os
from google import genai

client = genai.Client(api_key=os.environ["GEMINI_API_KEY"])

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Explica cómo funciona un agente de IA en tres parrafos."
)

print(response.text)

La respuesta se devuelve de forma sincrona para solicitudes cortas. Para respuestas largas o en tiempo real, la API soporta streaming mediante el método generate_content_stream, que devuelve un iterador de chunks de texto a medida que el modelo los genera:

for chunk in client.models.generate_content_stream(
    model="gemini-3.5-flash",
    contents="Escribe un analisis detallado de los patrones de diseno mas usados en Python."
):
    print(chunk.text, end="", flush=True)

Primera llamada con JavaScript

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

const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY });

const response = await ai.models.generateContent({
  model: "gemini-3.5-flash",
  contents: "Explica cómo funciona un agente de IA.",
});

console.log(response.text);

Primera llamada con REST directo

Si no se quiere instalar ningún SDK, la API acepta solicitudes HTTP estándar:

curl -X POST \
  "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent?key=$GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [{"text": "Explica cómo funciona un agente de IA."}]
    }]
  }'
Multimodalidad

Capacidades multimodales de la Gemini API

Una misma llamada puede combinar texto, imágenes, audio, video y PDF sin cambiar el endpoint ni el modelo.

Imágenes

Se pueden enviar imágenes en base64 o via URL. Gemini puede analizar imágenes, responder preguntas sobre su contenido, comparar varias imágenes en el mismo contexto o extraer texto via OCR. Los formatos soportados son JPEG, PNG, WebP, HEIC y HEIF.

Audio

La API acepta audio en MP3, WAV, FLAC, OGG y otros formatos. Gemini puede transcribir, resumir, analizar el tono y responder preguntas sobre el contenido de grabaciones. Las duraciones largas se gestionan via File API para evitar limites de tamaño en la solicitud.

Video

Gemini puede analizar videos frame a frame o de forma holistica. Soporta formatos MP4, MOV, AVI y WebM. Para videos largos se usa el File API: se sube el archivo una vez y se referencia por URI en múltiples llamadas. La API puede localizar momentos específicos, transcribir y describir acciones.

PDF y documentos

Los PDFs se pueden enviar en base64 o via File API. Gemini los procesa página a página, extrayendo texto, tablas, gráficos e imágenes embebidas. Es especialmente útil para análisis de informes, contratos o documentación técnica que supera los limites de los modelos que solo aceptan texto extraido.

Ejemplo: análisis multimodal con imagen y texto

import base64
from google import genai
from google.genai import types

client = genai.Client(api_key=os.environ["GEMINI_API_KEY"])

with open("diagrama_arquitectura.png", "rb") as f:
    imagen_b64 = base64.standard_b64encode(f.read()).decode()

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents=[
        types.Part.from_bytes(
            data=base64.b64decode(imagen_b64),
            mime_type="image/png"
        ),
        "Analiza este diagrama de arquitectura e identifica posibles cuellos de botella."
    ]
)

print(response.text)

File API: subida de archivos grandes

Para archivos de más de unos pocos megabytes, el enfoque base64 en la solicitud es ineficiente. El File API de Gemini permite subir el archivo una vez y referenciarlo por URI en múltiples llamadas. Los archivos se almacenan en los servidores de Google durante 48 horas:

video_file = client.files.upload(file="presentacion_producto.mp4")

response = client.models.generate_content(
    model="gemini-3.1-pro",
    contents=[video_file, "Resume los puntos principales de esta presentacion."]
)

print(response.text)

El File API es especialmente valioso para agentes que procesan el mismo documento en múltiples pasos: se sube el PDF o video una vez al inicio del flujo y se referencia en cada llamada posterior sin coste adicional de transferencia.

Funciones avanzadas

Function calling, salida estructurada y grounding

Las capacidades que convierten Gemini en el motor de agentes reales en producción.

Function calling (uso de herramientas)

El function calling de Gemini permite al modelo identificar cuando una pregunta del usuario requiere llamar a una función externa, extraer los parámetros necesarios de la conversación y devolver una solicitud de llamada estructurada. El desarrollador ejecuta la función en su propio código y devuelve el resultado al modelo para que genere la respuesta final.

from google import genai
from google.genai import types

def obtener_precio_accion(ticker: str) -> dict:
    """Devuelve el precio actual de una accion dado su ticker."""
    # Aqui iria la llamada real a una API financiera
    return {"ticker": ticker, "precio": 182.50, "moneda": "USD"}

herramienta_precio = types.FunctionDeclaration(
    name="obtener_precio_accion",
    description="Devuelve el precio actual de mercado de una accion.",
    parameters={
        "type": "object",
        "properties": {
            "ticker": {
                "type": "string",
                "description": "Simbolo bursatil de la empresa (ej: AAPL, GOOG)."
            }
        },
        "required": ["ticker"]
    }
)

client = genai.Client(api_key=os.environ["GEMINI_API_KEY"])
herramientas = types.Tool(function_declarations=[herramienta_precio])

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Cuanto vale la accion de Apple ahora mismo?",
    config=types.GenerateContentConfig(tools=[herramientas])
)

# Si el modelo quiere llamar a la funcion:
if response.candidates[0].content.parts[0].function_call:
    fc = response.candidates[0].content.parts[0].function_call
    resultado = obtener_precio_accion(fc.args["ticker"])
    print(f"Resultado de la herramienta: {resultado}")

Salida estructurada (JSON schema)

Gemini puede devolver JSON valido según un schema definido por el desarrollador. Esto garantiza que la salida del modelo sea siempre parseable y compatible con los tipos de datos esperados en el sistema receptor, lo que es especialmente valioso en pipelines de extracción de datos y clasificación automática:

import json

schema_entidad = {
    "type": "object",
    "properties": {
        "empresa": {"type": "string"},
        "fecha_fundacion": {"type": "integer"},
        "sector": {"type": "string"},
        "pais": {"type": "string"}
    },
    "required": ["empresa", "fecha_fundacion", "sector", "pais"]
}

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Extrae la información de esta empresa: Google fue fundada en 1998 en Estados Unidos y opera en el sector tecnologico.",
    config=types.GenerateContentConfig(
        response_mime_type="application/json",
        response_schema=schema_entidad
    )
)

datos = json.loads(response.text)
print(datos)  # {"empresa": "Google", "fecha_fundacion": 1998, ...}

Grounding con Google Search

El grounding con Google Search permite al modelo buscar información actualizada en internet antes de generar la respuesta. Se activa declarando la herramienta de busqueda en la configuración. Cuando el modelo detecta que la pregunta requiere información reciente, realiza internamente una busqueda y fundamenta la respuesta en los resultados obtenidos:

google_search_tool = types.Tool(google_search=types.GoogleSearch())

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Cuales fueron los resultados financieros de Google en el primer trimestre de 2026?",
    config=types.GenerateContentConfig(tools=[google_search_tool])
)

print(response.text)
# La respuesta incluye información reciente con referencias a fuentes

El grounding es especialmente útil para agentes de investigación, asistentes de soporte que necesitan acceder a información de precios o disponibilidad en tiempo real, y cualquier caso de uso donde la precisión factual con fuentes verificables sea critica. Para datos que cambian con frecuencia, combinar grounding con Search y function calling sobre APIs propias es la arquitectura más robusta.

Ejecución de código en sandbox

La Gemini API incluye una herramienta de ejecución de código que permite al modelo escribir y ejecutar Python en un entorno sandbox aislado. El modelo puede generar gráficos, procesar datasets, resolver ecuaciones matemáticas y devolver los resultados al contexto de la conversación. Esta capacidad es gestionada completamente por Google; el desarrollador no necesita configurar ninguna infraestructura de ejecución:

code_execution_tool = types.Tool(code_execution=types.CodeExecution())

response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Calcula la media, mediana y desviacion tipica de esta lista: [23, 45, 12, 67, 34, 89, 11, 55, 44, 78]",
    config=types.GenerateContentConfig(tools=[code_execution_tool])
)

print(response.text)  # Respuesta con calculos ejecutados realmente

Prompt caching

Para agentes en producción que envian el mismo contexto inicial en cada llamada (instrucciones del sistema, documentos de referencia, ejemplos few-shot), el prompt caching de Gemini puede reducir el coste hasta un 75% en los tokens cacheados. El caching se activa declarando el contenido a cachear como un recurso CachedContent:

cached = client.caches.create(
    model="gemini-3.5-flash",
    contents=[documento_referencia_largo],  # Contexto que se repite en cada llamada
    ttl="3600s"  # TTL de 1 hora
)

# Las llamadas posteriores referencian el cache por nombre
response = client.models.generate_content(
    model="gemini-3.5-flash",
    contents="Resume los puntos principales del documento.",
    config=types.GenerateContentConfig(cached_content=cached.name)
)
Precios de la Gemini API mayo 2026: Gemini 3.1 Pro (2/12 USD/MTok, caching 0.50), Gemini 3.5 Flash (1.50/9 USD/MTok, caching 0.38), Flash-Lite (0.10/0.40 USD/MTok sin caching). Ahorro caching hasta 75 porciento.
Precios de la Gemini API por millon de tokens (MTok). El caching reduce hasta un 75 por ciento el coste de los tokens repetidos en cada llamada.
Precios

Precios de la Gemini API

Precios actualizados a mayo 2026. El tier gratuito de Google AI Studio no requiere tarjeta de credito.

Precios de la Gemini API — mayo 2026. Precios en dolares por millón de tokens (MTok). Los limites del tier gratuito son por minuto (RPM/TPM) y están sujetos a cambios por parte de Google.
Modelo Input ($/MTok) Output ($/MTok) Contexto Free tier (RPM) Notas
Gemini 3.1 Pro $2,00 $12,00 2M tokens Solo pago Flagship 2026: razonamiento avanzado, solo de pago desde abr 2026
Gemini 3.5 Flash $1,50 $9,00 1M tokens Tier reducido Modelo por defecto 2026: velocidad, multimodal y agentes
Gemini 3 Flash $0,50 $3,00 1M tokens Tier reducido Modelo rápido previo, compatible con multimodalidad
Gemini 3.5 Flash (cache) ~$0,04 Precio por tokens servidos desde cache (hasta 75% descuento)
Gemini Embeddings Gratis Sin limite text-embedding-004 sin coste en AI Studio

Tier gratuito vs API de pago

La diferencia fundamental entre el tier gratuito y la API de pago no es el precio por token, sino los limites de cuota:

  • Tier gratuito: 15 RPM y 1M TPM para Flash, 2 RPM para Pro. Sin SLA de disponibilidad. Los datos pueden usarse para mejorar los modelos de Google (configurable).
  • API de pago: cuotas más altas, SLA de disponibilidad, posibilidad de solicitar incrementos de cuota, acceso a modelos experimentales y funciones avanzadas de caching extendido.

Para proyectos en fase de prototipado o con volúmenes bajos de solicitudes, el tier gratuito es completamente funcional. El paso a pago se justifica cuando el volumen supera los limites gratuitos o cuando se necesita un SLA para un producto en producción.

Cálculo de costes para agentes

En un agente típico basado en Gemini 3.5 Flash, el coste estimado por 1.000 llamadas con un contexto medio de 2.000 tokens de entrada y 500 tokens de salida seria:

  • Tokens de entrada: 1.000 x 2.000 = 2M tokens = $3,00 ($1,50/MTok)
  • Tokens de salida: 1.000 x 500 = 500K tokens = $4,50 ($9/MTok)
  • Total estimado: $7,50 por 1.000 llamadas

Con prompt caching para el contexto del sistema (supongamos 1.500 tokens repetidos en cada llamada), el ahorro seria del orden del 75% en esos tokens, reduciendo el coste total significativamente.

SDKs

SDKs oficiales de la Gemini API

Google mantiene SDKs oficiales para los lenguajes más usados en desarrollo de agentes e integraciones backend.

Python

Paquete google-genai. Es el SDK más completo y el recomendado para agentes y scripts de backend. Soporta streaming, function calling, File API y todas las funciones avanzadas. Compatible con frameworks cómo LangChain y LlamaIndex.

Documentación Python

JavaScript / Node.js

Paquete @google/genai. Compatible con Node.js y navegadores modernos via ESM. Soporta streaming, function calling y multimodalidad. Ideal para aplicaciones web y APIs de backend en entornos JavaScript.

Documentación JavaScript

Go, Swift y Dart

Google mantiene SDKs para Go (backend de alta concurrencia), Swift (aplicaciones nativas de Apple) y Dart/Flutter (aplicaciones moviles y de escritorio multiplataforma). Todos siguen la misma estructura de autenticación y cubren las capacidades principales de la API.

Ver todos los SDKs

REST sin SDK

Para lenguajes sin SDK oficial (PHP, Ruby, Java sin Spring, etc.) o en entornos con restricciones de dependencias, la Gemini API acepta solicitudes REST estándar autenticadas con la clave de API en el parámetro de la URL o en el header Authorization: Bearer TOKEN. La estructura del cuerpo de la solicitud es JSON y se documenta completamente en ai.google.dev.

Integración con Google AI Studio cómo IDE web

Además del acceso programatico, Google AI Studio funciona como un entorno de desarrollo interactivo en el navegador. Desde AI Studio se puede: probar prompts en tiempo real, ajustar parámetros del modelo (temperatura, top-p, top-k), ver la respuesta cruda en JSON, exportar el código generado en Python o JavaScript y gestionar el historial de prompts. Es el punto de entrada ideal para diseñar y depurar prompts antes de integrarlos en el código.

Compatibilidad con Vertex AI

Los mismos modelos Gemini disponibles en la API de AI Studio son accesibles via Vertex AI, la plataforma ML enterprise de Google Cloud. La diferencia principal es el sistema de autenticación (credenciales de Google Cloud via Application Default Credentials en lugar de clave de API simple) y las garantías enterprise: SLA del 99,9%, cumplimiento HIPAA, SOC2 y GDPR, despliegue en regiones específicas y opciones de red privada. Para producción enterprise, Vertex AI es el camino recomendado.

FAQ

Preguntas frecuentes sobre la Gemini API

¿Cómo obtengo una clave de API de Gemini?

Accede a aistudio.google.com con tu cuenta de Google y haz clic en Get API key en el menu lateral. La clave tiene el formato AIza... y se genera de forma inmediata sin necesidad de tarjeta de credito. Guardala en una variable de entorno: nunca la incluyas directamente en el código fuente ni en repositorios públicos.

¿Qué SDKs oficiales ofrece Google para la Gemini API?

Google ofrece SDKs oficiales para Python (google-genai), JavaScript/Node.js (@google/genai), Go, Swift y Dart. Todos se instalan desde los gestores de paquetes estándar de cada lenguaje. Para lenguajes sin SDK oficial, la API acepta solicitudes REST estándar autenticadas con la clave de API.

¿Cuál es el precio de Gemini 3.5 Flash por millón de tokens?

Gemini 3.5 Flash cuesta $1,50 por millón de tokens de entrada y $9 por millón de tokens de salida en la API de pago. Con prompt caching activado, el ahorro puede llegar al 75% en los tokens de contexto repetido. Gemini 3.5 Flash mantiene un tier gratuito reducido en Google AI Studio.

¿Qué es el File API de Gemini?

El File API permite subir archivos (imágenes, audio, video, PDF) a los servidores de Google y referenciarlos mediante una URI en múltiples llamadas a la API sin necesidad de reenviar el contenido en base64 en cada solicitud. Los archivos se almacenan durante 48 horas y pueden gestionarse (listar, eliminar) via la API. Es especialmente útil para agentes que procesan el mismo documento en varios pasos o para archivos grandes cómo videos.

¿Qué es el grounding con Google Search en la Gemini API?

El grounding con Google Search es una herramienta integrada que permite a Gemini buscar información actualizada en internet antes de generar una respuesta. Se activa declarando types.Tool(google_search=types.GoogleSearch()) en la configuración de la llamada. El modelo decide autonomamente cuando realizar una busqueda y puede citar las fuentes utilizadas, reduciendo alucinaciones en preguntas sobre hechos recientes.

¿Cuál es la diferencia entre Google AI Studio y la API de pago?

Google AI Studio ofrece acceso gratuito con limites de RPM y TPM reducidos, sin SLA de disponibilidad. Es ideal para prototipado, experimentación y proyectos con bajo volumen de solicitudes. La API de pago (al activar facturación en Google Cloud) elimina esos limites, ofrece mayor cuota, SLA de disponibilidad y acceso a funciones avanzadas. La misma clave de API generada en AI Studio funciona en ambos modos.

Empieza a usar Gemini CLI en tu terminal

Si prefieres un agente de coding que funcione directamente desde la línea de comandos sin configurar una API, Gemini CLI es la alternativa de código abierto de Google.

Guía de Gemini CLI
Guía gratuita

Crea tu primer agente de IA, paso a paso

Descarga la guía en PDF: 12 secciones, ejemplos reales y datos de 2026. Gratis.