Cookbook
Citation Share for your owned domains
Measure what share of a topic's citations point back to domains you own — in two calls
GET
/domains/{domainId}GET
/domains/{domainId}/topics/{topicId}/visibility/aggregatedThe "your sources" slice of the Citations tile — of every domain LLMs cited for this topic, how many were yours. There's no single endpoint: read your owned domains, read the cited-domain breakdown, and intersect them. For an authoritative view that needs no list of your own, prefer GET /domains/{domainId}/sources/visibility?filterOwnership=owned (see Variations) — the server already knows which sources count as owned.
How this example works
topDomainsis capped top 20. An owned domain ranking 21st or lower is missing and undercounts your share. For an exact figure, pageGET /domains/{domainId}/explorer/citationsand group bylinkDomainclient-side.domainSourceAnalysisis the server's brand-vs-rest split —brandDomainPercentage/otherSourcesPercentageplus rawbrandDomainCount/otherSourcesCount. It counts every cited host that belongs to yoururlor to anownedSourcesentry, is resolved from your current configuration on each request (so an owned source you add today counts across the whole history), and has no top-20 cap. Use it to sanity-check your own sum.ownedSourcesis not the whole picture — it's the additional, user-configured list. The brand's ownurlalways counts as owned, indomainSourceAnalysisand underfilterOwnership=owned, even whenownedSourcesis empty. The examples below therefore seed the owned set withurlbefore addingownedSources; skip that only if your list already repeats the site's host.- Ownership is decided per host, never per path.
ownedSourcesentries are stored as bare domains ("nike.com", a path such asnike.com/fr/is reduced tonike.com), and a subdomain belongs to its parent (news.nike.comis yours ifnike.comis). Two properties on the same host —example.comandexample.com/fr/— therefore share one owned perimeter. When intersecting by hand, normalize both sides the same way: strip scheme and leadingwww., lowercase, then match on the host or a.hostsuffix.
curl "https://api.getmint.ai/api/domains/$DOMAIN_ID" \
-H "X-API-Key: $MINT_API_KEY"
curl "https://api.getmint.ai/api/domains/$DOMAIN_ID/topics/$TOPIC_ID/visibility/aggregated?startDate=2026-06-22&endDate=2026-07-22" \
-H "X-API-Key: $MINT_API_KEY"Response (both calls, trimmed; full shape in API reference):
{
"id": "69b0495c672f51c1d55da2d1",
"url": "https://nike.com",
"ownedSources": ["nike.com", "news.nike.com"]
}{
"totalCitations": 512,
"topDomains": [
{ "domain": "nike.com", "count": 96, "percentage": 18.8 },
{ "domain": "techcrunch.com", "count": 42, "percentage": 8.2 }
],
"domainSourceAnalysis": {
"brandDomainPercentage": 22,
"otherSourcesPercentage": 78,
"brandDomainCount": 112,
"otherSourcesCount": 400
}
}Query parameters
Parameters of the aggregated call (the domain call takes none):
Prop
Type
Variations
| Change | Effect |
|---|---|
GET /domains/{domainId}/sources/visibility?filterOwnership=owned | Authoritative owned-source table (includes the brand's own domain automatically, plus everything in ownedSources): volume, mentionRate, needAttentionScore (no share field) |
filterOwnership=competitor | Same table scoped to the topic's competitors' domains |
filterOwnership=external | Third-party sources — neither owned nor a competitor |
Group explorer/citations by linkDomain | Exact owned share with no top-20 cap |