Check live service health and documented failure responses before you integrate.
Web Data
ads.txt and sellers.json validation API
Check which companies are authorized to sell a site's ad inventory. Parse ads.txt or app-ads.txt, flag invalid lines and duplicates, and confirm each seller against the ad system's own sellers.json.
Used by people at these companies
Trust signals before you integrate
Transparent docs, authenticated requests, and visible reliability details make it easier to evaluate DomScan before you ship.
OpenAPI, Swagger, Postman, CLI, SDK, and MCP links are one click away.
Authenticated endpoints use API keys with clear credit costs before you call them.
Start with 10,000 monthly credits and upgrade only when usage grows.
What this API helps you ship
Use this page as a production brief: endpoints, examples, response shape, and the workflow pieces needed to plug DomScan into your own product.
Embed domain checks, DNS intelligence, risk signals, or enrichment into onboarding, search, and internal tools.
Replace repeated manual lookups with scheduled jobs, alerting, and reproducible investigation steps.
Use predictable fields, documented status codes, and credit costs instead of scraping provider pages.
Feed agents, dashboards, SOAR playbooks, and CRMs through OpenAPI, SDK, Postman, or MCP.
Integration workflow
A simple path from first request to repeatable production usage.
Send your API key with the documented header and keep requests consistent across services.
Start from the curl and HTTP samples, then map the parameters into your application code.
Use status codes, credit costs, and response fields to build retries, logs, and alerts.
Developer kit
Jump from this page into machine-readable docs, request collections, SDKs, or agent tooling.
Generate clients or inspect every request and response shape.
Postman collectionImport ready-made requests for manual testing and team handoff.
SDKs and CLIUse maintained packages and command-line workflows instead of writing boilerplate.
MCP integrationExpose domain intelligence to AI agents and internal assistant workflows.
Parameters and response map
Scan the inputs, output fields, and status codes before wiring the endpoint into your client.
Parameter
Example response
HTTP status codes
Endpoints
/v1/ads-txt
Trust signals before you integrate
Transparent docs, authenticated requests, and visible reliability details make it easier to evaluate DomScan before you ship.
OpenAPI, Swagger, Postman, CLI, SDK, and MCP links are one click away.
Authenticated endpoints use API keys with clear credit costs before you call them.
Start with 10,000 monthly credits and upgrade only when usage grows.
Start from the curl and HTTP samples, then map the parameters into your application code.
Key Features
Validate the web file or the mobile and connected TV version, with every record, relationship and certification authority ID.
With verify_sellers=true, each seller ID is looked up in the ad system's sellers.json and marked confirmed, confidential, type mismatch or not found.
Invalid lines, unknown relationships, missing account IDs, bad domains and duplicate records are counted with their line numbers.
OWNERDOMAIN, MANAGERDOMAIN, CONTACT, SUBDOMAIN and INVENTORYPARTNERDOMAIN declarations are returned as found.
Example request
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/ads-txt?url=example.com&verify_sellers=true"
Example response
{
"status": "found",
"summary": { "records": 401, "direct": 94, "reseller": 307, "ad_systems": 98 },
"variables": { "ownerdomain": ["example.com"] },
"issues": [{ "code": "duplicate_record", "count": 47, "lines": [68, 76, 77] }],
"sellers": {
"systems_checked": 10,
"confirmed": 58,
"type_mismatch": 7,
"seller_not_found": 16,
"unknown": 9
}
}
Frequently asked questions
The sellers.json lists the seller ID, but with a type that does not match the relationship, for example a PUBLISHER entry for a RESELLER line.
The ad system's sellers.json could not be read, was too large or was malformed. Unknown never means the seller is missing.
Up to 10 per request, starting with the systems that have the most records and DIRECT relationships.
Two credits, or five with verify_sellers=true. Results that end in status unknown are refunded.
Related tools and resources
HTTP status codes
These are the HTTP status codes to handle, so you can tell apart successful responses, auth issues, credits, rate limits, missing data, and upstream failures.
Request successful
Invalid parameters
Missing or invalid API key/session.
Not enough credits to run this request.
Rate limit exceeded
Validate ads.txt

