Skip to main content

Google-Ads full reference

This is the full reference documentation for the Google-Ads agent connector.

Supported entities and actions​

The Google-Ads connector supports the following entities and actions.

EntityActions
Accessible CustomersList
AccountsList, Context Store Search, Context Store SQL Query
CampaignsList, Update, Context Store Search, Context Store SQL Query
Ad GroupsList, Update, Context Store Search, Context Store SQL Query
Ad Group AdsList, Context Store Search, Context Store SQL Query
Campaign LabelsList, Create, Context Store Search, Context Store SQL Query
Ad Group LabelsList, Create, Context Store Search, Context Store SQL Query
Ad Group Ad LabelsList, Context Store Search, Context Store SQL Query
LabelsCreate

Accessible Customers​

Accessible Customers List​

Returns resource names of customers directly accessible by the user authenticating the call. This does not traverse customer_client manager hierarchies and therefore does not establish access to manager-only client accounts. No customer_id is required for this endpoint, and Google ignores login-customer-id for this call.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "accessible_customers",
"action": "list"
}'

Python SDK​

await google_ads.accessible_customers.list()

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "accessible_customers",
"action": "list"
}'

Accounts​

Accounts List​

Generic GAQL search carrier. Use accounts.list for any supported GAQL FROM resource, including views without a dedicated modeled entity; the entity name describes this connector action, not the GAQL resource. The customer must be directly accessible to the OAuth identity. This connector exposes no login-customer-id input or header, so do not use it for client accounts reachable only through a manager. Google Ads API v19+ fixes search pages at 10,000 rows and does not accept pageSize. When meta.next_page_token is non-null, repeat the same customer_id and byte-for-byte identical query with that token in pageToken.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "accounts",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.accounts.list(
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "accounts",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
querystringNoGoogle Ads Query Language (GAQL) query
pageTokenstringNoPass response metadata next_page_token ($.nextPageToken) to retrieve the next fixed-size page; keep the GAQL query identical.
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
customerobject

Meta​

Field NameTypeDescription
next_page_tokenstring

Search and filter accounts records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "accounts",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"customer.auto_tagging_enabled": true
}
}
}
}
}'

Python SDK​

await google_ads.accounts.context_store_search(
query={"filter": {"eq": {"customer.auto_tagging_enabled": True}}}
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "accounts",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"customer.auto_tagging_enabled": True}}}
}
}'

Parameters​

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields​

Field NameTypeDescription
customer.auto_tagging_enabledbooleanWhether auto-tagging is enabled for the account
customer.call_reporting_setting.call_conversion_actionstringCall conversion action resource name
customer.call_reporting_setting.call_conversion_reporting_enabledbooleanWhether call conversion reporting is enabled
customer.call_reporting_setting.call_reporting_enabledbooleanWhether call reporting is enabled
customer.conversion_tracking_setting.conversion_tracking_idintegerConversion tracking ID
customer.conversion_tracking_setting.cross_account_conversion_tracking_idintegerCross-account conversion tracking ID
customer.currency_codestringCurrency code for the account (e.g., USD)
customer.descriptive_namestringDescriptive name of the customer account
customer.final_url_suffixstringURL suffix appended to final URLs
customer.has_partners_badgebooleanWhether the account has a Google Partners badge
customer.idintegerUnique customer account ID
customer.managerbooleanWhether this is a manager (MCC) account
customer.optimization_scorenumberOptimization score for the account (0.0 to 1.0)
customer.optimization_score_weightnumberWeight of the optimization score
customer.pay_per_conversion_eligibility_failure_reasonsarrayReasons why pay-per-conversion is not eligible
customer.remarketing_setting.google_global_site_tagstringGoogle global site tag snippet
customer.resource_namestringResource name of the customer
customer.test_accountbooleanWhether this is a test account
customer.time_zonestringTime zone of the account
customer.tracking_url_templatestringTracking URL template for the account
segments.datestringDate segment for the report row
Response Schema
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].customer.auto_tagging_enabledbooleanWhether auto-tagging is enabled for the account
data[].customer.call_reporting_setting.call_conversion_actionstringCall conversion action resource name
data[].customer.call_reporting_setting.call_conversion_reporting_enabledbooleanWhether call conversion reporting is enabled
data[].customer.call_reporting_setting.call_reporting_enabledbooleanWhether call reporting is enabled
data[].customer.conversion_tracking_setting.conversion_tracking_idintegerConversion tracking ID
data[].customer.conversion_tracking_setting.cross_account_conversion_tracking_idintegerCross-account conversion tracking ID
data[].customer.currency_codestringCurrency code for the account (e.g., USD)
data[].customer.descriptive_namestringDescriptive name of the customer account
data[].customer.final_url_suffixstringURL suffix appended to final URLs
data[].customer.has_partners_badgebooleanWhether the account has a Google Partners badge
data[].customer.idintegerUnique customer account ID
data[].customer.managerbooleanWhether this is a manager (MCC) account
data[].customer.optimization_scorenumberOptimization score for the account (0.0 to 1.0)
data[].customer.optimization_score_weightnumberWeight of the optimization score
data[].customer.pay_per_conversion_eligibility_failure_reasonsarrayReasons why pay-per-conversion is not eligible
data[].customer.remarketing_setting.google_global_site_tagstringGoogle global site tag snippet
data[].customer.resource_namestringResource name of the customer
data[].customer.test_accountbooleanWhether this is a test account
data[].customer.time_zonestringTime zone of the account
data[].customer.tracking_url_templatestringTracking URL template for the account
data[].segments.datestringDate segment for the report row

