LLM models
Gemini 2.5 Flash
On this page
Gemini 2.5 Flash — frontier reasoning and generation through one API.
| modelId | gemini-2-5-flash |
| Modality | text |
| Pricing | See this model on the Pricing page for the current per-call price (with your markup). |
Operations
| Operation | modelId | Endpoint | Required input |
|---|---|---|---|
| Default | gemini-2-5-flash | POST /api/v1/generate | prompt |
| Poll task | — | GET /api/v1/task/{id}?model=gemini-2-5-flash | — |
Input parameters
| Field | Type | Required | Values / example |
|---|---|---|---|
| prompt | string | Yes | Text value (example: In three vivid sentences, explain what causes the aurora borealis to shimmer in ribbons of green and violet across the polar night sky.) |
| structured_outputs | boolean | No | Generate structured outputs (true/false) (example: false) |
| stream | boolean | No | Turn off to get a single non-streaming response. (true/false) (example: true) |
| system | string | No | System instruction for the model. Defaults to "You are Gemini 2.5 Flash, developed by Google." when omitted. |
| messages | array | No | A conversation instead of a single prompt: an array of { "role", "content" } objects, where role is user, assistant or system. Send the whole conversation — we do not limit how many messages it has, and we do not drop old ones; the model's context window is the limit. Send prompt or messages, not both. Do not flatten a conversation into one prompt with "User:" / "Assistant:" labels — the model reads that as a single message, and a model using web search then searches for the whole block instead of your question. |
Example request
bash
curl -X POST https://you.bot/api/v1/generate \
-H "Authorization: Bearer $YOUBOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"modelId":"gemini-2-5-flash","input":{"prompt":"In three vivid sentences, explain what causes the aurora borealis to shimmer in ribbons of green and violet across the polar night sky.","structured_outputs":false,"stream":true}}'