> ## Documentation Index
> Fetch the complete documentation index at: https://docs.markifact.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Domain Organic Keywords

> Get the organic search keywords a domain ranks for — with position, search volume, CPC, ranking URL, traffic share, and keyword difficulty

Get the organic search keywords a domain ranks for — with position, search volume, CPC, ranking URL, traffic share, and keyword difficulty.

| | |
| - | - |
| **App** | SEMrush |
| **Operation ID** | `semrush_get_domain_organic_keywords` |
| **Type** | Action |
| **Connection** | `semrush` (required) |
| **Credits per run** | Free |
| **Agent / MCP tool** | Yes |

## Inputs

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `domain` | string | Yes | - | The domain to pull organic search keywords for (e.g. example.com). |
| `database` | string | No | `us` | Regional database (country code). E.g. us, uk, ca, au, de, fr, es, it, br. Defaults to 'us'. |
| `export_columns` | array of string or SelectableOption | No | - | List of columns to return. Available: Ph (keyword), Po (position), Pp (previous position), Pd (position difference), Nq (search volume), Cp (CPC), Ur (URL), Tr (traffic %), Tg (traffic generation), Tc (traffic cost %), Co (competition), Nr (SERP results), Td (trends), Kd (keyword difficulty), In (search intent). |
| `filters` | array of FilterItem | No | - | Filters to refine results, applied on the returned columns. |
| `orders` | array of OrderItem | No | - | Sort results by a column. SEMrush supports a single sort column. |
| `limit` | integer | No | - | Maximum number of rows to return. |

### FilterItem

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `field` | string or SelectableOption | Yes | - | The field to filter on, must be one of the current selected metrics or dimensions. |
| `operator` | string | Yes | - | The operator to use for filtering. Must be one of the supported values. Use REGEXP\_MATCH to search/filter by multiple OR values like '.*(summer\|holiday).*' |
| `value` | string | Yes | - | The value to filter by, always as a string: text, a number, or a regex. For IN\_LIST and NOT\_IN\_LIST, pass the values as one comma-separated string such as 'a,b,c', not as an array. For regex values, escape backslashes once in the JSON string: write \b for a word boundary, not \b. |

### OrderItem

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `field` | string or SelectableOption | Yes | - | The field to sort by. must be one of the current selected metrics or dimensions. |
| `direction` | string | Yes | - | The order to sort by, must be one of 'ASC', 'DESC' |

### SelectableOption

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `value` | string | Yes | - | |
| `label` | string | Yes | - | |

## Output

**Type**: `List[Dict]`

Returns one row per organic keyword with metrics: keyword, position, previousPosition, searchVolume, cpc, url, trafficPercent, competition, serpResults, keywordDifficulty.

**Fields**: `keyword`, `position`, `previousPosition`, `searchVolume`, `cpc`, `url`, `trafficPercent`, `competition`, `serpResults`, `keywordDifficulty`

**Example**:

```json theme={"dark"}
[
  {
    "keyword": "iphone",
    "position": 1,
    "searchVolume": 1830000,
    "cpc": 1.2,
    "url": "https://apple.com/iphone/",
    "trafficPercent": 12.5
  }
]
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.