Если ошибка появляется именно при нажатии Create API key — «Failed to generate API key: Permission denied» или «у вас нет прав создать ключ в этом проекте» — рабочего ключа ещё нет. Сначала зафиксируйте Google-аккаунт и точный ID проекта, выбранного в AI Studio. SDK, модель и параметры запроса пока ни при чём.
Для русскоязычного пользователя важно сразу разделить три похожих сообщения: отказ при создании ключа, невозможность открыть AI Studio из-за аккаунта или доступности сервиса и ответ 403 от API после того, как ключ уже существует. Эта инструкция относится к первому состоянию.
| Граница | Что должно работать | Кто обычно исправляет |
|---|---|---|
| Доступ к AI Studio | Аккаунт соответствует требованиям Workspace, региона и возраста | Администратор Workspace или владелец аккаунта |
| Видимость проекта | Тот же аккаунт видит или импортирует нужный Google Cloud project | Владелец проекта или администратор организации |
| Создание ключа | В выбранном проекте разрешены пять текущих операций | Администратор IAM проекта |
| Первая проверка | Созданный ключ хранится на сервере и проходит минимальный запрос | Разработчик, только после создания |
Правило остановки: пока ключ не создан, не отлаживайте библиотеку, model ID, quota, billing, API-ответ 403 или 429. Эти ветки начинаются после успешного создания.
Администратору проекта можно сразу передать пять операций, которые сейчас перечисляет Google: resourcemanager.projects.get, apikeys.keys.create, serviceusage.services.enable, iam.serviceAccounts.create и iam.serviceAccountApiKeyBindings.create. Просите разрешить их в нужном проекте по правилам организации, а не выдавать роль Owner «на всякий случай».
После одного согласованного изменения вернитесь к тому же аккаунту и проекту и повторите создание один раз. Успех означает: ключ существует, не попал в браузерный код или переписку и прошёл один небольшой серверный запрос.
Сначала зафиксируйте аккаунт и project ID
Откройте страницу API Keys в Google AI Studio под тем аккаунтом, который должен владеть интеграцией. Запишите:
- адрес в переключателе Google-аккаунтов;
- именно ID проекта, а не только его отображаемое имя.
Каждый ключ Gemini API принадлежит Google Cloud project. Через проект определяются IAM, включённые сервисы, service account для нового authorization key, ограничения ключа, использование и дальнейшее восстановление. Вкладка может выглядеть правильно, но работать под другим Google-аккаунтом или с похожим по имени проектом.
Если существующий Cloud project не отображается в AI Studio, не создавайте его копию. Текущая документация Google по ключам предлагает импортировать уже существующий проект в AI Studio и управлять ключом там.
Один чистый сеанс помогает проверить смешанные входы: выйдите из посторонних аккаунтов либо откройте приватное окно, войдите только под нужной учётной записью, выберите тот же проект и попробуйте один раз. Чистый сеанс не добавляет IAM-права, не включает сервис Workspace и не отменяет organization policy.
Если личный аккаунт работает, а рабочий — нет
Это полезный сигнал, но не доказательство конкретной отсутствующей роли. Личный аккаунт может вести в личный проект с простыми правилами. Рабочий аккаунт может зависеть от Workspace service access, членства в проекте, IAM, операций с service account, возрастных или региональных требований и политики организации.
Не переносите production-интеграцию в личный проект только потому, что там кнопка сработала. Сохраните нужную рабочую идентичность и проект, затем передайте проблему владельцу соответствующей границы.
| Наблюдение | Что оно подсказывает | Чего оно не доказывает |
|---|---|---|
| Личный аккаунт создаёт ключ | Другая связка аккаунт/проект проходит | Рабочему аккаунту не хватает ровно одной роли |
| Рабочий аккаунт не видит проект | Возможна проблема членства, импорта или организации | Gemini API недоступен всем |
| Проект виден, но Create не работает | Возможны IAM, service enablement, service account, binding или policy | Очистка cache исправит разрешения |
| Несколько аккаунтов не проходят в одном окружении | Нужна проверка проекта, eligibility или policy | Следует создавать всё новые проекты |
Передайте администратору пять текущих разрешений
Новый процесс создания authorization key в AI Studio шире старого совета «добавьте apikeys.keys.create».
| Разрешение | Зачем оно нужно при создании |
|---|---|
resourcemanager.projects.get | Прочитать и подтвердить выбранный проект |
apikeys.keys.create | Создать ресурс API key |
serviceusage.services.enable | Включить необходимый сервис, если это требуется |
iam.serviceAccounts.create | Создать связанный service account |
iam.serviceAccountApiKeyBindings.create | Привязать API key к этому service account |
Источник: официальное руководство Gemini API key, проверено 15 июля 2026 года.
В справочнике ролей Cloud IAM для API Keys видно, что API Keys Admin содержит операции API key, включая apikeys.keys.create. Однако операции включения сервиса, создания service account и binding относятся к другим семействам разрешений. Поэтому название одной роли ещё не подтверждает всю цепочку.
Не просите «сделать меня Owner». Передайте пять точных permission, аккаунт, project ID и время ошибки. Администратор должен подобрать разрешённые организацией роли или custom role.
Сообщение, которое можно отправить администратору
Под аккаунтом ACCOUNT_EMAIL я не могу создать authorization key в Google AI Studio для проекта PROJECT_ID. В TIMESTAMP_WITH_TIME_ZONE AI Studio показала «Failed to generate API key: Permission denied».
Подтвердите, пожалуйста, что аккаунт может использовать AI Studio и видеть этот проект, а затем проверьте следующие операции:
resourcemanager.projects.getapikeys.keys.createserviceusage.services.enableiam.serviceAccounts.createiam.serviceAccountApiKeyBindings.createКлюч не был создан; никаких credentials в сообщении нет.
В тикете нужны project ID, аккаунт, точное время с часовым поясом и полный текст ошибки. Ключ, cookie, access token или другой секрет прикладывать нельзя.
Не смешивайте Workspace и IAM проекта
Администратор Google Workspace и администратор IAM проекта отвечают за разные проверки.
Workspace service access определяет, может ли управляемый аккаунт пользоваться AI Studio. Cloud IAM определяет, что этот principal может делать внутри конкретного проекта. Успех на одной стороне не предоставляет права на другой.
Руководство Google по Workspace-доступу к AI Studio описывает управление сервисом для managed users и дополнительные ограничения для некоторых учащихся младше 18 лет. Страница доступных регионов отдельно описывает geography и age eligibility. Это входные условия, а не замена проектным permissions.
| Текущее состояние | Кому передать | Что проверить |
|---|---|---|
| Рабочий аккаунт не открывает AI Studio | Workspace admin | Service access, organizational unit, возраст/education account |
| AI Studio открывается, но проекта нет | Owner проекта или organization admin | Членство, импорт, правильный аккаунт |
| Проект виден, но ключ не создаётся | Project IAM admin | Пять операций и organization policy |
| Ключ создан, но API отвечает 403 | Разработчик и owner проекта | Соответствие key/project, restriction, auth route, регион и resource access |
Если граница принадлежит администратору, остановитесь там. Смена браузеров, новые проекты и широкие роли увеличивают неопределённость и не меняют владельца ошибки.
Повторите создание один раз в том же проекте
После согласованного изменения вернитесь под тот же аккаунт в тот же project. Обновите AI Studio либо используйте чистый сеанс с одним аккаунтом, снова проверьте project ID и нажмите Create API key один раз.
Не меняйте одновременно аккаунт, проект, браузер и роль. Сохраните короткий журнал: исходный аккаунт и project ID, одобренное изменение, время изменения, время повтора и результат. Если менялось несколько административных границ, каждой должен соответствовать свой контролируемый повтор.
После успеха проверьте тип ключа. Google сейчас описывает новые ключи AI Studio как authorization keys, связанные с Google Cloud service account и по умолчанию ограниченные Gemini API. Документация Cloud по API-key authentication объясняет binding с service account.
Старые инструкции могут говорить о standard API key. Сейчас Google сообщает, что Gemini API начнёт отклонять standard API keys в сентябре 2026 года. Это изменяемая дата миграции: перед долгосрочным развёртыванием снова проверьте официальное руководство.
Скопируйте секрет в серверное хранилище. Не кладите его в screenshot, frontend bundle, mobile app, публичный repository, issue или чат. Для браузерного приложения вызов Gemini должен идти через ваш backend, а не прямо с открытым ключом.
Проверьте один приватный запрос после создания
Создание доказывает существование ресурса ключа. Оно ещё не доказывает, что runtime читает нужный секрет или что все модели, quota и billing доступны.
Задайте переменную только в приватной серверной среде:
hljs bashexport GEMINI_API_KEY="замените значение только в приватной среде"
Затем выполните минимальную проверку аутентификации:
hljs bashcurl "https://generativelanguage.googleapis.com/v1beta/models" \
-H "x-goog-api-key: $GEMINI_API_KEY"
Успешный ответ показывает, что credential достигает Gemini API. Он не обещает доступ ко всем моделям, достаточную quota или успех следующей бизнес-операции. Реальный model request запускайте после этой минимальной проверки.
Четыре правила безопасности:
- храните ключ только в утверждённом server-side secret store;
- не используйте клиентские переменные вроде
NEXT_PUBLIC_*; - не вставляйте секрет в тикет, screenshot или чат;
- немедленно ротируйте раскрытый ключ, даже если он всё ещё работает.
Если отказ сохранился, эскалируйте границу
Администратор должен получить воспроизводимый контекст, но не секрет. Отправьте:
- точный Cloud project ID;
- Google-аккаунт;
- полный видимый текст ошибки;
- timestamp с часовым поясом;
- действие: создание authorization key в AI Studio;
- открывается ли AI Studio и виден ли проект;
- изменил ли результат чистый сеанс с одним аккаунтом.
В исходном состоянии ключа быть не должно, поэтому отправлять его нечего. Если последующая попытка создала ключ, сообщите только факт успеха, а credential оставьте в секретном канале.
Остановитесь и передайте вопрос администратору, если AI Studio отключена для Workspace, проект скрыт организацией, policy запрещает service account/key/binding, пользователь не соответствует region/age/verification требованиям или security policy требует другой утверждённый credential flow.
Личный аккаунт, VPN или сторонний provider не являются автоматическим production-исправлением. Организация должна разрешить целевую схему либо назвать поддерживаемую альтернативу.
Отделите отказ создания от позднего 403
Слова «permission denied» встречаются в разных фазах, но начальные проверки у них разные.
| Состояние | Что уже существует | Где видна ошибка | Что проверять первым |
|---|---|---|---|
| AI Studio не создала ключ | Рабочего ключа нет | Операция Create в AI Studio | Аккаунт, видимость проекта, пять permissions, Workspace/policy |
API вернул 403 PERMISSION_DENIED | Ключ существует | HTTP response | Key/project, API restriction, endpoint/auth, region и resource access |
API вернул 429 RESOURCE_EXHAUSTED | Ключ существует, auth мог пройти | HTTP response после допуска запроса | Лимиты проекта, скорость, tokens и retry |
Не лечите первую строку изменением кода и не лечите вторую бесконечным созданием ключей. Последовательность одна: создать, приватно сохранить, проверить маленьким запросом, затем разбирать фактический response.
После успешного создания вопросы Free Tier относятся к лимитам Gemini API, а location-specific отказ — к доступности Gemini по регионам. Они не должны задерживать исправление самой операции Create.
Закройте инцидент по проверяемым ответам
| Вопрос | Условие закрытия |
|---|---|
| Какой аккаунт вошёл? | Записана целевая рабочая или личная identity |
| Какой проект владеет ключом? | Подтверждён точный project ID в AI Studio |
| Можно ли пользоваться AI Studio? | Workspace, region и age gates пройдены |
| Видит ли аккаунт проект? | Нужный существующий проект выбран или импортирован |
| Разрешено ли создание? | Пять текущих операций разрешены |
| Что изменилось перед повтором? | Записано одно одобренное административное изменение |
| Где хранится ключ? | Server-side secret или environment variable |
| Как он проверен? | Один минимальный приватный запрос успешен |
| Что ушло в поддержку? | Только контекст проекта и ошибка, без credentials |
Если создание по-прежнему не проходит, передайте пакет владельцу первой неуспешной границы. Если ключ создан, а запрос не проходит, продолжайте уже в ветке API response.
Часто задаваемые вопросы
Почему личный Google-аккаунт создаёт ключ, а рабочий — нет?
Они обычно используют разные identity/project boundaries. Рабочий аккаунт может зависеть от Workspace service access, project membership, IAM, service-account operations или organization policy. Успех личного аккаунта не определяет конкретную роль и не разрешает production-обход.
Что делает apikeys.keys.create?
Разрешение создаёт ресурс API key. Текущий flow AI Studio также включает чтение проекта, включение сервиса, создание service account и binding, поэтому одной операции может быть недостаточно.
Почему роли API Keys Admin может не хватить?
Она покрывает API-key operations, но не гарантирует операции из семейств Service Usage и IAM service accounts. Передайте администратору пять permission, а не угадывайте более широкую роль.
Поможет ли очистка cache?
Чистый сеанс помогает обнаружить неправильный аккаунт или проект. Он не выдаёт IAM, не включает AI Studio для Workspace и не отменяет policy. Используйте его один раз как диагностический тест.
Можно ли создать ключ напрямую в Cloud Console?
AI Studio — документированная поверхность создания Gemini API keys, куда можно импортировать Cloud projects. Console нужен для IAM, restrictions, service accounts и organization controls. Если организация требует иной flow, следуйте ему, а не используйте Console как обход.
Что делать, если ключ уже есть, но API отвечает 403?
Это request-time failure. Проверьте, что runtime читает новый ключ, он принадлежит нужному проекту, restriction допускает Gemini API, endpoint и auth shape верны, а ресурс доступен для этого маршрута.
Должен ли администратор создать ключ и отправить его мне?
Предпочтительнее выдать approved developer/service identity минимальные права и сохранить ключ через командный secret-management process. Если администратор создаёт его сам, передача допустима только через утверждённый секретный канал, не через email, чат или тикет.
Какие данные отправить при повторном отказе?
Project ID, аккаунт, точную ошибку, timestamp, действие, видимость проекта и результат одного чистого сеанса. Никогда не отправляйте API key, token или cookie.
Будут ли standard Gemini API keys работать постоянно?
Сейчас Google указывает сентябрь 2026 года как начало отклонения standard API keys в Gemini API. Новые ключи AI Studio используют authorization-key flow с service account. Перед датой обязательно проверьте актуальные инструкции.