Accounts Context Store SQL Query​

Run a SQL query against accounts records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.

Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "accounts",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Python SDK​

await google_ads.accounts.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "accounts",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
sqlstringYesSQL query to execute against this entity's Context Store data
limitintegerNoMaximum results to return
Response Schema
Field NameTypeDescription
dataarrayProjected rows, with dictionary keys matching the selected columns
metaobjectQuery metadata
meta.has_morebooleanWhether the result was limited and more rows are available
meta.cursornullSQL query results do not use cursor pagination
meta.took_msnumber | nullQuery execution time in milliseconds

Campaigns​

Campaigns List​

Retrieves campaign data using GAQL query.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaigns",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.campaigns.list(
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaigns",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
querystringNoGAQL query for campaigns
pageTokenstringNoPass response metadata next_page_token ($.nextPageToken) to retrieve the next fixed-size page; keep the GAQL query identical.
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
campaignobject
campaignBudgetobject
metricsobject
segmentsobject

Meta​

Field NameTypeDescription
next_page_tokenstring

Campaigns Update​

Updates campaign properties such as status (enable/pause), name, or other mutable fields using the Google Ads CampaignService mutate endpoint.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaigns",
"action": "update",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.campaigns.update(
operations=[],
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaigns",
"action": "update",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
operationsarray<object>YesList of campaign operations to perform
operations.updateMaskstringNoComma-separated list of field paths to update (e.g., name,status)
operations.updateobjectNoCampaign fields to update
operations.update.resourceNamestringYesResource name of the campaign to update (e.g., customers/1234567890/campaigns/111222333)
operations.update.namestringNoNew campaign name
operations.update.status"ENABLED" | "PAUSED"NoCampaign status (ENABLED or PAUSED)
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
resultsarray<object>

Search and filter campaigns records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaigns",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"campaign.id": 0
}
}
}
}
}'

Python SDK​

await google_ads.campaigns.context_store_search(
query={"filter": {"eq": {"campaign.id": 0}}}
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaigns",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"campaign.id": 0}}}
}
}'

Parameters​

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields​

