Rule reference

Native markup has no assets

openrtb.native.assets_missingerrorRequest or response

The Native Markup Request or Response has no assets array, or it is empty, and the response has no assetsurl either.

What it means

Native Ads 1.2 requires a non-empty assets array on the request. The response needs assets, or assetsurl for a third-party native ad. Encoding checks already ran; this is the inner document after decode.

Why it matters

Without an asset list a buyer cannot tell which title, image, or data slots to fill, and an exchange cannot tell whether a native bid answered the request. The impression is dropped.

How to fix it

Put at least one asset object in assets, each with an integer id and exactly one of title, img, video, or data. On the response, return those assets or set assetsurl.

Example that trips it

{ "native": { "request": "{\"ver\":\"1.2\"}" } }

The encoded request has a version and nothing else. Native 1.2 requires assets.

Check your payload

Paste a bid request or response into the tester to see whether this code fires against it, or gate on the id in CI with the CLI: the id is stable, wording is not.

Back to the full diagnostic code reference.