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

# Create deployment

> Create a Git-backed Vercel deployment or redeploy an existing build.

`createVercelDeployment` starts a build from Git or an existing deployment.

```ts automations/create-vercel-deployment.automation.ts theme={null}
import { automation } from "automate.ax"
import { createVercelDeployment } from "automate.ax/vercel"

export default automation("Deploy Vercel project", () => {
  const deployment = createVercelDeployment({
    gitSource: { ref: "main", repoId: 123456, type: "github" },
    name: "docs-site",
    project: "prj_123",
    target: "production",
  })
  deployment.id
})
```

`name` and either `gitSource` or `deploymentId` are required. Git sources support GitHub repository IDs, GitLab project IDs, and Bitbucket repository UUIDs, with a ref and optional SHA. `deploymentId` redeploys an existing build; `withLatestCommit` defaults to `false`. Optional `project`, `target`, `customEnvironment`, `metadata`, `forceNew`, and `skipAutoDetectionConfirmation` expose common provider controls. The output is Vercel's complete typed created-deployment response.
