Skip to main content

Google Ads Tools

Four tools for listing, querying, and managing Google Ads campaigns.
If you have only one Google Ads account connected, the customerId parameter is optional — Lever auto-resolves it. If multiple accounts are connected, you must specify the ID. Use list_connections to find your account IDs.

List all campaigns in the connected Google Ads account with performance metrics. Type: read
ParameterTypeRequiredDescription
customerIdstringNoGoogle Ads customer ID
Example prompt: “Show me all my Google Ads campaigns” Returns: Campaign name, status, daily budget, CPA, and CTR for each campaign.
Get details of a specific Google Ads campaign. Type: read
ParameterTypeRequiredDescription
customerIdstringNoGoogle Ads customer ID
campaignIdstringYesCampaign ID
Example prompt: “Get details for Google Ads campaign 12345” Returns: Campaign name, ID, status, budget, impressions, clicks, and CPA.
Execute a raw GAQL (Google Ads Query Language) query for advanced reporting. Type: read
ParameterTypeRequiredDescription
customerIdstringNoGoogle Ads customer ID
querystringYesGAQL query string
Example prompt: “Run a GAQL query to get campaign performance for the last 30 days”

Example GAQL Queries

Campaign performance:
SELECT
  campaign.name,
  campaign.status,
  metrics.impressions,
  metrics.clicks,
  metrics.cost_micros,
  metrics.conversions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.cost_micros DESC
Ad group metrics:
SELECT
  ad_group.name,
  ad_group.status,
  metrics.impressions,
  metrics.clicks,
  metrics.average_cpc
FROM ad_group
WHERE campaign.id = 12345
  AND segments.date DURING LAST_7_DAYS
Keyword stats:
SELECT
  ad_group_criterion.keyword.text,
  ad_group_criterion.keyword.match_type,
  metrics.impressions,
  metrics.clicks,
  metrics.conversions
FROM keyword_view
WHERE segments.date DURING LAST_7_DAYS
ORDER BY metrics.impressions DESC
LIMIT 20

Update a Google Ads campaign’s status or daily budget. Goes through draft-preview-confirm — returns a preview that must be confirmed before the change executes. Type: write (draft-preview-confirm)
ParameterTypeRequiredDescription
customerIdstringNoGoogle Ads customer ID
campaignIdstringYesCampaign ID
statusENABLED | PAUSEDNoNew campaign status
dailyBudgetnumberNoNew daily budget in dollars
Example prompt: “Pause my Google Ads campaign 12345”
Google Ads uses ENABLED and PAUSED for campaign status. This is different from Meta Ads, which uses ACTIVE and PAUSED.
Returns: A draft preview showing the proposed changes and a draftId. Call confirm_draft to execute.