Skip to content

GCP.EssentialContacts reference

Source: src/GCP/EssentialContacts/Contact.ts

A project-level Google Cloud Essential Contact.

Essential Contacts have no labels field, so Alchemy stamps ownership into the email plus-tag for list / nuke. Email is identity — changing it replaces the contact. Language and notification categories update in place.

Technical contact

const contact = yield* GCP.EssentialContacts.Contact("Ops", {
email: "ops@example.com",
languageTag: "en-US",
notificationCategorySubscriptions: ["TECHNICAL"],
});

Subscribe to every category

const contact = yield* GCP.EssentialContacts.Contact("Ops", {
email: "ops@example.com",
notificationCategorySubscriptions: ["ALL"],
});
const contact = yield* GCP.EssentialContacts.Contact("Ops", {
email: "ops@example.com",
languageTag: "en-GB",
notificationCategorySubscriptions: ["SECURITY", "TECHNICAL"],
});

Source: src/GCP/EssentialContacts/FolderContact.ts

A folder-level Google Cloud Essential Contact.

Essential Contacts have no labels field, so Alchemy stamps ownership into the email plus-tag for list / nuke. Folder and email are identity — changing either replaces the contact. Language and notification categories update in place.

Technical contact on a folder

const contact = yield* GCP.EssentialContacts.FolderContact("Ops", {
folderId: "folders/123",
email: "ops@example.com",
languageTag: "en-US",
notificationCategorySubscriptions: ["TECHNICAL"],
});

Subscribe to every category

const contact = yield* GCP.EssentialContacts.FolderContact("Ops", {
folderId: "123",
email: "ops@example.com",
notificationCategorySubscriptions: ["ALL"],
});
const contact = yield* GCP.EssentialContacts.FolderContact("Ops", {
folderId: "folders/123",
email: "ops@example.com",
languageTag: "en-GB",
notificationCategorySubscriptions: ["SECURITY", "TECHNICAL"],
});

Source: src/GCP/EssentialContacts/OrganizationContact.ts

An organization-level Google Cloud Essential Contact.

Essential Contacts have no labels field, so Alchemy stamps ownership into the email plus-tag for list / nuke. Organization and email are identity — changing either replaces the contact. Language and notification categories update in place.

OrganizationContact: Creating an Organization Contact

Section titled “OrganizationContact: Creating an Organization Contact”

Technical contact on an organization

const contact = yield* GCP.EssentialContacts.OrganizationContact("Ops", {
organization: "organizations/123",
email: "ops@example.com",
languageTag: "en-US",
notificationCategorySubscriptions: ["TECHNICAL"],
});

Subscribe to every category

const contact = yield* GCP.EssentialContacts.OrganizationContact("Ops", {
organization: "123",
email: "ops@example.com",
notificationCategorySubscriptions: ["ALL"],
});

OrganizationContact: Updating an Organization Contact

Section titled “OrganizationContact: Updating an Organization Contact”
const contact = yield* GCP.EssentialContacts.OrganizationContact("Ops", {
organization: "organizations/123",
email: "ops@example.com",
languageTag: "en-GB",
notificationCategorySubscriptions: ["SECURITY", "TECHNICAL"],
});