Field NameTypeDescription
campaign.idintegerCampaign ID
campaign.namestringCampaign name
campaign.statusstringCampaign status (ENABLED, PAUSED, REMOVED)
campaign.advertising_channel_typestringAdvertising channel type (SEARCH, DISPLAY, etc.)
campaign.advertising_channel_sub_typestringAdvertising channel sub-type
campaign.bidding_strategystringBidding strategy resource name
campaign.bidding_strategy_typestringBidding strategy type
campaign.campaign_budgetstringCampaign budget resource name
campaign_budget.amount_microsintegerCampaign budget amount in micros
campaign.start_date_timestringCampaign start date
campaign.end_date_timestringCampaign end date
campaign.serving_statusstringCampaign serving status
campaign.resource_namestringResource name of the campaign
campaign.labelsarrayLabels applied to the campaign
campaign.network_settings.target_google_searchbooleanWhether targeting Google Search
campaign.network_settings.target_search_networkbooleanWhether targeting search network
campaign.network_settings.target_content_networkbooleanWhether targeting content network
campaign.network_settings.target_partner_search_networkbooleanWhether targeting partner search network
metrics.clicksintegerNumber of clicks
metrics.ctrnumberClick-through rate
metrics.conversionsnumberNumber of conversions
metrics.conversions_valuenumberTotal conversions value
metrics.cost_microsintegerCost in micros
metrics.impressionsintegerNumber of impressions
metrics.average_cpcnumberAverage cost per click
metrics.average_cpmnumberAverage cost per thousand impressions
metrics.interactionsintegerNumber of interactions
segments.datestringDate segment for the report row
segments.hourintegerHour segment
segments.ad_network_typestringAd network type segment
Response Schema
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].campaign.idintegerCampaign ID
data[].campaign.namestringCampaign name
data[].campaign.statusstringCampaign status (ENABLED, PAUSED, REMOVED)
data[].campaign.advertising_channel_typestringAdvertising channel type (SEARCH, DISPLAY, etc.)
data[].campaign.advertising_channel_sub_typestringAdvertising channel sub-type
data[].campaign.bidding_strategystringBidding strategy resource name
data[].campaign.bidding_strategy_typestringBidding strategy type
data[].campaign.campaign_budgetstringCampaign budget resource name
data[].campaign_budget.amount_microsintegerCampaign budget amount in micros
data[].campaign.start_date_timestringCampaign start date
data[].campaign.end_date_timestringCampaign end date
data[].campaign.serving_statusstringCampaign serving status
data[].campaign.resource_namestringResource name of the campaign
data[].campaign.labelsarrayLabels applied to the campaign
data[].campaign.network_settings.target_google_searchbooleanWhether targeting Google Search
data[].campaign.network_settings.target_search_networkbooleanWhether targeting search network
data[].campaign.network_settings.target_content_networkbooleanWhether targeting content network
data[].campaign.network_settings.target_partner_search_networkbooleanWhether targeting partner search network
data[].metrics.clicksintegerNumber of clicks
data[].metrics.ctrnumberClick-through rate
data[].metrics.conversionsnumberNumber of conversions
data[].metrics.conversions_valuenumberTotal conversions value
data[].metrics.cost_microsintegerCost in micros
data[].metrics.impressionsintegerNumber of impressions
data[].metrics.average_cpcnumberAverage cost per click
data[].metrics.average_cpmnumberAverage cost per thousand impressions
data[].metrics.interactionsintegerNumber of interactions
data[].segments.datestringDate segment for the report row
data[].segments.hourintegerHour segment
data[].segments.ad_network_typestringAd network type segment

Campaigns Context Store SQL Query​

Run a SQL query against campaigns records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.

Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaigns",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Python SDK​

await google_ads.campaigns.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaigns",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
sqlstringYesSQL query to execute against this entity's Context Store data
limitintegerNoMaximum results to return
Response Schema
Field NameTypeDescription
dataarrayProjected rows, with dictionary keys matching the selected columns
metaobjectQuery metadata
meta.has_morebooleanWhether the result was limited and more rows are available
meta.cursornullSQL query results do not use cursor pagination
meta.took_msnumber | nullQuery execution time in milliseconds

Ad Groups​

Ad Groups List​

Retrieves ad group data using GAQL query.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_groups",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.ad_groups.list(
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_groups",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
querystringNoGAQL query for ad groups
pageTokenstringNoPass response metadata next_page_token ($.nextPageToken) to retrieve the next fixed-size page; keep the GAQL query identical.
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
campaignobject
adGroupobject
metricsobject
segmentsobject

