> ## 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 moved

> Start an automation when a domain moves between Vercel projects.

`onVercelProjectDomainMoved` emits when a domain moves from one Vercel project to another.

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

export default automation("Watch moved Vercel project domains", () => {
  const event = onVercelProjectDomainMoved()
  event.transform(({ payload }) => ({
    domain: payload.domain.name,
    fromProjectId: payload.from.projectId,
    leftRedirect: payload.isRedirect,
    toProjectId: payload.to.projectId,
  }))
})
```

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

## Trigger data

Returns `type: "project.domain.moved"`. `payload.from.projectId` and `payload.to.projectId` identify the projects, while `payload.isRedirect` reports whether Vercel left a redirect on the previous project.
