Гугл Cloud: сервисный аккаунт
Как создать сервисный аккаунт Гугла, включить API Таблиц и Диска, скачать JSON-ключ и безопасно передать доступ для n8n или бота.
Что сделать
Создать отдельный проект в Гугл Cloud, включить нужные API, создать сервисный аккаунт и JSON-ключ.
Что передать
Передать JSON-файл ключа защищённым сообщением и email сервисного аккаунта.
Доступы и материалы
- Гугл-аккаунт владельца
- Гугл Cloud Console
- Google Sheets API
- Google Drive API
- JSON-ключ
Сервисный аккаунт нужен, когда автоматизация должна стабильно читать и записывать данные в Гугл Таблицы, Гугл Диск или документы без входа через ваш личный аккаунт.
Пример: n8n берёт темы из таблицы, создаёт Гугл-доки с материалами, складывает файлы в папку проекта и ведёт лог расходов.
Когда это нужно
Сервисный аккаунт обычно нужен для:
- n8n-сценариев с Гугл Таблицами;
- контент-завода, который создаёт документы и таблицы;
- бота, который пишет заявки в таблицу;
- парсера, который выгружает результат в Гугл Диск;
- автоматической генерации отчётов.
Если задача разовая и вы сами будете запускать действие руками, иногда хватает обычного OAuth-доступа. Для стабильной автоматизации лучше сервисный аккаунт.
1. Создайте отдельный проект
Откройте Гугл Cloud Console и создайте отдельный проект под автоматизацию.
Название можно поставить простое:
content-factory
или:
client-automation
Не используйте старый проект, где уже лежат чужие сервисы, если не уверены, что там можно выдавать доступы.
2. Включите нужные API
Откройте раздел API Library:
https://console.cloud.google.com/apis/library
Включите:
Google Sheets API, если автоматизация работает с таблицами;Google Drive API, если нужно читать, создавать или складывать файлы на Диск.
Если проект создаёт Гугл-доки, доступ к файлам всё равно обычно идёт через Drive API.
3. Создайте сервисный аккаунт
Откройте:
IAM and Admin -> Service Accounts
Нажмите создание сервисного аккаунта и задайте понятное имя, например:
automation-service
После создания скопируйте email сервисного аккаунта. Он будет похож на:
automation-service@project-id.iam.gserviceaccount.com
Этот email потом нужно добавить в доступ к папке или таблице.
4. Создайте JSON-ключ
Откройте созданный сервисный аккаунт, перейдите во вкладку Keys и создайте новый ключ в формате JSON.
Гугл скачает файл на компьютер. Это и есть ключ доступа. Его нельзя отправлять в общий чат, хранить в открытой таблице или прикладывать к публичному документу.
5. Дайте аккаунту доступ к папке и таблице
Сам JSON-ключ ещё не даёт доступ ко всем вашим файлам. Нужно отдельно открыть конкретную папку или таблицу на email сервисного аккаунта.
Если нужна папка проекта, откройте её в Гугл Диске, нажмите “Поделиться” и добавьте email сервисного аккаунта с правом редактора.
Если нужна таблица, откройте таблицу, нажмите “Поделиться” и добавьте тот же email.
Подробный маршрут есть в гайде Гугл Диск и таблица: доступ.
Что передать разработчику
Передайте:
- JSON-файл ключа защищённым сообщением;
- email сервисного аккаунта;
- ссылку на папку проекта;
- ссылку на таблицу, если она уже создана;
- какие действия можно делать: читать, записывать, создавать файлы, обновлять строки.
Если таблицы ещё нет, можно передать только папку. Тогда таблицу можно создать уже внутри проекта.
Частые ошибки
- включили
Google Sheets API, но забылиGoogle Drive API; - скачали JSON, но не добавили email сервисного аккаунта в доступ к папке;
- дали доступ только к одной таблице, а автоматизация должна создавать новые документы в папке;
- отправили ключ в общий чат;
- создали ключ в личном проекте без понимания, кто потом будет его обслуживать.
Для n8n отдельно смотрите гайд Гугл Таблицы и n8n.