> ## 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 URL Organic Keywords

> Get the organic keywords a specific page (URL) ranks for — with position, search volume, CPC, traffic share, and keyword difficulty

Get the organic keywords a specific page (URL) ranks for — with position, search volume, CPC, traffic share, and keyword difficulty.

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

## Inputs

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `url` | string | Yes | - | The landing page URL to pull organic keywords for (e.g. `https://example.com/page`). |
| `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), Nq (search volume), Cp (CPC), Co (competition), Kd (keyword difficulty), Tr (traffic %), Tg (traffic generation), Tc (traffic cost %), Nr (SERP results), Td (trends), Fk (keyword SERP features), Fp (result SERP features), 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 single column. Only Po, Tg, Tr, Tc, and Nq are sortable. |
| `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 keyword the URL ranks for with: keyword, position, searchVolume, cpc, competition, trafficPercent, trafficCostPercent, serpResults, keywordDifficulty.

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

**Example**:

```json theme={"dark"}
[
  {
    "keyword": "what is seo",
    "position": 3,
    "searchVolume": 49500,
    "cpc": 4.2,
    "trafficPercent": 18.6,
    "keywordDifficulty": 81
  }
]
```


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