Clarification on Linking Image Assets with Search Campaign via API

65 views
Skip to first unread message

Amit Tomar

unread,
Jul 24, 2025, 2:15:45 AM7/24/25
to Google Ads API and AdWords API Forum

Dear Team,

I have created several image assets (MARKETING_IMAGE, SQUARE_MARKETING_IMAGE) which I would like to link to a Search campaign using the Google Ads API.

However, when I attempt to link these image assets at the campaign level via the API (using CampaignAssetService), I receive the following error:

asset_link_error: FIELD_TYPE_INCOMPATIBLE_WITH_CAMPAIGN_TYPE
message: "The specified field type is incompatible with the given campaign type."
trigger: "SQUARE_MARKETING_IMAGE,SEARCH"

Surprisingly, when I use the Google Ads UI (Campaigns > Assets), I am able to link the same image assets to the same campaign without any issue.

Could you please clarify:

  1. Is it possible to link image assets to a Search campaign at the campaign level via the API?

  2. If yes, what is the correct approach to do so, and which AssetFieldType values are supported?

  3. If this is not supported by the API but allowed via UI, could you explain the limitation or recommend any alternative?

Your help in resolving this would be greatly appreciated.

Best regards,
Amit Tomar

Google Ads API Forum Advisor

unread,
Jul 24, 2025, 8:06:06 AM7/24/25
to amittomar...@gmail.com, adwor...@googlegroups.com
Hi Amit,

Thank you for reaching out to the Google Ads API support team.

Please find the following answers to your questions:

The FIELD_TYPE_INCOMPATIBLE_WITH_CAMPAIGN_TYPE error occurs when the asset field types (MARKETING_IMAGE and SQUARE_MARKETING_IMAGE) doesn't align with the search campaign type.

It's not possible to link asset fields, such as MARKETING_IMAGE or SQUARE_MARKETING_IMAGE, directly to Search campaigns. These image assets are only supported for App ads, App engagement ads, Local ads, and Responsive Display ads. For Search campaigns, only text assets are supported, which can be used for Responsive Search Ads.

For more detailed information on which asset types are linked to specific ad types, refer to this document.

1) Is it possible to link image assets to a Search campaign at the campaign level via the API?

Yes, you can link image assets to search campaigns. This can be achieved with AssetFieldType called AD_IMAGE

2) If yes, what is the correct approach to do so, and which AssetFieldType values are supported?

You need to use the asset field type called AD_IMAGE

3) If this is not supported by the API but allowed via UI, could you explain the limitation or recommend any alternative?

First you need to create image asset using the AssetService , try the below sample request : 

{
  "operations": [
    {
      "create": {
        "imageAsset": {
          "data": "",
          "fullSize": {
            "heightPixels": 1200,
            "url": "https://gaagl.page.link/Eit5",
            "widthPixels": 628
          },
          "mimeType": "IMAGE_PNG"
          
        },
        "name": "Enter name of the asset"
        
      }
      
    }
    
  ]
  
} 

Once the image asset is created, you can link this asset to search campaigns using the CampaignAssetService. To do this, follow the below sample request : 

{
  "operations": [
    {
      "create": {
        "asset": "customers/{customer_id}/assets/{newly_created_asset_id}",
        "campaign": "customers/{customer_id}/campaigns/{search_campaign_id}",
        "fieldType": "AD_IMAGE"
        
      }
      
    }
    
  ]
  
}

If you face any issues, share the latest complete API logs (request and response with request-id and request header) generated at your end.

If you are using a client library and haven't enabled the logging yet, I would request you to enable logging for the specific client library that you are using. You can refer to the guides Java.NetPHPPythonRuby or Perl to enable logging at your end. For REST interface requests, you can enable logging via the curl command by using the -i flag.

You can send the details via Reply privately to the author option, or direct private reply to this email.

Thanks,
 
Google Logo Google Ads API Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5
[2025-07-24 12:05:27Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01swd0Y:ref" (ADR-00320031)



Amit Tomar

unread,
Jul 24, 2025, 1:37:46 PM7/24/25
to Google Ads API and AdWords API Forum

Hi Team,

Thank you for the clarification regarding image assets.

Could you please help me understand how I can link a video asset with a campaign via the API? Specifically, I would like to know:

  1. Which campaign types support video assets?

  2. What is the correct approach to link a video asset to a campaign using the Google Ads API?

  3. What AssetFieldType should be used for video assets in such cases?

Your guidance on this will be really helpful.

Google Ads API Forum Advisor

unread,
Jul 24, 2025, 3:19:51 PM7/24/25
to amittomar...@gmail.com, adwor...@googlegroups.com

Hi,

Below are the answers to your queries.

Which campaign types support video assets?

What is the correct approach to link a video asset to a campaign using the Google Ads API?

  • First, you must create a campaign and an `AssetSet` containing one or more assets. Then, create a `CampaignAssetSet` to link the campaign and asset set. Note that a campaign can link to multiple `CampaignAssetSet` objects, but each `CampaignAssetSet` can only link to one campaign. For more information, please refer to the campaign assets example API documentation.

What AssetFieldType should be used for video assets in such cases?

  • You need to use 'YOUTUBE_VIDEO' as an AssetFieldType for video assets, and these are the respective ad types.

I hope this helps. Please let us know if you have any further questions or concerns related to the Google Ads API.

Thanks,
 
Google Logo Google Ads API Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5

[2025-07-24 19:18:59Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01swd0Y:ref" (ADR-00320031)



Reply all
Reply to author
Forward
0 new messages