ads.txt / app-ads.txt / sellers.json Extractor avatar

ads.txt / app-ads.txt / sellers.json Extractor

Pricing

from $0.35 / 1,000 records

Go to Apify Store
ads.txt / app-ads.txt / sellers.json Extractor

ads.txt / app-ads.txt / sellers.json Extractor

Fetch and parse the IAB Tech Lab ad-tech transparency triad — ads.txt, app-ads.txt and sellers.json — for any domain or list of domains. One flat, normalized row per seller relationship, seller entry or variable, with a lossless raw copy. The authorized-digital-seller graph as data. Pay per record.

Pricing

from $0.35 / 1,000 records

Rating

0.0

(0)

Developer

Datamule

Datamule

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

3 days ago

Last modified

Categories

Share

Extract public IAB Tech Lab seller declarations into normalized dataset rows for supply-path analysis, monitoring, and authorized-seller graph joins.

Try it now

This bounded example fetches the current ads.txt published for nytimes.com and returns at most 25 rows:

{"domain":"nytimes.com","fileType":"ads_txt","maxRecords":25}

Representative genuine output

A fresh run returned this normalized ads.txt relationship from the public source:

{
"_source": "https://nytimes.com/ads.txt",
"_domain": "nytimes.com",
"fileType": "ads_txt",
"recordType": "seller_relationship",
"_rowIndex": 1,
"adSystemDomain": "amazon-adsystem.com",
"publisherAccountId": "3030",
"accountType": "DIRECT",
"certificationAuthorityId": null,
"_raw": {"line": "amazon-adsystem.com, 3030, DIRECT"}
}

Fields that do not apply to this record type are returned as null in the full dataset schema.

Pricing and cost

The active FREE-tier pay-per-event price is $0.0005/record. Each emitted seller relationship, variable, seller, or file-metadata row is one record event.

The 25-row example has an event-charge ceiling of $0.0125 (25 × $0.0005). A source that returns fewer rows costs less. Apify infrastructure usage is separate from this event-charge ceiling.

Inputs and defaults

FieldMeaningDefault
domainOne bare host or full URL. The prefilled trial source is nytimes.com.Prefill: nytimes.com
domainsOptional list of additional domains; normalized duplicates are removed.Empty
fileTypeall, ads_txt, app_ads_txt, or sellers_json.all
relationshipKeep only DIRECT or RESELLER rows from ads.txt/app-ads.txt.Any
sellerTypeKeep only PUBLISHER, INTERMEDIARY, or BOTH sellers.json rows.Any
includeVariablesEmit ads.txt/app-ads.txt KEY=value declarations.true
includeFileMetaEmit one sellers.json file-metadata row.true
maxRecordsTotal cap across every requested domain and file.25 (prefill 25)

Use domain, domains, or both. The total cap applies after filters and prevents a broad source from producing an unbounded first run.

Output fields

Field(s)Meaning
_source, _domain, fileType, recordTypeRequested well-known URL, normalized input domain, source file type, and row discriminator.
_rowIndexZero-based position in the source file when applicable.
adSystemDomain, publisherAccountId, accountType, certificationAuthorityIdNormalized ads.txt/app-ads.txt seller relationship. accountType is DIRECT or RESELLER.
variableName, variableValue, commentads.txt/app-ads.txt variable declarations and inline comments.
sellerId, name, sellerDomain, sellerTypesellers.json seller identity. sellerType is PUBLISHER, INTERMEDIARY, or BOTH.
isConfidential, isPassthroughNullable sellers.json flags.
contactEmail, version, identifierssellers.json file-level metadata.
_rawOriginal source line or object retained for traceability.

adSystemDomain is the join key between a publisher's ads.txt declaration and the corresponding ad system's sellers.json inventory.

Use cases

  • Check which ad systems a publisher authorizes as direct sellers or resellers.
  • Join ads.txt relationships to sellers.json identities for supply-path research.
  • Monitor public declaration changes for brand-safety or ad-fraud review workflows.
  • Export normalized rows to agents, spreadsheets, databases, or scheduled data-quality checks.

The Actor reads the three public IAB Tech Lab transparency formats at their well-known paths:

  • https://<domain>/ads.txt for web Authorized Digital Sellers declarations;
  • https://<domain>/app-ads.txt for the mobile-app equivalent; and
  • https://<domain>/sellers.json for an ad system's declared seller inventory.

It fetches the source at run time, follows redirects, decodes compressed text, skips comments and blank lines, and retains malformed data lines in _raw instead of inventing values. Results reflect what the source owner published at that moment; the Actor does not guarantee that a domain publishes every file or that declarations are complete, current, or compliant. It is a generic reader of public IAB formats, not an IAB certification or legal-compliance service. No login-walled or private data is accessed.

Troubleshooting

  • 404: A missing file is skipped because many domains publish only part of the triad. Check the domain and select the specific fileType you expect.
  • HTML returned with HTTP 200: Some hosts serve a marketing or anti-bot page at a well-known path. The Actor detects and skips that body rather than turning HTML into records.
  • Redirects: Redirects are followed automatically. If the destination is missing, blocked, or HTML rather than the requested IAB file, that source is skipped.
  • Zero rows: Every requested file was absent or unparseable, or the selected relationship/seller filter removed all rows. Recheck domain, fileType, and filters; a zero-row source exits cleanly without fabricated output.