"Unrecognized field in the query" error for campaign.feed_types in Python using v22

7 views
Skip to first unread message

Benjamin Mason

unread,
Nov 13, 2025, 6:49:08 PM (11 hours ago) Nov 13
to (Deprecated) Google Ads API and AdWords API Forum
Hello Google Ads API Support Team,
I am encountering an Unrecognized field in the query error when attempting to select the campaign.feed_types field in a Python script using API version v22.
The field is listed in the v22 documentation as available under the campaign resource, but my request consistently fails. I have verified that my client library is up to date and that I am targeting the correct API version in my service call.
Here are the technical details:
API Version: v22
Client Library: Python
Error Message: (Please insert the full, exact error message here, including any fieldPathElements or requestId if available in your logs)

Query used:
SELECT 
    campaign.feed_types,
    campaign.id,
FROM campaign
WHERE 
    campaign.advertising_channel_type IN ('PERFORMANCE_MAX', 'SHOPPING')

Relevant Python Code Snippet:
def ShoppingCampaigns(ga_client,customer_id):
query = """
SELECT

campaign.feed_types
FROM campaign
WHERE
campaign.advertising_channel_type IN ('PERFORMANCE_MAX', 'SHOPPING')"""
# Instantiate dataframe
df = pd.DataFrame()

# instantiate service
ga_service = ga_client.get_service("GoogleAdsService",version="v22")

# Issues a search request using streaming.
stream = ga_service.search_stream(customer_id = customer_id, query = query)
for batch in tqdm(stream):
if 'results' in MessageToDict(batch._pb):
df = pd.concat([df,pd.json_normalize(MessageToDict(batch._pb),record_path=['results'])])

return df
Error response:
GoogleAdsException: (<_SingleThreadedRendezvous of RPC that terminated with: status = StatusCode.INVALID_ARGUMENT details = "Request contains an invalid argument." debug_error_string = "UNKNOWN:Error received from peer ipv4:142.250.190.42:443 {created_time:"2025-11-13T16:11:28.829622-06:00", grpc_status:3, grpc_message:"Request contains an invalid argument."}" >, <_SingleThreadedRendezvous of RPC that terminated with: status = StatusCode.INVALID_ARGUMENT details = "Request contains an invalid argument." debug_error_string = "UNKNOWN:Error received from peer ipv4:142.250.190.42:443 {created_time:"2025-11-13T16:11:28.829622-06:00", grpc_status:3, grpc_message:"Request contains an invalid argument."}" >, errors {  error_code {    query_error: UNRECOGNIZED_FIELD  }  message: "Unrecognized field in the query: \'campaign.feed_types\'." } request_id: "ki5MtLMESKkMZcW783X2Zw" , 'ki5MtLMESKkMZcW783X2Zw')

This message and any attachment are confidential and may be privileged or otherwise protected from disclosure. If you are not the intended recipient, you must not copy this message or attachment or disclose the contents to any other person. If you have received this transmission in error, please notify the sender immediately and delete the message and any attachment from your system. Merck KGaA, Darmstadt, Germany and any of its subsidiaries do not accept liability for any omissions or errors in this message which may arise as a result of E-Mail-transmission or for damages resulting from any unauthorized changes of the content of this message and any attachment thereto. Merck KGaA, Darmstadt, Germany and any of its subsidiaries do not guarantee that this message is free of viruses and does not accept liability for any damages caused by any virus transmitted therewith.

Click http://www.emdgroup.com/disclaimer to access the German, French, Spanish and Portuguese versions of this disclaimer.

Reply all
Reply to author
Forward
0 new messages