Meta​

Field NameTypeDescription
next_page_tokenstring

Ad Groups Update​

Updates ad group properties such as status (enable/pause), name, or bid amounts using the Google Ads AdGroupService mutate endpoint.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_groups",
"action": "update",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.ad_groups.update(
operations=[],
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_groups",
"action": "update",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
operationsarray<object>YesList of ad group operations to perform
operations.updateMaskstringNoComma-separated list of field paths to update (e.g., name,status,cpcBidMicros)
operations.updateobjectNoAd group fields to update
operations.update.resourceNamestringYesResource name of the ad group to update (e.g., customers/1234567890/adGroups/111222333)
operations.update.namestringNoNew ad group name
operations.update.status"ENABLED" | "PAUSED"NoAd group status (ENABLED or PAUSED)
operations.update.cpcBidMicrosstringNoCPC bid amount in micros (1,000,000 micros = 1 currency unit)
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
resultsarray<object>

Search and filter ad groups records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_groups",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"campaign.id": 0
}
}
}
}
}'

Python SDK​

await google_ads.ad_groups.context_store_search(
query={"filter": {"eq": {"campaign.id": 0}}}
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_groups",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"campaign.id": 0}}}
}
}'

Parameters​

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields​

Field NameTypeDescription
campaign.idintegerParent campaign ID
ad_group.idintegerAd group ID
ad_group.namestringAd group name
ad_group.statusstringAd group status (ENABLED, PAUSED, REMOVED)
ad_group.typestringAd group type
ad_group.ad_rotation_modestringAd rotation mode
ad_group.base_ad_groupstringBase ad group resource name
ad_group.campaignstringParent campaign resource name
ad_group.cpc_bid_microsintegerCPC bid in micros
ad_group.cpm_bid_microsintegerCPM bid in micros
ad_group.cpv_bid_microsintegerCPV bid in micros
ad_group.effective_target_cpa_microsintegerEffective target CPA in micros
ad_group.effective_target_cpa_sourcestringSource of the effective target CPA
ad_group.effective_target_roasnumberEffective target ROAS
ad_group.effective_target_roas_sourcestringSource of the effective target ROAS
ad_group.labelsarrayLabels applied to the ad group
ad_group.resource_namestringResource name of the ad group
ad_group.target_cpa_microsintegerTarget CPA in micros
ad_group.target_roasnumberTarget ROAS
ad_group.tracking_url_templatestringTracking URL template
metrics.cost_microsintegerCost in micros
segments.datestringDate segment for the report row
Response Schema
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].campaign.idintegerParent campaign ID
data[].ad_group.idintegerAd group ID
data[].ad_group.namestringAd group name
data[].ad_group.statusstringAd group status (ENABLED, PAUSED, REMOVED)
data[].ad_group.typestringAd group type
data[].ad_group.ad_rotation_modestringAd rotation mode
data[].ad_group.base_ad_groupstringBase ad group resource name
data[].ad_group.campaignstringParent campaign resource name
data[].ad_group.cpc_bid_microsintegerCPC bid in micros
data[].ad_group.cpm_bid_microsintegerCPM bid in micros
data[].ad_group.cpv_bid_microsintegerCPV bid in micros
data[].ad_group.effective_target_cpa_microsintegerEffective target CPA in micros
data[].ad_group.effective_target_cpa_sourcestringSource of the effective target CPA
data[].ad_group.effective_target_roasnumberEffective target ROAS
data[].ad_group.effective_target_roas_sourcestringSource of the effective target ROAS
data[].ad_group.labelsarrayLabels applied to the ad group
data[].ad_group.resource_namestringResource name of the ad group
data[].ad_group.target_cpa_microsintegerTarget CPA in micros
data[].ad_group.target_roasnumberTarget ROAS
data[].ad_group.tracking_url_templatestringTracking URL template
data[].metrics.cost_microsintegerCost in micros
data[].segments.datestringDate segment for the report row

Ad Groups Context Store SQL Query​

Run a SQL query against ad groups records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.

Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_groups",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Python SDK​

