Skip to main content
GET
List Google Ads asset performance

Authorizations

api_key
string
header
required

Personal API key.

Path Parameters

app_id
string
required

ID of the app whose Google Ads reporting you want to read.

Response

One entry per serving asset, grouped by its role.

resource_name
string
required

Google Ads resource name for the asset's link to its asset group or campaign. Empty on rows Base44 synthesized from the campaign's saved creative.

Example:

"customers/1234567890/assetGroupAssets/2145881234~9988776655~HEADLINE"

field_type
string
required

The role the asset plays, for example HEADLINE, LONG_HEADLINE, DESCRIPTION, MARKETING_IMAGE, LOGO, or YOUTUBE_VIDEO.

Example:

"HEADLINE"

text
string
required

The asset's text. Empty for images, logos and videos.

Example:

"Handmade oak furniture"

asset_name
string
required

Google Ads' own name for the asset. Usually the only label an image, logo or video has.

Example:

"spring-hero-1200x628"

type
string
required

Google Ads asset type, for example TEXT, IMAGE, or YOUTUBE_VIDEO.

Example:

"TEXT"

image_url
string
required

Hosted URL for an image or logo asset. Empty for text and video assets.

Example:

"https://tpc.googlesyndication.com/simgad/1234567890"

campaign
string
required

Name of the campaign the asset serves in.

Example:

"Spring sale - Performance Max"

asset_group_id
string
required

ID of the asset group the asset belongs to. Empty for logos, which attach to the campaign instead.

Example:

"9988776655"

asset_group_name
string
required

Name of that asset group. Empty for the same reason.

Example:

"Spring sale - Asset Group"

ad_strength
string
required

Google Ads' strength rating for the asset group: POOR, AVERAGE, GOOD, EXCELLENT, or PENDING. Empty for logos.

Example:

"GOOD"

primary_status
string
required

Whether the asset can serve, for example ELIGIBLE, LIMITED, DISAPPROVED, or PENDING_REVIEW. GATHERING_DATA is Base44's own value, used on a row synthesized from launch creative that Google has not echoed back yet.

Example:

"ELIGIBLE"

performance_label
string
required

Base44's own band for the asset, since Google publishes no per-asset rating for Performance Max: LEARNING while the campaign is still in its launch window, then LOW, GOOD or EXCELLENT from the asset's click-through rate against a threshold for its field type. PENDING and DISAPPROVED pass the serving status through instead. Empty when the asset cannot be rated, which is permanent for logos and for rows Base44 synthesized from launch creative.

Example:

"LEARNING"

video_id
string | null

YouTube video ID for a YOUTUBE_VIDEO asset. Empty on other assets in an asset group, and absent entirely on logo rows and on rows Base44 synthesized from launch creative.

Example:

"dQw4w9WgXcQ"

primary_status_reasons
string[]

Why the asset is limited or disapproved. Empty when it serves normally.

Example:
policy_topics
string[]

The Google Ads policy topics limiting the asset, without the generic status reasons primary_status_reasons also carries. Always empty for logos, which expose no policy detail, and absent on rows Base44 synthesized from launch creative.

Example:
impressions
integer | null

Impressions over the trailing 30 days. null when Google reported no row for the asset in that window, and absent entirely on logos and on rows Base44 synthesized from saved creative.

Example:

18400

clicks
integer | null

Clicks over the same 30 days, with the same null and absent cases.

Example:

612

cost_micros
integer | null

Spend over the same 30 days in micros, with the same null and absent cases.

Example:

412500000