sellers.json Validator

Validate a sellers.json document against the IAB Tech Lab spec in your browser. The file you paste stays on your device.

The sellers.json Validator runs entirely in your browser. The document you paste is parsed and checked on your device and is never fetched from a URL or uploaded to ArrayKit.

Open the ads.txt Validator

About sellers.json Validator

The sellers.json Validator lints an IAB Tech Lab sellers.json document the moment you paste it. It confirms the required top-level version and sellers[] array, then walks every seller entry: each needs a seller_id that is unique across the file and a seller_type of PUBLISHER, INTERMEDIARY, or BOTH (case-insensitive). name and domain are required unless the seller is marked is_confidential, and is_passthrough must be a clean boolean. Findings come back as a pass/fail verdict, per-seller error messages tagged with the array index and seller_id, and a summary that counts sellers by type plus confidential and passthrough entries. Ad-ops and supply-path teams audit their own or a partner's file here without POSTing it to a third-party service — everything runs on your device.

Features

How to use the sellers.json Validator

  1. Paste your sellers.json document, or load the sample to see the expected shape
  2. Read the pass/fail verdict and the seller-type summary counts
  3. Jump to each flagged sellers[i] entry using the index and seller_id in the message
  4. Fix the offending field and re-validate until the document passes

Example

Input

{
  "version": "1.0",
  "sellers": [
    { "seller_id": "1001", "seller_type": "RESELLER" }
  ]
}

Output

Invalid sellers.json — 3 issues
sellers[0] (seller_id 1001) — Invalid "seller_type" "RESELLER". Must be one of PUBLISHER, INTERMEDIARY, or BOTH.
sellers[0] — "name" is required unless the seller is confidential.
sellers[0] — "domain" is required unless the seller is confidential.

seller_type only accepts PUBLISHER, INTERMEDIARY, or BOTH; non-confidential sellers need name and domain.

Common errors & troubleshooting

Frequently asked questions

What does the sellers.json Validator check?
It confirms the required top-level version and sellers[] array, then checks that every seller has a unique seller_id, a seller_type of PUBLISHER, INTERMEDIARY, or BOTH, and name and domain unless the seller is confidential — flagging each problem with its index and seller_id.
When can a seller omit name and domain?
Only when that seller sets is_confidential = 1. The sellers.json spec lets a confidential account hide its name and domain, so the validator skips the name/domain requirement for those entries and counts them separately in the summary.
Which seller_type values are valid in sellers.json?
PUBLISHER (owns the inventory), INTERMEDIARY (resells another account's inventory), and BOTH. The check is case-insensitive, so publisher and PUBLISHER both pass, but any other string such as RESELLER is reported as an invalid seller_type.
Why is a seller_id reported as a duplicate?
Each seller_id must be unique within a single sellers.json file. The validator normalizes IDs to strings before comparing, so a numeric 1001 and a string "1001" are treated as the same ID and the second occurrence is flagged with a pointer to the first.
Does the validator fetch my sellers.json from its URL?
No. It never fetches a remote URL or ad endpoint. You paste the document text and it is parsed and validated on your device, so nothing about the file is uploaded to ArrayKit or any third party.

Related tools

All ArrayKit tools