Skip to main content
Monk needs a service account JSON key to provision and manage infrastructure in your Google Cloud project. This page walks you through creating one with the right permissions.

What You Need

  • Service account JSON key file
  • Optional: project ID (auto-extracted from the key)
  • Optional: default region (e.g., us-central1)

Create Credentials

1

Open the Service Accounts page

2

Create a service account

Click Create Service Account. Name it something like monk-deployment.
3

Grant roles

For a quick start, grant Compute Admin and Service Account User. For production, create a custom role with the minimum permissions listed below.
4

Create a JSON key

Click the service account name → Keys tab → Add KeyCreate new keyJSON. Download the file.
5

Provide to Monk

When you deploy to GCP, Monk asks for the key file through a secure form. Select the downloaded JSON. You can also tell your agent:

Required Permissions

Predefined roles (simpler, broader):
  • roles/compute.admin (Compute Admin)
  • roles/iam.serviceAccountUser (Service Account User)
For production, use a custom role with only the permissions Monk needs. Scope summary: Compute Engine instances, images, and instance groups. Disks, snapshots, and resource policies (backups). VPC networks, subnets, firewalls, and external IPs. Load balancing: health checks, forwarding rules, backend services, proxies, URL maps. Operations and regions metadata.

How Credentials Are Stored

Credentials are encrypted at rest on your machine and on your Monk cluster using your cloud provider’s KMS — so your infrastructure can manage itself autonomously. They are never sent to Monk servers and never exposed to the LLM. See Security for full details.

Troubleshooting

Service account disabled — check the service account status in IAM & Admin. JSON key file malformed — re-download the key. Make sure you selected JSON format, not P12. Missing roles — if Monk reports permission errors, verify the custom role or predefined roles are bound to the service account. Ask your agent for help:

Deploy your first app

Credentials ready — now deploy