Google Ads
App · Marketing Automation · 20 actions
Build and manage Google Ads campaigns, budgets, ad groups and keywords, and pull performance, search term and keyword idea reports.
Actions
| Action | What it does |
|---|---|
| Add a keyword | Add a keyword to an ad group, with its match type and an optional bid of its own. |
| Create a budget | Create a daily campaign budget. |
| Create a campaign | Create a Search or Display campaign against an existing budget. |
| Create an ad group | Create an ad group inside a campaign, optionally with its own default cost-per-click bid. |
| Generate keyword ideas | Ask Google for keyword ideas from seed terms, a page URL, or both, with average monthly searches, competition and top-of-page bid estimates. |
| Get a campaign | Fetch one campaign by its ID. |
| Get a performance report | Report impressions, clicks, CTR, cost and conversions by campaign, ad group or keyword, over a date range, with the page's totals added up for you. |
| List accounts | List the Google Ads accounts the connected user can reach directly, with their ten-digit customer IDs. |
| List ad groups | List ad groups in an account, or only those in one campaign. |
| List ads | List the ads in an account with their type, final URLs and policy approval status. |
| List budgets | List the campaign budgets in an account, with their daily amount and how many campaigns use each. |
| List campaigns | List the campaigns in an account with their status, channel type, budget and schedule. |
| List keywords | List the keywords in an account with their match type, status and bid. |
| List search terms | List what people actually typed before an ad showed, with the keyword each term matched and its clicks, cost and conversions. |
| Remove a budget | Remove a campaign budget. |
| Remove a campaign | Remove a campaign. |
| Remove a keyword | Remove a keyword from its ad group. |
| Run a report query | Run any Google Ads Query Language (GAQL) query and return its rows. |
| Update a campaign | Rename a campaign, pause or enable it, or change when it stops. |
| Update an ad group | Rename an ad group, pause or enable it, or change its default CPC bid. |
Add a keyword
Add a keyword to an ad group, with its match type and an optional bid of its own.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Ad group ID
ad_group_idtextRequired - The ad group to add the keyword to.
- Keyword
keyword_texttextRequired - The word or phrase to bid on. At most 80 characters and 10 words.
- Match type
match_typetext - Exact matches the term only, Phrase matches it inside longer queries, Broad matches related searches.One of:
EXACT,PHRASE,BROAD. Default:BROAD. - Status
statustext - Whether the keyword starts serving immediately.One of:
ENABLED,PAUSED. Default:ENABLED. - CPC bid
cpc_bidnumber - Bid for this keyword in the account's currency. Leave blank to use the ad group's bid.At least 0.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "created",
"id": "222~444",
"resourceName": "customers/1234567890/adGroupCriteria/222~444"
}Create a budget
Create a daily campaign budget. Every campaign needs one, so this is the first step when building a campaign.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Budget name
nametextRequired - A name for the budget. Must be unique within the account.
- Daily amount
daily_amountnumberRequired - Average amount to spend per day, in the account's currency: enter 25 for 25 dollars, not micros.At least 0.
- Delivery method
delivery_methodtext - Standard spreads the budget across the day; Accelerated spends it as fast as it can.One of:
STANDARD,ACCELERATED. Default:STANDARD. - Shared budget
explicitly_sharedtrue/false - Let more than one campaign draw on this budget.Default:
false.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "created",
"id": "555",
"resourceName": "customers/1234567890/campaignBudgets/555"
}Create a campaign
Create a Search or Display campaign against an existing budget. It is created paused unless you say otherwise, so nothing starts spending before you've looked at it.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Campaign name
nametextRequired - A name for the campaign. Must be unique in the account.
- Budget ID
budget_idtextRequired - The budget to spend from: the ID from Create a budget, or its full resource name.
- Campaign type
channel_typetext - Where the ads run. Other campaign types need extra setup Google won't accept from a single step.One of:
SEARCH,DISPLAY. Default:SEARCH. - Status
statustext - Whether the campaign starts serving immediately.One of:
ENABLED,PAUSED. Default:PAUSED. - Start date
start_datedate - First day the campaign can serve. Defaults to today if left blank.
- End date
end_datedate - Last day the campaign serves. Leave blank to run indefinitely.
- EU political advertising
eu_political_advertisingtext - A declaration Google requires on every campaign: does this campaign run political advertising in the EU? Answer truthfully; it is a legal declaration, not a setting.One of:
DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING(No EU political advertising),CONTAINS_EU_POLITICAL_ADVERTISING(Contains EU political advertising). Default:DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "created",
"id": "111",
"resourceName": "customers/1234567890/campaigns/111"
}Create an ad group
Create an ad group inside a campaign, optionally with its own default cost-per-click bid.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Campaign ID
campaign_idtextRequired - The campaign the ad group belongs to.
- Ad group name
nametextRequired - A name for the ad group. Must be unique within the campaign.
- Status
statustext - Whether the ad group starts serving immediately.One of:
ENABLED,PAUSED. Default:PAUSED. - Default CPC bid
cpc_bidnumber - Most you'll pay for a click, in the account's currency: enter 1.50 for one dollar fifty.At least 0.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "created",
"id": "222",
"resourceName": "customers/1234567890/adGroups/222"
}Generate keyword ideas
Ask Google for keyword ideas from seed terms, a page URL, or both, with average monthly searches, competition and top-of-page bid estimates.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Seed keywords
keywordslist - Words or phrases to build ideas from. Give these, a page URL, or both.
- Page URL
page_urltext - A page to build ideas from, for example https://example.com/running-shoes.
- Language ID
language_idtext - Google language constant ID to restrict ideas to. 1000 is English. Leave blank for all languages.
- Location IDs
geo_target_idslist - Google geo target constant IDs to restrict ideas to, at most 10. 2840 is the United States. Leave blank for everywhere.
- Include adult keywords
include_adult_keywordstrue/false - Include adult keywords in the ideas.Default:
false. - Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100.
Outputs
countnumberideaslistnextPageTokentexttotalSizetext
Example output
{
"count": 1,
"ideas": [
{
"avgMonthlySearches": "40500",
"competition": "HIGH",
"competitionIndex": "84",
"highTopOfPageBid": 1.73,
"highTopOfPageBidMicros": "1730000",
"lowTopOfPageBid": 0.41,
"lowTopOfPageBidMicros": "410000",
"text": "trail running shoes"
}
],
"nextPageToken": null,
"totalSize": "1"
}Get a campaign
Fetch one campaign by its ID.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Campaign ID
campaign_idtextRequired - The campaign's numeric ID, or the full resource name it appears in.
Outputs
campaignobject
Example output
{
"campaign": {
"advertisingChannelType": "SEARCH",
"biddingStrategyType": "MANUAL_CPC",
"campaignBudget": "customers/1234567890/campaignBudgets/555",
"id": "111",
"name": "Brand \u2014 Search",
"resourceName": "customers/1234567890/campaigns/111",
"startDateTime": "2026-08-01 00:00:00",
"status": "ENABLED"
}
}Get a performance report
Report impressions, clicks, CTR, cost and conversions by campaign, ad group or keyword, over a date range, with the page's totals added up for you.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Report on
leveltext - What each row should represent.One of:
campaign,ad_group(Ad group),keyword. Default:campaign. - Date range
date_rangetext - The period to report on. Ignored when you set both a start and an end date below. Defaults to the last 30 days.One of:
TODAY,YESTERDAY,LAST_7_DAYS(Last 7 days),LAST_14_DAYS(Last 14 days),LAST_30_DAYS(Last 30 days),LAST_BUSINESS_WEEK(Last business week),THIS_WEEK_SUN_TODAY(This week (Sun–today)),THIS_WEEK_MON_TODAY(This week (Mon–today)),LAST_WEEK_SUN_SAT(Last week (Sun–Sat)),LAST_WEEK_MON_SUN(Last week (Mon–Sun)),THIS_MONTH(This month),LAST_MONTH(Last month). Default:LAST_30_DAYS. - Start date
start_datedate - First day to include. Set this with an end date for a custom range.
- End date
end_datedate - Last day to include. Set this with a start date for a custom range.
- Campaign ID
campaign_idtext - Only include rows for this campaign. Leave blank for all campaigns.
- Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100. - Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
leveltext- The level reported on: campaign, ad_group or keyword.
nextPageTokentextresultslisttotalResultsCounttexttotalsobject- The page's metrics added up, for branching on one number.
Example output
{
"count": 1,
"level": "campaign",
"nextPageToken": null,
"results": [
{
"campaign": {
"id": "111",
"name": "Brand \u2014 Search",
"status": "ENABLED"
},
"metrics": {
"averageCpc": 1420000.0,
"clicks": "531",
"conversions": 21.0,
"conversionsValue": 3150.0,
"costMicros": "754020000",
"ctr": 0.0428,
"impressions": "12400"
}
}
],
"totalResultsCount": "1",
"totals": {
"clicks": 531,
"conversions": 21.0,
"cost": 754.02,
"costMicros": 754020000,
"impressions": 12400
}
}List accounts
List the Google Ads accounts the connected user can reach directly, with their ten-digit customer IDs. Ask for details to also get each account's name and whether it is a manager, plus a shortlist of the ones a campaign can be built in.
Inputs
- Include account details
include_detailstrue/false - Look each account up to add its name, currency, and whether it is a manager or a test account, and to narrow the list to the usable ones. Costs one extra call per account.Default:
false.
Outputs
countnumbercustomerslistusablelist- Only present with details: the accounts that are reachable and are not managers — the ones a campaign can be built in.
usableCountnumber
Example output
{
"count": 2,
"customers": [
{
"currencyCode": "USD",
"customerId": "1234567890",
"descriptiveName": "Acme \u2014 Manager",
"manager": true,
"reachable": true,
"resourceName": "customers/1234567890",
"testAccount": false,
"timeZone": "America/New_York"
},
{
"currencyCode": "USD",
"customerId": "9876543210",
"descriptiveName": "Acme Retail",
"manager": false,
"reachable": true,
"resourceName": "customers/9876543210",
"testAccount": false,
"timeZone": "America/New_York"
}
],
"usable": [
{
"currencyCode": "USD",
"customerId": "9876543210",
"descriptiveName": "Acme Retail",
"manager": false,
"reachable": true,
"resourceName": "customers/9876543210",
"testAccount": false,
"timeZone": "America/New_York"
}
],
"usableCount": 1
}List ad groups
List ad groups in an account, or only those in one campaign.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Campaign ID
campaign_idtext - Only include rows for this campaign. Leave blank for all campaigns.
- Status
statustext - Only ad groups with this status. Blank means all live ones.One of:
ENABLED,PAUSED,REMOVED. - Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100. - Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
nextPageTokentext- Pass back as Page token to read the next page. Absent on the last page.
resultslisttotalResultsCounttext- Total rows matching the query, across all pages.
Example output
{
"count": 1,
"nextPageToken": null,
"results": [
{
"adGroup": {
"campaign": "customers/1234567890/campaigns/111",
"cpcBidMicros": "1500000",
"id": "222",
"name": "Brand terms",
"resourceName": "customers/1234567890/adGroups/222",
"status": "ENABLED",
"type": "SEARCH_STANDARD"
},
"campaign": {
"id": "111",
"name": "Brand \u2014 Search"
}
}
],
"totalResultsCount": "1"
}List ads
List the ads in an account with their type, final URLs and policy approval status. Scope it to a campaign or ad group if you like.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Ad group ID
ad_group_idtext - Only ads in this ad group. Leave blank for all.
- Campaign ID
campaign_idtext - Only include rows for this campaign. Leave blank for all campaigns.
- Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100. - Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
nextPageTokentext- Pass back as Page token to read the next page. Absent on the last page.
resultslisttotalResultsCounttext- Total rows matching the query, across all pages.
Example output
{
"count": 1,
"nextPageToken": null,
"results": [
{
"adGroup": {
"id": "222",
"name": "Brand terms"
},
"adGroupAd": {
"ad": {
"finalUrls": [
"https://example.com/brand"
],
"id": "333",
"type": "RESPONSIVE_SEARCH_AD"
},
"policySummary": {
"approvalStatus": "APPROVED"
},
"resourceName": "customers/1234567890/adGroupAds/222~333",
"status": "ENABLED"
},
"campaign": {
"id": "111",
"name": "Brand \u2014 Search"
}
}
],
"totalResultsCount": "1"
}List budgets
List the campaign budgets in an account, with their daily amount and how many campaigns use each.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100. - Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
nextPageTokentext- Pass back as Page token to read the next page. Absent on the last page.
resultslisttotalResultsCounttext- Total rows matching the query, across all pages.
Example output
{
"count": 1,
"nextPageToken": null,
"results": [
{
"campaignBudget": {
"amountMicros": "25000000",
"deliveryMethod": "STANDARD",
"explicitlyShared": false,
"id": "555",
"name": "Brand daily budget",
"referenceCount": "1",
"resourceName": "customers/1234567890/campaignBudgets/555",
"status": "ENABLED"
}
}
],
"totalResultsCount": "1"
}List campaigns
List the campaigns in an account with their status, channel type, budget and schedule. Removed campaigns are hidden unless you ask for them.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Status
statustext - Only campaigns with this status. Blank means all live ones.One of:
ENABLED,PAUSED,REMOVED. - Name contains
name_containstext - Only campaigns whose name contains this text. Quotes and backslashes aren't allowed.
- Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100. - Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
nextPageTokentext- Pass back as Page token to read the next page. Absent on the last page.
resultslisttotalResultsCounttext- Total rows matching the query, across all pages.
Example output
{
"count": 1,
"nextPageToken": null,
"results": [
{
"campaign": {
"advertisingChannelType": "SEARCH",
"biddingStrategyType": "MANUAL_CPC",
"campaignBudget": "customers/1234567890/campaignBudgets/555",
"id": "111",
"name": "Brand \u2014 Search",
"resourceName": "customers/1234567890/campaigns/111",
"startDateTime": "2026-08-01 00:00:00",
"status": "ENABLED"
}
}
],
"totalResultsCount": "1"
}List keywords
List the keywords in an account with their match type, status and bid. Scope it to a campaign or ad group if you like.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Ad group ID
ad_group_idtext - Only keywords in this ad group. Leave blank for all.
- Campaign ID
campaign_idtext - Only include rows for this campaign. Leave blank for all campaigns.
- Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100. - Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
nextPageTokentext- Pass back as Page token to read the next page. Absent on the last page.
resultslisttotalResultsCounttext- Total rows matching the query, across all pages.
Example output
{
"count": 1,
"nextPageToken": null,
"results": [
{
"adGroup": {
"id": "222",
"name": "Brand terms"
},
"adGroupCriterion": {
"cpcBidMicros": "1500000",
"criterionId": "444",
"keyword": {
"matchType": "PHRASE",
"text": "running shoes"
},
"negative": false,
"resourceName": "customers/1234567890/adGroupCriteria/222~444",
"status": "ENABLED"
},
"campaign": {
"id": "111",
"name": "Brand \u2014 Search"
}
}
],
"totalResultsCount": "1"
}List search terms
List what people actually typed before an ad showed, with the keyword each term matched and its clicks, cost and conversions. The report to mine for negative keywords.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Campaign ID
campaign_idtext - Only include rows for this campaign. Leave blank for all campaigns.
- Date range
date_rangetext - The period to report on. Ignored when you set both a start and an end date below. Defaults to the last 30 days.One of:
TODAY,YESTERDAY,LAST_7_DAYS(Last 7 days),LAST_14_DAYS(Last 14 days),LAST_30_DAYS(Last 30 days),LAST_BUSINESS_WEEK(Last business week),THIS_WEEK_SUN_TODAY(This week (Sun–today)),THIS_WEEK_MON_TODAY(This week (Mon–today)),LAST_WEEK_SUN_SAT(Last week (Sun–Sat)),LAST_WEEK_MON_SUN(Last week (Mon–Sun)),THIS_MONTH(This month),LAST_MONTH(Last month). Default:LAST_30_DAYS. - Start date
start_datedate - First day to include. Set this with an end date for a custom range.
- End date
end_datedate - Last day to include. Set this with a start date for a custom range.
- Page size
page_sizenumber - How many rows to return, 1 to 10000.From 1 to 10000. Default:
100. - Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
nextPageTokentext- Pass back as Page token to read the next page. Absent on the last page.
resultslisttotalResultsCounttext- Total rows matching the query, across all pages.
Example output
{
"count": 1,
"nextPageToken": null,
"results": [
{
"adGroup": {
"id": "222",
"name": "Brand terms"
},
"campaign": {
"id": "111",
"name": "Brand \u2014 Search"
},
"metrics": {
"clicks": "44",
"conversions": 3.0,
"costMicros": "63000000",
"impressions": "820"
},
"searchTermView": {
"searchTerm": "best running shoes 2026",
"status": "ADDED"
},
"segments": {
"keyword": {
"info": {
"matchType": "PHRASE",
"text": "running shoes"
}
}
}
}
],
"totalResultsCount": "1"
}Remove a budget
Remove a campaign budget. Remove or re-point the campaigns using it first: Google refuses to remove a budget that is still referenced.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Budget ID
budget_idtextRequired - The budget to remove.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "removed",
"id": "555",
"resourceName": "customers/1234567890/campaignBudgets/555"
}Remove a campaign
Remove a campaign. Its ad groups and keywords stop serving with it, and this can't be undone, so pause it with Update a campaign instead if you might want it back.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Campaign ID
campaign_idtextRequired - The campaign to remove.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "removed",
"id": "111",
"resourceName": "customers/1234567890/campaigns/111"
}Remove a keyword
Remove a keyword from its ad group. This can't be undone, so pause it with Add a keyword's status instead if you might want it back.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Keyword ID
keyword_idtextRequired - The keyword's composite ID, 'adGroupId~criterionId': the ID returned by Add a keyword, or its full resource name.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "removed",
"id": "222~444",
"resourceName": "customers/1234567890/adGroupCriteria/222~444"
}Run a report query
Run any Google Ads Query Language (GAQL) query and return its rows. Use this when the ready-made list and report steps don't cover what you need.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- GAQL query
querytextRequired - The query to run, for example: SELECT campaign.id, campaign.name, metrics.clicks FROM campaign WHERE segments.date DURING LAST_7_DAYS.
- Page token
page_tokentext - Return the next page. Use the Next page token from a previous run of this step; leave blank for the first page.
Outputs
countnumber- Number of rows on this page.
nextPageTokentext- Pass back as Page token to read the next page. Absent on the last page.
resultslisttotalResultsCounttext- Total rows matching the query, across all pages.
Example output
{
"count": 1,
"nextPageToken": null,
"results": [
{
"campaign": {
"id": "111",
"name": "Brand \u2014 Search",
"resourceName": "customers/1234567890/campaigns/111"
},
"metrics": {
"clicks": "342"
}
}
],
"totalResultsCount": "1"
}Update a campaign
Rename a campaign, pause or enable it, or change when it stops. Only the fields you fill in are changed.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Campaign ID
campaign_idtextRequired - The campaign to change.
- New name
nametext - Leave blank to keep the current name.
- New status
statustext - Leave blank to keep the current status. Use Remove a campaign to delete one.One of:
ENABLED,PAUSED. - New end date
end_datedate - Leave blank to keep the current end date.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "updated",
"id": "111",
"resourceName": "customers/1234567890/campaigns/111"
}Update an ad group
Rename an ad group, pause or enable it, or change its default CPC bid. Only the fields you fill in are changed.
Inputs
- Account
customer_idtextRequired - The Google Ads account to work in. Pick one, or type a ten-digit customer ID (hyphens optional) for an account further down a manager hierarchy: the list only shows accounts the connected user can reach directly.
- Ad group ID
ad_group_idtextRequired - The ad group to change.
- New name
nametext - Leave blank to keep the current name.
- New status
statustext - Leave blank to keep the current status.One of:
ENABLED,PAUSED. - New CPC bid
cpc_bidnumber - In the account's currency. Leave blank to keep the current bid.At least 0.
Outputs
actiontext- What happened: created, updated or removed.
idtext- The record's ID on its own. For a keyword this is the composite 'adGroupId~criterionId' its removal needs.
resourceNametext- Full resource name of the changed record, for example customers/1234567890/campaigns/98765.
Example output
{
"action": "updated",
"id": "222",
"resourceName": "customers/1234567890/adGroups/222"
}