For Agents
Register and manage the email contacts who receive Google Cloud billing, technical, security, and legal notifications, scoped per organisation, folder, or project.
Use for: Add a security@ alias as the security contact on the production project, I need to remove an ex-employee's email from all essential contacts, List who currently receives billing notifications for the org, Send a test email to verify the security contact still works
Not supported: Does not send custom alerts, manage IAM members, or configure Cloud Monitoring channels — use for managing recipients of Google-originated billing, technical, security, and legal notifications only.
The Essential Contacts API lets Google Cloud customers register the right people to receive critical Google notifications about billing, technical, security, suspension, and legal events for their organisation, folder, or project. Contacts are scoped to a resource and subscribe to specific notification categories so notices reach the team that owns each domain. The API supports creating, updating, listing, computing effective contacts (by inheriting from parents), and sending test messages to verify routing. It is the canonical interface for ensuring outage and policy notifications never go to a stale single inbox.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Essential Contacts API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Essential Contacts API.
Create contacts with chosen notification categories (technical, billing, security, suspension, legal, product updates) on a resource
Update an existing contact's notification categories or email after a team change
List contacts directly attached to a resource and compute effective contacts inherited from parents
Compute the effective contact set for a project by category, including inherited contacts
Send a test message to a contact to confirm the email is reachable and properly routed
Delete contacts that are no longer relevant to remove them from notification routing
Patterns agents use Essential Contacts API for, with concrete tasks.
★ Cloud Hygiene at Onboarding
Cloud platform teams set up Essential Contacts as part of the standard project onboarding flow so every new project inherits org-level billing, technical, and security contacts and adds project-specific ones. The API is invoked by Terraform or a custom provisioning bot during project creation, replacing fragile manual UI steps. Once wired in, every new project gets correctly routed notifications from day one.
POST /v1/{+parent}/contacts on the new project with email='cloud-billing@company.com' and notificationCategorySubscriptions=['BILLING'].
Periodic Contact Audits
Compliance and SRE teams audit essential contacts quarterly to catch addresses pointing to ex-employees or deprecated aliases. The API exposes the compute endpoint to roll up inherited contacts and sendTestMessage to validate deliverability on each one. Audits that took days of UI clicking finish in a single scripted run.
For each project, GET /v1/{+parent}/contacts:compute and call sendTestMessage on each contact, recording any whose delivery fails.
Security Incident Routing
Security teams ensure that suspension and security-category notifications go to a 24/7 monitored alias rather than an individual inbox. The API attaches the right alias to the org or folder so all child projects inherit it, and updates are atomic — no need to touch each project. This becomes the documented control that satisfies auditor questions about incident-channel coverage.
POST /v1/{+parent}/contacts on the organisation with email='soc@company.com' and notificationCategorySubscriptions=['SECURITY','SUSPENSION'].
Agent-Driven Contact Hygiene via Jentic
An AI agent that monitors HR offboarding events can scrub departing employees' emails from Essential Contacts across every project through Jentic. The agent finds the list, list-by-resource, and delete operations by intent and runs them in one pass without learning the per-resource pattern by hand.
Search Jentic for 'remove a Google Cloud essential contact', load DELETE /v1/{+name} schema, and execute it for every contact whose email matches the offboarded user.
7 endpoints — the essential contacts api lets google cloud customers register the right people to receive critical google notifications about billing, technical, security, suspension, and legal events for their organisation, folder, or project.
METHOD
PATH
DESCRIPTION
/v1/{+parent}/contacts
Create a contact attached to an org, folder, or project
/v1/{+parent}/contacts
List contacts directly attached to a resource
/v1/{+parent}/contacts:compute
Compute effective contacts including inherited
/v1/{+name}
Update a contact's email or notification categories
/v1/{+name}
Delete a contact
/v1/{+resource}/contacts:sendTestMessage
Send a test message to verify routing
/v1/{+parent}/contacts
Create a contact attached to an org, folder, or project
/v1/{+parent}/contacts
List contacts directly attached to a resource
/v1/{+parent}/contacts:compute
Compute effective contacts including inherited
/v1/{+name}
Update a contact's email or notification categories
/v1/{+name}
Delete a contact
/v1/{+resource}/contacts:sendTestMessage
Send a test message to verify routing
Three things that make agents converge on Jentic-routed access.
Credential isolation
Google service account keys are stored encrypted in the Jentic vault. Agents receive scoped, short-lived OAuth access tokens with cloud-platform scope, so privileged contact-management operations cannot be replayed from a leaked agent context.
Intent-based discovery
Agents search by intent (e.g. 'add a billing contact to a project') and Jentic returns the create, compute, or sendTestMessage operation with input schemas, so the agent does not have to learn the resource-name path conventions across orgs/folders/projects.
Time to first call
Direct Essential Contacts integration: 1 day for OAuth, role provisioning, and the resource-name pattern. Through Jentic: under 30 minutes for an offboarding-driven cleanup script.
Alternatives and complements available in the Jentic catalogue.
Specific to using Essential Contacts API through Jentic.
What authentication does the Essential Contacts API use?
Essential Contacts uses Google OAuth 2.0 with the cloud-platform scope. A service account or end-user with essentialcontacts.admin (or a parent role like resourcemanager.projectIamAdmin) on the resource can create and modify contacts. Through Jentic, service account keys are stored encrypted and the agent receives only short-lived Bearer tokens.
Can I attach contacts at the organisation level so projects inherit them?
Yes. POST /v1/{+parent}/contacts on an organization or folder resource and child folders and projects automatically include those contacts when GET /v1/{+parent}/contacts:compute is called for the relevant categories.
What are the rate limits for the Essential Contacts API?
Per-project quotas in the Cloud Console default to 600 read and 60 write requests per minute. There is no charge for the API, and quota increases can be requested through the standard Cloud Console quotas flow.
How do I verify a contact actually receives notifications through Jentic?
Search Jentic for 'send a test essential contact message', load the POST /v1/{+resource}/contacts:sendTestMessage schema, and execute it with the contact resource name and the categories to test. Google sends a real test email to the contact.
Is the Essential Contacts API free?
Yes. The API is free to use; only standard quota limits apply. The notifications themselves are also free — Essential Contacts is a control plane for Google's existing notification emails.
How do I list every contact, including inherited ones, for a project?
Call GET /v1/{+parent}/contacts:compute with the project resource name and the notificationCategories you care about. The response includes contacts attached directly plus those inherited from the parent folder and organisation.
GET STARTED