await google_ads.ad_groups.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_groups",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
sqlstringYesSQL query to execute against this entity's Context Store data
limitintegerNoMaximum results to return
Response Schema
Field NameTypeDescription
dataarrayProjected rows, with dictionary keys matching the selected columns
metaobjectQuery metadata
meta.has_morebooleanWhether the result was limited and more rows are available
meta.cursornullSQL query results do not use cursor pagination
meta.took_msnumber | nullQuery execution time in milliseconds

Ad Group Ads​

Ad Group Ads List​

Retrieves ad group ad data using GAQL query.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_ads",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.ad_group_ads.list(
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_ads",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
querystringNoGAQL query for ad group ads
pageTokenstringNoPass response metadata next_page_token ($.nextPageToken) to retrieve the next fixed-size page; keep the GAQL query identical.
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
adGroupobject
adGroupAdobject
segmentsobject

Meta​

Field NameTypeDescription
next_page_tokenstring

Search and filter ad group ads records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_ads",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"ad_group.id": 0
}
}
}
}
}'

Python SDK​

await google_ads.ad_group_ads.context_store_search(
query={"filter": {"eq": {"ad_group.id": 0}}}
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_ads",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"ad_group.id": 0}}}
}
}'

Parameters​

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields​

Field NameTypeDescription
ad_group.idintegerParent ad group ID
ad_group_ad.ad.idintegerAd ID
ad_group_ad.ad.namestringAd name
ad_group_ad.ad.typestringAd type
ad_group_ad.statusstringAd group ad status (ENABLED, PAUSED, REMOVED)
ad_group_ad.ad_strengthstringAd strength rating
ad_group_ad.ad.display_urlstringDisplay URL of the ad
ad_group_ad.ad.final_urlsarrayFinal URLs for the ad
ad_group_ad.ad.final_mobile_urlsarrayFinal mobile URLs for the ad
ad_group_ad.ad.final_url_suffixstringFinal URL suffix
ad_group_ad.ad.tracking_url_templatestringTracking URL template
ad_group_ad.ad.resource_namestringResource name of the ad
ad_group_ad.ad_groupstringAd group resource name
ad_group_ad.resource_namestringResource name of the ad group ad
ad_group_ad.labelsarrayLabels applied to the ad group ad
ad_group_ad.policy_summary.approval_statusstringPolicy approval status
ad_group_ad.policy_summary.review_statusstringPolicy review status
segments.datestringDate segment for the report row
Response Schema
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].ad_group.idintegerParent ad group ID
data[].ad_group_ad.ad.idintegerAd ID
data[].ad_group_ad.ad.namestringAd name
data[].ad_group_ad.ad.typestringAd type
data[].ad_group_ad.statusstringAd group ad status (ENABLED, PAUSED, REMOVED)
data[].ad_group_ad.ad_strengthstringAd strength rating
data[].ad_group_ad.ad.display_urlstringDisplay URL of the ad
data[].ad_group_ad.ad.final_urlsarrayFinal URLs for the ad
data[].ad_group_ad.ad.final_mobile_urlsarrayFinal mobile URLs for the ad
data[].ad_group_ad.ad.final_url_suffixstringFinal URL suffix
data[].ad_group_ad.ad.tracking_url_templatestringTracking URL template
data[].ad_group_ad.ad.resource_namestringResource name of the ad
data[].ad_group_ad.ad_groupstringAd group resource name
data[].ad_group_ad.resource_namestringResource name of the ad group ad
data[].ad_group_ad.labelsarrayLabels applied to the ad group ad
data[].ad_group_ad.policy_summary.approval_statusstringPolicy approval status
data[].ad_group_ad.policy_summary.review_statusstringPolicy review status
data[].segments.datestringDate segment for the report row

Ad Group Ads Context Store SQL Query​

Run a SQL query against ad group ads records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.

Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_ads",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Python SDK​

await google_ads.ad_group_ads.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_ads",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
sqlstringYesSQL query to execute against this entity's Context Store data
limitintegerNoMaximum results to return
Response Schema
Field NameTypeDescription
dataarrayProjected rows, with dictionary keys matching the selected columns
metaobjectQuery metadata
meta.has_morebooleanWhether the result was limited and more rows are available
meta.cursornullSQL query results do not use cursor pagination
meta.took_msnumber | nullQuery execution time in milliseconds

