Формат Google Gemini устроен иначе, чем формат OpenAI: имя модели передаётся в адресе, а не в теле запроса. Поэтому для него выделен отдельный базовый путь — /v1beta.
Адрес собирается из имени модели и метода: POST /v1beta/models/gemini-2.5-flash:generateContent. Текст запроса передаётся в поле contents.
Официальные библиотеки Google дописывают путь /v1beta/models/… сами, поэтому в качестве базового адреса им указывается https://api.proxyapi.ru.
curl "https://api.proxyapi.ru/v1beta/models/gemini-2.5-flash:generateContent" \ -H "Content-Type: application/json" \ -H "x-goog-api-key: <КЛЮЧ>" \ -d '{ "contents": [ {"parts": [{"text": "Назови столицу Австралии."}]} ] }'
Ключ передаётся заголовком x-goog-api-key или параметром ?key= — так его отправляют официальные библиотеки Google. Заголовок Authorization тоже работает.
Имя модели в адресе указывается коротким, без вендора. На этом пути доступны модели Google; для моделей остальных вендоров нужен /v1.
Потоковый вариант того же метода — :streamGenerateContent с параметром alt=sse в строке запроса.
Текст лежит в первом элементе массива candidates, внутри content.parts:
{ "candidates": [ { "content": { "role": "model", "parts": [ {"text": "Канберра."} ] }, "finishReason": "STOP" } ], "usageMetadata": { "promptTokenCount": 8, "candidatesTokenCount": 4, "totalTokenCount": 12 } }
В официальных библиотеках разбирать массив вручную не нужно — готовый текст лежит в поле text.
Метод :countTokens считает, сколько токенов займёт запрос, не выполняя его: POST /v1beta/models/gemini-2.5-flash:countTokens.
GET /v1beta/models возвращает список в формате Google. Отвечает на него сам Google, поэтому в списке только модели Google — полный каталог отдаёт /v1/models.
- Единый API — базовый формат запроса и ответа.
- Модели — как устроены идентификаторы и что доступно.
Частые вопросы
Подойдёт ли официальная библиотека Google?
Да. Достаточно указать базовый адрес https://api.proxyapi.ru и ключ ProxyAPI — путь /v1beta/models библиотека дописывает сама.
Как передать ключ в этом формате?
Заголовком x-goog-api-key или параметром key в строке запроса — именно так его отправляют библиотеки Google. Заголовок Authorization тоже принимается.
Можно ли на /v1beta обратиться к модели другого вендора?
Нет. Этот путь принимает короткое имя модели Google. Для моделей других вендоров используйте /v1 — chat/completions, responses или messages.
Последняя редакция: 2 сентября 2026 г.