> For the complete documentation index, see [llms.txt](https://docs.webscrapingapi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.webscrapingapi.com/browser-api/advanced-api-features/awaiting.md).

# Awaiting

### The `wait_until` parameter

Passing the `wait_until` parameter to your request tells the browser that a certain promise is still ongoing, hence preventing the service worker from terminating until the promise is resolved.&#x20;

Your full **GET** request should then be sent to the following address:

{% code overflow="wrap" %}

```
https://api.webscrapingapi.com/v1?api_key=<YOUR_API_KEY>&url=<TARGETED_URL>&wait_until=$promise
```

{% endcode %}

<details>

<summary>Available options</summary>

The currently supported options for the `wait_until` parameter are:

* `load` - load event is fired.
* `domcontentloaded` - DOMContentLoaded event is fired.
* `networkidle0` - there are no more than 0 network connections for at least 500 ms.
* `networkidle2` - there are no more than 2 network connections for at least 500 ms.

</details>

### The `wait_for` parameter

This option comes in handy when dealing with websites that have dynamic-generated content. Passing the `wait_for` parameter will instruct BrowserAPI to wait for a certain amount of time after the page finished loading and before closing the connection.&#x20;

Your full **GET** request should then be sent to the following address:

{% code overflow="wrap" %}

```
https://api.webscrapingapi.com/v1?api_key=<YOUR_API_KEY>&url=<TARGETED_URL>&wait_for=$milliseconds
```

{% endcode %}

{% hint style="info" %}
The values passed to the `wait_for` parameter are expressed in milliseconds. We recommend that you use a value between `5000` and `10000`.
{% endhint %}

### The `wait_for_css` parameter

When you want to scrape a specific element of the page, passing the `wait_for_css` parameter will make BrowserAPI wait for that specific CSS selector to be available in DOM before returning the result.&#x20;

Your full **GET** request should then be sent to the following address:

{% code overflow="wrap" %}

```
https://api.webscrapingapi.com/v1?api_key=<YOUR_API_KEY>&url=<TARGETED_URL>&wait_for_css=$cssSelector
```

{% endcode %}

{% hint style="warning" %}
We recommend that the `$cssSelector` value should be encoded or escaped in order for your request to pass successfully.&#x20;
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.webscrapingapi.com/browser-api/advanced-api-features/awaiting.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
