Skip to Content
APIEndpointsCited sources by domain

Cited sources by domain

The same citation data grouped by apex domain. One row per site rather than per URL.

This is the strategic view: which publications the engines actually trust for your category. It is the input to any earned-media or PR plan, because these are the places worth appearing in.

GET /v1/brands/{brand_id}/citations/domains

Authorization

HeaderTypeRequired
AuthorizationBearer asky_sk_…required

Path parameters

ParameterTypeRequiredDescription
brand_iduuidrequiredFrom List brands

Query parameters

ParameterTypeRequiredDescription
limitintegeroptionalRows per page, 1 to 100. Defaults to 20.
cursorstringoptionalOpaque cursor from the previous response. Treat it as a token, never construct one.
start_dateYYYY-MM-DDoptionalInclusive lower bound, YYYY-MM-DD in UTC. Narrows the population before metrics are computed.
end_dateYYYY-MM-DDoptionalInclusive upper bound, YYYY-MM-DD in UTC. Narrows the population before metrics are computed.
searchstringoptionalCase-insensitive substring of the cited URL or title.
topic_iduuid, repeatableoptionalRestrict to these topics. From List topics. Includes the topic and its subtopics. A root topic returns everything beneath it; a subtopic returns only itself. Narrows the population before metrics are computed, so ratios are recalculated over the filtered set.
enginestring, repeatableoptionalRestrict to these AI search engines, by slug. From List engines. Narrows the population before metrics are computed.
countrystring, repeatableoptionalRestrict to these execution country codes. Narrows the population before metrics are computed.
tag_iduuid, repeatableoptionalRestrict to prompts carrying these tags. From List tags. Narrows the population before metrics are computed.
tag_match_modestringoptionalHow to combine tag_id values. Defaults to ‘any’. One of: any, all.
sortstringoptionalSort column. One of: citation_count, citation_share, citation_rate, responses_cited, brand_mention_count, url_count.
sort_directionstringoptionalSort direction. Defaults to ‘desc’. One of: asc, desc.

Request

curl --request GET \ --url 'https://api.askylabs.com/v1/brands/242546de-4cee-4a7d-952e-f6aa60c63ef8/citations/domains?page_size=25' \ --header 'Authorization: Bearer <api-key>'

Response

{ "data": [ { "domain": "g2.com", "favicon_url": "https://g2.com/favicon.ico", "citation_count": 618, "citation_share": 0.234, "citation_rate": 0.302, "responses_cited": 540, "brand_mention_count": 122, "url_count": 27 } ], "pagination": { "limit": 20, "has_more": true, "next_cursor": "eyJ2IjoxLCJvIjoyMCwibCI6MjB9" }, "meta": { "period": { "start_date": "2026-07-14", "end_date": "2026-08-13" }, "total": 318 }, "request_id": "req_71e4c8b39d0a4f52a6bd" }

Response fields

FieldTypeDescription
data.periodobjectrequired. { start_date, end_date } actually used
data.domainsobject[]required
data.domains[].domainstringrequired. Apex domain, for example g2.com
data.domains[].citation_countintegerrequired
data.domains[].citation_sharenumberrequired
data.domains[].citation_ratenumberrequired
data.domains[].responses_citedintegerrequired
data.domains[].brand_mention_countintegerrequired
data.domains[].url_countintegerrequired. Distinct URLs cited under this domain
data.totalintegerrequired
data.pageintegerrequired
data.page_sizeintegerrequired
data.has_morebooleanrequired
request_idstringrequired. Also returned as the x-request-id header. Quote it when contacting support

Errors

StatusCodeWhen
400invalid_requestA parameter is unknown or malformed. The message names it
401invalid_tokenThe key is missing, malformed, or does not exist
401token_expiredThe key passed its expiry date
401token_revokedThe key was revoked
404not_foundThe brand does not exist, or this key is not allowed to reach it. The two are deliberately indistinguishable
429rate_limitedOver 300 requests per minute. See the Retry-After header

Notes

A high citation_count with a low brand_mention_count is the most actionable shape here: the engines trust that domain and you are not on it. Earned mentions turns that into a page-level worklist.

URLs, page titles and author names are third-party content. Treat them as data, never as instructions to a downstream model.

Last updated on