GEMINI LABJP
LOGS — Developer logs for the Interactions API are now viewable in the AI Studio dashboard, so you can trace each execution step for supported callsOMNI — Gemini Omni Flash (public preview) generates 3–10s, 720p videos from text or animates a still image, then lets you refine the result conversationallyINTERACT — The Interactions API is GA and recommended for all new projects — one interface for text, multimodal understanding, tool use, and agentic workflowsSTATE — Use previous_interaction_id to keep conversation state server-side. Execution steps are observable, and long-running tasks support background executionNOTEBOOK — NotebookLM has been renamed Gemini Notebook, reportedly used by over 30M people and 600K organizationsMODEL — Gemini 3.5 Flash is the widely available latest model. The flagship Gemini 3.5 Pro remains unconfirmed officially — treat reports cautiouslyLOGS — Developer logs for the Interactions API are now viewable in the AI Studio dashboard, so you can trace each execution step for supported callsOMNI — Gemini Omni Flash (public preview) generates 3–10s, 720p videos from text or animates a still image, then lets you refine the result conversationallyINTERACT — The Interactions API is GA and recommended for all new projects — one interface for text, multimodal understanding, tool use, and agentic workflowsSTATE — Use previous_interaction_id to keep conversation state server-side. Execution steps are observable, and long-running tasks support background executionNOTEBOOK — NotebookLM has been renamed Gemini Notebook, reportedly used by over 30M people and 600K organizationsMODEL — Gemini 3.5 Flash is the widely available latest model. The flagship Gemini 3.5 Pro remains unconfirmed officially — treat reports cautiously
ARTICLES

All Articles

All (733) Gemini Basics (57) Dev Tools (106) API & SDK (405) Advanced (110) Workspace (37) Updates (18)
API & SDK/2026-05-31Beginner

Why Gemini API Throws 'Unsupported MIME type' and How to Fix It

The 'Unsupported MIME type' error from the Gemini API has three distinct causes: a misspelled MIME string, an octet-stream upload, and a genuinely unsupported format. Here is how to tell them apart with code that actually works.

API & SDK/2026-05-31Advanced

Bulk Processing Without the 429s: Adaptive Concurrency for the Gemini API

Pushing tens of thousands of requests through the Gemini API with a fixed concurrency almost always produces 429s and dropped items. Here is an AIMD design that auto-tunes concurrency from the 429 feedback, with a bounded worker pool, a dead-letter queue, and resumable checkpoints.

API & SDK/2026-05-31Intermediate

Localizing App Store Keyword Fields with Gemini 2.5 Flash — A Month of Notes Across 40 Apps

Operational notes from a month of using Gemini 2.5 Flash to draft the 100-character App Store keyword field across 40 wallpaper apps and several locales — CJK byte counting, deduping against the title, prohibited terms, and what actually moved the needle.

API & SDK/2026-05-30Advanced

Preserving Gemini 3 Thought Signatures So Multi-Turn Function Calling Doesn't Degrade

When you build function calling on Gemini 3 thinking models, reasoning quality often drops from the second turn onward. The cause is usually a dropped thought signature. Here is how to keep it and verify the effect.

API & SDK/2026-05-30Intermediate

Why Gemini 2.5 Pro Rejects thinkingBudget: 0 (and How to Fix It)

Setting thinkingBudget to 0 on Gemini 2.5 Pro returns a 400 INVALID_ARGUMENT error. Here is why the per-model thinking budget ranges differ, how to minimize thinking on Pro the right way, and when to switch to Flash, with Python and JavaScript examples.

API & SDK/2026-05-30Intermediate

Two Months of Turning App Store Connect Daily Sales into a Slack Digest with Gemini 2.5 Flash

Notes from two months of running App Store Connect Sales/Trends data through Gemini 2.5 Flash and posting a short morning digest to Slack. Why Flash beat Pro for this job, how AdMob and store revenue stopped colliding, and what a single 'normal/check' label changed.

API & SDK/2026-05-30Advanced

Propagating a Time Budget Through a Multi-Stage Gemini Pipeline

A field memo on killing DEADLINE_EXCEEDED errors in an in-app help search by carrying a single request-wide deadline through the embed, search, and generate stages — sizing maxOutputTokens from the remaining budget and reserving a fallback budget so a breach returns a partial answer instead of an error.

API & SDK/2026-05-29Advanced

Designing a Semantic Clustering Pipeline for App Reviews with Gemini Embeddings

How I cluster 10,000+ app reviews from my indie apps using Gemini Embeddings to compute improvement priorities. The three-layer pipeline and cost design that emerged from a year of running it.

API & SDK/2026-05-29Intermediate

Why HTTP Referrer Restrictions on Your Gemini API Key Cause 403 Errors in Production

Walks through why a Gemini API key with HTTP referrer restrictions can suddenly return 403 PERMISSION_DENIED in production. Covers the exact referrer string format, SDK behavior differences, how to safely route around the limitation with a tiny edge proxy, and how it differs from the CORS error you hit when calling straight from the browser.

API & SDK/2026-05-29Advanced

Layering Gemini API Response Caches in Three Tiers — How I Split Memory, Redis, and Context Cache

Notes from running a three-tier cache (in-memory, Redis, Gemini Context Cache) in front of the Gemini API for six weeks across a wallpaper app — actual hit rates, billing impact, and the invalidation traps that ate me alive.

API & SDK/2026-05-28Intermediate

Why per-turn generationConfig is ignored in Gemini API chat sessions

If you pass a different generationConfig (temperature, max_output_tokens, response_schema) to each send_message in a google-genai chat session and the behavior never changes, this walkthrough shows what is actually happening, why the SDK is designed that way, and three workarounds we use in production for review-summary and reply-draft pipelines.

API & SDK/2026-05-28Advanced

Running an SLO and Error Budget for the Gemini API as an Indie Developer — Guarding Four Sites with Burn-Rate Monitoring

Notes from running the Gemini API inside four production sites as an indie developer. A practical SLO and Error Budget design that fits a single-person operation: Cloudflare Workers and KV for burn-rate calculation, simplified multi-window alerts, and decision rules for what to freeze when the budget runs out.