Skip to content

Top organic pages of a domain with keywords and traffic.

This report shows unique pages of the analyzed domain ranking in Google’s top 100 organic search results.

Job seo.domain.pages

Your AI asks

checks the price first
telipot run semrush.seo.domain.pages \
  --input-json '{"type":"domain_organic_unique","domain":"stripe.com","database":"us","display_limit":1,"export_columns":"Ur,Pc,Tg,Tr"}' \
  --quote

Price

Semrush API units
Priced· before it runs

semrush.seo.domain.pages

Semrush API unitsYour plan

Whose account it uses

1The person asking
not needed
2Your company’s Semrush plan
Selected identity for this example
3Our account
not used

What it sends

{
  "type": "domain_organic_unique",
  "domain": "stripe.com",
  "database": "us",
  "display_limit": 1,
  "export_columns": "Ur,Pc,Tg,Tr"
}

Your Semrush login is added for you. Your AI never sees it.

What it costs

10 API units

per result · no USD rate

rate10 API units per result, billed per result
sourcedocs · developer.semrush.com/api/v3/seo/domain-reports/#domain-organic-pages · checked 2026-10-05
confidencedocumented
note10 API units per line returned. Semrush does not charge a request that returns no data. Semrush publishes no USD price per API unit.

Preview the price first. --quote runs nothing.

For developers · run it

Shell · runs the task on the named account

telipot run semrush.seo.domain.pages \
  --input-json '{"type":"domain_organic_unique","domain":"stripe.com","database":"us","display_limit":1,"export_columns":"Ur,Pc,Tg,Tr"}'

type

string · required · const "domain_organic_unique"

Fixed. Selects the Domain Organic Pages report.

domain

string · required

Unique name of the website to investigate.

database

string · required

Two-letter regional database code, such as us, uk, ca, de or fr. Domain reports also take the mobile- and -ext codes listed under Databases in the SEO API overview.

display_limit

integer · required · 1 to 100000

Lines returned, which is what Semrush bills. Semrush returns up to 10,000 lines when the parameter is omitted or 0, so this task requires it. Semrush returns at most 100,000 lines per call.

display_offset

integer · at least 0

Lines to skip before the report starts. Semrush counts display_limit from the first line, so set display_limit to display_offset plus the lines wanted.

display_sort

string · one of "pc_asc", "pc_desc", "tg_asc", "tg_desc", "tr_asc", "tr_desc", "sr_asc", "sr_desc", "st_asc", "st_desc"

Sort rule, one per call. Semrush sorts by tr_desc, the biggest traffic share first, when it is omitted.

display_filter

string

Filters written as sign|column|operation|value, joined with |. Sign + includes and - excludes. Columns: Ur, Pc, Tg, Tr, Ipu, Ip0, Ip1, Ip2, Ip3, Sr, St. Operations: Eq, Gt, Lt for numbers; Bw, Ew, Eq, Co, Wm for text. At most 25 filters. Write it in plain text; the + must reach Semrush as %2B.

export_columns

string · default "Ur,Pc,Tg,Tr"

Comma-separated column codes, in the order wanted. Ur Url, Pc Number of Keywords, Tg Traffic, Tr Traffic (%), Sr SERP Features Positions, St SERP Features Traffic. The report also takes the intent columns Ipu, Ip0 to Ip3, Itu and It0 to It3 listed in the SEO API overview.

output

string

CSV text: a header line of column names, then one line per page, columns separated by semicolons, in the order of export_columns. A body that starts with ERROR is a failure, for example ERROR 50 :: NOTHING FOUND.
Full output schema · JSONNested fields and constraints

Output JSON Schema

{
  "type": "string",
  "pattern": "^(?!\\s*ERROR)",
  "description": "CSV text: a header line of column names, then one line per page, columns separated by semicolons, in the order of export_columns. A body that starts with ERROR is a failure, for example ERROR 50 :: NOTHING FOUND."
}

A real answer

No example captured yet: one is recorded when telipot catalog verify passes.