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

# Meta Ads Tools

> Actions for managing Meta Ads campaigns

# Meta Ads Tools

Four tools for listing campaigns, viewing insights, managing ad sets, and updating campaigns.

<Note>
  If you have only one Meta Ads account connected, the `adAccountId` parameter is optional — Lever auto-resolves it. If multiple accounts are connected, you must specify the ID. Use [`list_connections`](/tools/cross-platform#list_connections) to find your account IDs.
</Note>

***

## meta\_ads\_list\_campaigns

List all campaigns in the connected Meta Ads account.

**Type:** read

| Parameter     | Type   | Required | Description        |
| ------------- | ------ | -------- | ------------------ |
| `adAccountId` | string | No       | Meta ad account ID |

**Example prompt:** "Show me all my Meta Ads campaigns"

**Returns:** Campaign name, status, and daily budget for each campaign.

***

## meta\_ads\_get\_insights

Get performance insights for Meta Ads campaigns over a date range.

**Type:** read

| Parameter     | Type                                       | Required | Description                           |
| ------------- | ------------------------------------------ | -------- | ------------------------------------- |
| `adAccountId` | string                                     | No       | Meta ad account ID                    |
| `since`       | string                                     | Yes      | Start date (YYYY-MM-DD)               |
| `until`       | string                                     | Yes      | End date (YYYY-MM-DD)                 |
| `level`       | `account` \| `campaign` \| `adset` \| `ad` | No       | Reporting level (defaults to account) |

**Example prompt:** "Get Meta Ads insights for the last 14 days at the campaign level"

**Returns:** Performance metrics for the specified date range and reporting level.

***

## meta\_ads\_list\_adsets

List ad sets for a specific Meta Ads campaign.

**Type:** read

| Parameter     | Type   | Required | Description        |
| ------------- | ------ | -------- | ------------------ |
| `adAccountId` | string | No       | Meta ad account ID |
| `campaignId`  | string | Yes      | Campaign ID        |

**Example prompt:** "Show me the ad sets in Meta campaign 23456"

**Returns:** Ad set name, status, and daily budget for each ad set.

***

## meta\_ads\_update\_campaign

Update a Meta Ads campaign's status or daily budget. Goes through [draft-preview-confirm](/trust/safety-model) — returns a preview that must be confirmed before the change executes.

**Type:** write (draft-preview-confirm)

| Parameter     | Type                 | Required | Description                 |
| ------------- | -------------------- | -------- | --------------------------- |
| `adAccountId` | string               | No       | Meta ad account ID          |
| `campaignId`  | string               | Yes      | Campaign ID                 |
| `status`      | `ACTIVE` \| `PAUSED` | No       | New campaign status         |
| `dailyBudget` | number               | No       | New daily budget in dollars |

**Example prompt:** "Pause my Meta Ads campaign 23456"

<Note>
  Meta Ads uses `ACTIVE` and `PAUSED` for campaign status. This is different from Google Ads, which uses `ENABLED` and `PAUSED`.
</Note>

**Returns:** A draft preview showing the proposed changes and a `draftId`. Call [`confirm_draft`](/tools/cross-platform#confirm_draft) to execute.
