> ## Documentation Index
> Fetch the complete documentation index at: https://docs.automate.ax/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# On Vercel project domain event

> Start an automation when a Vercel project domain changes.

`onVercelProjectDomainEvent` is the broad project-domain webhook trigger. It emits creation, update, deletion, verification, verification loss, and move events. Prefer a specific project-domain trigger when the automation handles one operation.

```ts automations/watch-vercel-domains.automation.ts theme={null}
import { automation } from "automate.ax"
import { onVercelProjectDomainEvent } from "automate.ax/vercel"

export default automation("Watch Vercel domains", () => {
  const event = onVercelProjectDomainEvent()
  event.transform(({ id, type }) => ({
    deliveryId: id,
    type,
  }))
})
```

Optional static `account` defaults to the project's Vercel binding and must use OAuth.

## Trigger data

The event `type` is `project.domain.created`, `project.domain.updated`, `project.domain.deleted`, `project.domain.verified`, `project.domain.unverified`, or `project.domain.moved`. Payloads are discriminated by `type`: standard lifecycle events include `domain` and `project`, updates include `previous` and `next` settings, and moves include `from`, `to`, and `isRedirect`.
