Topics
API + MCPEnterprise OnlyRequests to this endpoint consume API units based on the
promptsparameter: requests returning only custom prompt data are free, while requests including Ahrefs prompt data follow standard API unit pricing.
Request body
A list of fields to return.
countrymentionsresponsestopicvolume
The filter expression. The following column identifiers are recognized (this differs from the identifiers recognized by the select parameter).
The ID of the report to use. If one is given, other parameters are taken from the report (brand, competitors, market, country, filters). If country or filters are provided, they override the ones in the report. You can find it in the URL of your Brand Radar report in Ahrefs: https://app.ahrefs.com/brand-radar/reports/#report_id#/...
A list of brand names and websites to search for.
names or url_groups is requiredThe names of the brand/competitor
The domain of the target
Scope of the target.
A list of competitor names and websites to search for.
names or url_groups is requiredThe names of the brand/competitor
The domain of the target
Scope of the target.
Optional phrases used to include or exclude results based on their content.
Only show results containing at least one of these exact phrases.
Hide results containing any of these exact phrases.
A list of chatbot models. All models can be combined with each other. claude module supports only custom prompts.
The google_ai_overviews_keywords and google_ai_mode_keywords models report AI Overviews / AI Mode visibility derived from Google search queries (keywords) rather than prompts.
A list of two-letter country codes (ISO 3166-1 alpha-2).
The type of prompts to use. If not specified, both will be used. Custom prompts require a report_id to be provided.
The number of results to return.
The date to search for in YYYY-MM-DD format.
The start date of the historical period in YYYY-MM-DD format.
The end date of the historical period in YYYY-MM-DD format.
A filter expression for prompt tags. Requires report_id. Uses filter syntax with the following restrictions: the only valid field name is "tag"; the only valid operator are: "eq", "neq", "substring", "isubstring", "phrase_match", "iphrase_match", "prefix", "suffix", "empty"; maximum nesting depth of and, or is 2.
A filter expression for your brand's visibility, mirroring the "Your brand" filter. brand_name matches whether a response mentions your brand: "mentioned" or "not_mentioned". page_status matches how the AI used your pages: "cited" (the AI retrieved pages from your site and referenced them in the answer), "found_but_not_cited" (the AI retrieved pages from your site as potential sources but did not reference them in the final answer), or "not_found" (the AI did not retrieve any pages from your site).
Uses filter syntax with the following restrictions: the only valid operator is "eq"; each field is one section: give a single value, or combine several values of the same field with or; join the brand_name and page_status sections with a top-level and/or. Selecting every value of a field is rejected, since it matches everything (omit the field instead).
The volume range to filter by.
The output format.
Responses
The country associated with the topic. When no parent topic was identified, this is the only selected country, or all if multiple or all countries were selected.
Response counts for the tracked brand and each competitor.
The tracked brand or competitor.
The number of AI responses that mention the entity.
The number of AI responses associated with the topic.
The parent topic. Null when no parent topic was identified.
The topic's estimated monthly search volume.