# Custom Parameters

NetNut’s Website Unblocker supports multiple functionalities and headers for customized requests.

### Geolocation

Access content as if you are in different geographical locations, for tailored and localized web scraping unblock capabilities.

Request specific country name in the x-netnut-geo-location  header.

For instance, to simulate accessing a website from France, add "`x-netnut-geo-location:FR`" to your request, as in the example below:

```bash
curl -k -x username:password@unblocker.netnut.io:5959 -H "x-netnut-geo-location:FR" https://website-to-unblock.com
```

***

### **JavaScript** Rendering

For scenarios where you need the rendered HTML of a web page, use the `x-netnut-html-render: true` in your request.

```bash
curl -k -x username:password@unblocker.netnut.io:5959 -H "x-netnut-html-render:true" https://website-to-unblock.com
```

***

### Sticky Session&#x20;

Maintain a persistent session by keeping the same IP address across multiple requests.\
Request a specific session ID in the **`x-netnut-sid`** header.

For instance, to simulate accessing a website with the same IP for paginated navigation, add `x-netnut-sid:123456789` to your request, as in the example below:

```bash
curl -k -x username:password@unblocker.netnut.io:5959 \
  -H "x-netnut-sid:123456789" \
  https://website-to-unblock.com
```

**`x-netnut-sid`**: Accepts numeric values only (0–9). Requests that use the same `sid` will reuse the same IP until the session ends naturally or the `sid` is changed.

* We recommend using a **9-digit `sid`** for better stickiness and consistency.

If not provided, the request will default to normal IP rotation.

***

### Format

Control the format of the response using the **`x-netnut-format`** header.

```bash
curl -k -x username:password@unblocker.netnut.io:5959 \
  -H "x-netnut-format:raw" \
  https://httpbin.org/json
```

* **x-netnut-format**:
  * `html` → returns HTML (default).
  * `raw` → returns the original format served by the URL (HTML if the page is HTML, JSON if the endpoint serves JSON).

**Use Case**:\
Use `raw` when scraping API endpoints or structured data sources where JSON is expected instead of HTML.

***

### **Find Target**

Control when the response is returned using the `x-netnut-find-target` header.

```bash
curl -k -x username:password@unblocker.netnut.io:5959 \
  -H 'x-netnut-find-target: {"text":"Add to cart"}' \
  https://example.com
```

#### **x-netnut-find-target:**

* `{"element":".selector"}` → waits until the specified CSS selector appears.
* `{"text":"Your text"}` → waits until the specified text exists in the page.

Unblocker will return the response as soon as the target is detected, or after a timeout if it is not found.

**Response Headers:**

```
x-netnut-find-target-status: found | not_found
x-netnut-find-target-value: {"element":"..."} | {"text":"..."} | null
```

**Behavior:**

* Only **one** target is allowed: either `"element"` or `"text"`.
* Unblocker continues loading and scrolling the page until the target appears or timeout is reached.
* The response **always** returns with HTTP 200.
* Detection results are provided through response headers:

**Use Case:**

Use **Find Target** when scraping dynamic pages where content loads after scrolling or JavaScript execution, such as product lists, reviews, or lazy-loaded sections.
