Skip to main content
GET
Get Brand Intelligence Content Publisher Context Route

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

brand_id
string<uuid>
required

Query Parameters

domains
string
required

Comma-separated PUBLISHER domains (max 100) — normally each open item's publisher.domain. Deliberately NOT item ids: everything this route returns is a site-wide aggregate for the domain, never a property of one piece of content.

Required string length: 1 - 25600

Response

Successful Response

One row per DISTINCT readable domain requested, in first-asked order.

The 1:1 request-to-response contract is deliberate: a domain the brand has never researched still comes back, as a measured=False row, so the client never has to diff two sets to discover that a publisher is unmeasured rather than empty. It is the per-row twin of CompetitorContentCoverage.missing_domains.

Note this diverges from its sibling publisher_stats_by_domain, which OMITS a domain it has nothing for. That is correct there (the caller renders em dashes into a table cell it already drew) and wrong here (a missing key would render as an absent panel, i.e. as "no lead magnets"). Do not "fix" one to match the other.

brand_id
string<uuid>
required
generated_at
string<date-time>
required
brand_domain
string | null
publishers
ContentPublisherContext · object[]
unreadable_domains
string[]