# Request Customization

By passing these additional parameters you can customize the request to our web scraping api according to your demands.

| Parameter              | Description                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **`dynamic`**          | <p>You can use this parameter for JS rendering. It is a boolean so you have to use it like this <strong><code>dynamic=true</code></strong>. Our servers will render JavaScript for that page and will return you the resulting HTML code. <br><br>The cost of using this param is <strong>5 credits</strong> with normal proxies and if you want to use it with premium residential proxies then <strong>25 credits</strong>.</p>      |
| **`premium`**          | <p>When you want to use the premium residential proxy instead of the normal rotating proxy then you can use this param. This is also a boolean so you can access it by setting it to <strong><code>premium=true</code></strong>. This feature will use a USA residential proxy by default.<br><br>The cost of using this feature is 10 credits and 25 credits if used with JS rendering <strong><code>dynamic=true</code></strong></p> |
| **`custom_headers`**   | When you set **`custom_header=true`** our server allows you to pass your own headers.                                                                                                                                                                                                                                                                                                                                                  |
| **`wait`**             | <p>wait parameter is a time in milliseconds that can be used with the combination of <strong><code>dynamic=true</code></strong> in order to wait and load the website completely. <br><br>The value of wait can be any whole number between <strong>0 and 35000</strong>. <br><br>Example - <strong><code>wait=5000</code></strong></p>                                                                                                |
| **`country`**          | This parameter helps you access the geotargeting feature. You can pass any country's [ISO code](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes) in order to send a request from that location. Like **`country=gb`** will use United Kingdom proxies.                                                                                                                                                                    |
| **`session_number`**   | <p>You can this parameter if you want to reuse the same proxy for multiple requests. You can set any string value to session\_number while making the request.<br><br>Cost does not change when you use this feature.</p>                                                                                                                                                                                                              |
| **`image`**            | <p>You can use this parameter if you want to scrape image URLs.<br><br>Type - <strong><code>Boolean</code></strong></p>                                                                                                                                                                                                                                                                                                                |
| **`formats`**          | <p>This parameter is used to get data in different formats. It is set to <code>html</code> by default.<br><br>Possible Values: <code>html</code>, <code>links</code>, <code>markdown</code>, <code>summary</code>, and <code>images</code>.<br><br>Type - <strong><code>String</code></strong></p>                                                                                                                                     |
| **`ai_query`**         | <p>This parameter is used to pass the user prompt to get the AI-optimized response.<br><br>Example - <code>get me the price of the product</code></p>                                                                                                                                                                                                                                                                                  |
| **`ai_extract_rules`** | <p>This parameter is used to extract data from pages without parsing the HTML yourself, you can include AI extraction rules in your API request.<br><br>Example - <code>{"price": "$4"}</code></p>                                                                                                                                                                                                                                     |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.scrapingdog.com/web-scraping-api/request-customization.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
