The site domain contains URL syntax or whitespace
site.domain contains a scheme, path, port, query, fragment, credentials or whitespace.
What it means
site.domain identifies a domain. The full page URL belongs in site.page.
Why it matters
Inventory authorization and domain matching need a bare domain. A full URL can miss the publisher's ads.txt lookup.
How to fix it
Set site.domain to the hostname, such as publisher.example, and put the page URL in site.page.
Example that trips it
{ "id": "r", "imp": [{ "id": "i", "banner": {} }], "site": { "domain": "https://publisher.example/" } }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.