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

> Creates a campaign in an ad account.

`metaAds.createCampaign` creates a campaign in an ad account.

```ts automations/meta-ads-create-campaign.automation.ts theme={null}
import { automation, onDashboardRun } from "automate.ax"
import { metaAds } from "automate.ax/meta-ads"

export default automation("Create campaign", () => {
  onDashboardRun({ title: "Create campaign" })
  const result = metaAds.createCampaign({
    adAccountId: "123456789",
    name: "Fall launch",
    objective: "OUTCOME_SALES",
  })
  // Use result in the next advertising, reporting, or delivery operation.
})
```

`status` defaults to `PAUSED`; `specialAdCategories` defaults to an empty array; `isAdsetBudgetSharingEnabled` defaults to `false`. Set `dailyBudget` or `lifetimeBudget` for a campaign-level budget. Optional second argument `{ account }` selects a static project account binding.

Returns the created campaign ID. Creation is not replay-safe.
