Start a media upload
create_upload_urlStarts an upload of your own image, video or audio for use in generate_video (for example a clip to edit with Gemini Omni), generate_image, frame_chain or compose_scene. Returns a short-lived upload_url: send the raw file bytes with an HTTP PUT and the returned upload_headers, then pass asset_url as-is to a generation tool (it is verified automatically). Limits: images 20 MB, video 200 MB and 30 s, audio 50 MB.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"content_type": "<content_type>"
},
"name": "create_upload_url"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| size_bytes | No | Optional file size in bytes, so an oversized file is refused before you send it. | |
| content_type | Yes | The file type: image/jpeg, image/png, image/webp, video/mp4, video/quicktime, video/webm, audio/mpeg, audio/wav or audio/mp4 (m4a). |