Campaign Labels​

Campaign Labels List​

Retrieves campaign label associations using GAQL query.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaign_labels",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.campaign_labels.list(
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaign_labels",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
querystringNoGAQL query for campaign labels
pageTokenstringNoPass response metadata next_page_token ($.nextPageToken) to retrieve the next fixed-size page; keep the GAQL query identical.
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
campaignobject
campaignLabelobject
labelobject

Meta​

Field NameTypeDescription
next_page_tokenstring

Campaign Labels Create​

Creates a campaign-label association, applying an existing label to a campaign for organization and filtering.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaign_labels",
"action": "create",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.campaign_labels.create(
operations=[],
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaign_labels",
"action": "create",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
operationsarray<object>YesList of campaign label operations to perform
operations.createobjectNoCampaign label association to create
operations.create.campaignstringYesResource name of the campaign (e.g., customers/1234567890/campaigns/111222333)
operations.create.labelstringYesResource name of the label (e.g., customers/1234567890/labels/444555666)
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
resultsarray<object>

Search and filter campaign labels records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaign_labels",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"campaign.id": 0
}
}
}
}
}'

Python SDK​

await google_ads.campaign_labels.context_store_search(
query={"filter": {"eq": {"campaign.id": 0}}}
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaign_labels",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"campaign.id": 0}}}
}
}'

Parameters​

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields​

Field NameTypeDescription
campaign.idintegerCampaign ID
campaign_label.resource_namestringResource name of the campaign label
label.idintegerLabel ID
label.namestringLabel name
label.resource_namestringResource name of the label
Response Schema
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].campaign.idintegerCampaign ID
data[].campaign_label.resource_namestringResource name of the campaign label
data[].label.idintegerLabel ID
data[].label.namestringLabel name
data[].label.resource_namestringResource name of the label

Campaign Labels Context Store SQL Query​

Run a SQL query against campaign labels records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.

Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "campaign_labels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Python SDK​

await google_ads.campaign_labels.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "campaign_labels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
sqlstringYesSQL query to execute against this entity's Context Store data
limitintegerNoMaximum results to return
Response Schema
Field NameTypeDescription
dataarrayProjected rows, with dictionary keys matching the selected columns
metaobjectQuery metadata
meta.has_morebooleanWhether the result was limited and more rows are available
meta.cursornullSQL query results do not use cursor pagination
meta.took_msnumber | nullQuery execution time in milliseconds

Ad Group Labels​

Ad Group Labels List​

Retrieves ad group label associations using GAQL query.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_labels",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.ad_group_labels.list(
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_labels",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
querystringNoGAQL query for ad group labels
pageTokenstringNoPass response metadata next_page_token ($.nextPageToken) to retrieve the next fixed-size page; keep the GAQL query identical.
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
adGroupobject
adGroupLabelobject
labelobject

Meta​

Field NameTypeDescription
next_page_tokenstring

Ad Group Labels Create​

Creates an ad group-label association, applying an existing label to an ad group for organization and filtering.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_labels",
"action": "create",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.ad_group_labels.create(
operations=[],
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_labels",
"action": "create",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
operationsarray<object>YesList of ad group label operations to perform
operations.createobjectNoAd group label association to create
operations.create.adGroupstringYesResource name of the ad group (e.g., customers/1234567890/adGroups/111222333)
operations.create.labelstringYesResource name of the label (e.g., customers/1234567890/labels/444555666)
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
resultsarray<object>

Search and filter ad group labels records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_labels",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"ad_group.id": 0
}
}
}
}
}'

Python SDK​

await google_ads.ad_group_labels.context_store_search(
query={"filter": {"eq": {"ad_group.id": 0}}}
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_labels",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"ad_group.id": 0}}}
}
}'

Parameters​

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields​

