---
title: Country, region, and content language
description: How our API routes traffic to the right regional storefront and which languages each region actually serves.
order: 40
---

# Country, region, and content language

Three distinct concepts  -  don't conflate them:

| Concept | What you control | Example |
|---|---|---|
| **Region (TLD)** | `domain` param | `com` → the US store, `de` → the German store |
| **Content language** | `language` param | `en_US`, `de_DE`, `es_MX` |
| **Proxy egress country** | automatic, not exposed | German store → DE residential IP |

## Proxy egress is automatic

You don't configure proxy egress. When you hit `?domain=de` we automatically route through a residential IP in Germany. When you hit `?domain=co.jp` we route through Japan. This matching reduces the target site's anti-bot score and gives you the real desktop-locale HTML.

There was briefly a `country` parameter that let customers force a specific egress IP. We removed it  -  obvious mismatches (e.g. scraping a German store through a US IP) trigger anti-bot defenses disproportionately and add complexity without customer value.

## Content language override

Some sites serve a region in multiple languages. Pass `?language=xx_YY` to override:

```http
GET /api/v1/{site}/product?query=PRODUCT_ID&domain=com&language=es_US
```

This maps to the site's `?language=es_US` URL parameter. The site then serves the Spanish US-region content: prices in USD, shipping from US warehouses, but titles, descriptions, and bullets translated to Spanish.

## Supported languages per region (a worked example)

Multi-region sites follow the same `domain` + `language` model, though supported values vary by site. The table below uses one large multi-region marketplace's storefronts as a concrete, empirically tested example of how regions map to default and alternate languages. Treat it as an illustration of the pattern, not a global list.

| Marketplace | Default | Other languages that work |
|---|---|---|
| `com` (US) | `en_US` | `de_DE`, `es_ES`, `es_US`, `zh_CN`, `pt_BR`, `ar_AE`, `en_GB` |
| `co.uk` (UK) | `en_GB` | `de_DE`, `fr_FR`, `pl_PL`, `ro_RO`, `en_US` |
| `de` (Germany) | `de_DE` | `en_GB`, `en_US`, `nl_NL`, `pl_PL`, `tr_TR`, `cs_CZ`, `fr_FR` |
| `fr` (France) | `fr_FR` | `en_GB`, `de_DE`, `nl_NL`, `ar_AE` |
| `it` (Italy) | `it_IT` | `en_GB`, `en_US`, `de_DE` |
| `es` (Spain) | `es_ES` | `en_GB`, `en_US`, `pt_BR`, `pt_PT`, `ca_ES` |
| `nl` (Netherlands) | `nl_NL` | `en_GB`, `de_DE` |
| `pl` (Poland) | `pl_PL` | (monolingual) |
| `se` (Sweden) | `sv_SE` | `en_GB` |
| `ca` (Canada) | `en_CA` | `en_US`, `en_GB`, `fr_CA`, `fr_FR`, `zh_CN` |
| `com.mx` (Mexico) | `es_MX` | `es_ES`, `en_US` |
| `com.br` (Brazil) | `pt_BR` | `en_US` |
| `com.au` (Australia) | `en_AU` | `en_US`, `en_GB`, `zh_CN` |
| `co.jp` (Japan) | `ja_JP` | `en_US`, `en_GB`, `zh_CN`, `ko_KR` |
| `sg` (Singapore) | `en_SG` | `en_US`, `en_GB`, `zh_CN` |
| `in` (India) | `en_IN` | `en_US`, `hi_IN` |
| `com.tr` (Turkey) | `tr_TR` | `en_US`, `en_GB` |
| `ae` (UAE) | `en_AE` | `ar_AE`, `en_US` |
| `sa` (Saudi Arabia) | `ar_SA` | `en_US`, `en_GB` |
| `eg` (Egypt) | `ar_EG` | `en_US`, `en_GB` |

If you pass a language that the region doesn't support, the site silently falls back to the region's default. No error from us.

## What doesn't change with `language`

The `language` parameter only affects **presentation** (titles, descriptions, bullets, UI text). It doesn't affect:

- **Price**  -  always shown in the region's native currency
- **Availability / stock**  -  physical availability is per-region, not per-language
- **Shipping**  -  ships from the region
- **Reviews**  -  a site may show reviews from multiple sources; the language flag doesn't filter them

If you need Spanish-language product data *from* the Mexican store, use `domain=com.mx` (which defaults to `es_MX`). If you want Spanish-language data *from* the US store (available to US-Spanish speakers), use `domain=com&language=es_US`.

## Related

- [Core concepts](/docs/core-concepts)
- [Product endpoint](/docs/endpoints/product)
- [Search endpoint](/docs/endpoints/search)