Field NameTypeDescription
ad_group.idintegerAd group ID
ad_group_label.resource_namestringResource name of the ad group label
label.idintegerLabel ID
label.namestringLabel name
label.resource_namestringResource name of the label
Response Schema
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].ad_group.idintegerAd group ID
data[].ad_group_label.resource_namestringResource name of the ad group label
data[].label.idintegerLabel ID
data[].label.namestringLabel name
data[].label.resource_namestringResource name of the label

Ad Group Labels Context Store SQL Query​

Run a SQL query against ad group labels records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.

Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_labels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Python SDK​

await google_ads.ad_group_labels.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_labels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
sqlstringYesSQL query to execute against this entity's Context Store data
limitintegerNoMaximum results to return
Response Schema
Field NameTypeDescription
dataarrayProjected rows, with dictionary keys matching the selected columns
metaobjectQuery metadata
meta.has_morebooleanWhether the result was limited and more rows are available
meta.cursornullSQL query results do not use cursor pagination
meta.took_msnumber | nullQuery execution time in milliseconds

Ad Group Ad Labels​

Ad Group Ad Labels List​

Retrieves ad group ad label associations using GAQL query.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_ad_labels",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.ad_group_ad_labels.list(
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_ad_labels",
"action": "list",
"params": {
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
querystringNoGAQL query for ad group ad labels
pageTokenstringNoPass response metadata next_page_token ($.nextPageToken) to retrieve the next fixed-size page; keep the GAQL query identical.
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
adGroupAdobject
adGroupAdLabelobject
labelobject

Meta​

Field NameTypeDescription
next_page_tokenstring

Search and filter ad group ad labels records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_ad_labels",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"ad_group_ad.ad.id": 0
}
}
}
}
}'

Python SDK​

await google_ads.ad_group_ad_labels.context_store_search(
query={"filter": {"eq": {"ad_group_ad.ad.id": 0}}}
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_ad_labels",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"ad_group_ad.ad.id": 0}}}
}
}'

Parameters​

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields​

Field NameTypeDescription
ad_group_ad.ad.idintegerAd ID
ad_group_ad_label.resource_namestringResource name of the ad group ad label
label.idintegerLabel ID
label.namestringLabel name
label.resource_namestringResource name of the label
Response Schema
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].ad_group_ad.ad.idintegerAd ID
data[].ad_group_ad_label.resource_namestringResource name of the ad group ad label
data[].label.idintegerLabel ID
data[].label.namestringLabel name
data[].label.resource_namestringResource name of the label

Ad Group Ad Labels Context Store SQL Query​

Run a SQL query against ad group ad labels records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.

Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "ad_group_ad_labels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Python SDK​

await google_ads.ad_group_ad_labels.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "ad_group_ad_labels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
sqlstringYesSQL query to execute against this entity's Context Store data
limitintegerNoMaximum results to return
Response Schema
Field NameTypeDescription
dataarrayProjected rows, with dictionary keys matching the selected columns
metaobjectQuery metadata
meta.has_morebooleanWhether the result was limited and more rows are available
meta.cursornullSQL query results do not use cursor pagination
meta.took_msnumber | nullQuery execution time in milliseconds

Labels​

Labels Create​

Creates a new label that can be applied to campaigns, ad groups, or ads for organization and reporting purposes.

CLI​

airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "google-ads",
"entity": "labels",
"action": "create",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Python SDK​

await google_ads.labels.create(
operations=[],
customer_id="<str>"
)

API​

curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "labels",
"action": "create",
"params": {
"operations": [],
"customer_id": "<str>"
}
}'

Parameters​

Parameter NameTypeRequiredDescription
operationsarray<object>YesList of label operations to perform
operations.createobjectNoLabel to create
operations.create.namestringYesName for the new label
operations.create.descriptionstringNoDescription for the label
operations.create.textLabelobjectNoText label styling
operations.create.textLabel.backgroundColorstringNoBackground color in hex format (e.g., #FF0000)
operations.create.textLabel.descriptionstringNoDescription of the text label
customer_idstringYesGoogle Ads customer ID (10 digits, no dashes)
Response Schema

Records​

Field NameTypeDescription
resultsarray<object>