> ## Documentation Index
> Fetch the complete documentation index at: https://docs.snapopa.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Advanced Options

> Anti-bot bypass, regions, timing, and more

Advanced parameters for complex capture scenarios.

## Anti-Bot Bypass

Some websites use bot detection. Enable anti-bot to improve success rates.

```json theme={null}
{
  "url": "https://protected-site.com",
  "antiBot": true
}
```

<Warning>
  Anti-bot captures may take longer and consume more credits.
</Warning>

## Region Selection

Choose where the capture originates from for geo-specific content.

```json theme={null}
{
  "url": "https://example.com",
  "region": "eu-west"
}
```

| Region           | Location            |
| ---------------- | ------------------- |
| `auto`           | Automatic (default) |
| `us-east`        | US East Coast       |
| `us-west`        | US West Coast       |
| `eu-west`        | Western Europe      |
| `eu-central`     | Central Europe      |
| `asia-east`      | East Asia           |
| `asia-southeast` | Southeast Asia      |

## Timing Options

### Timeout

Maximum time to wait for page load.

```json theme={null}
{
  "url": "https://slow-site.com",
  "timeout": 60000
}
```

| Range          | Default  |
| -------------- | -------- |
| 5000-120000 ms | 30000 ms |

### Wait Until

When to consider the page "loaded":

```json theme={null}
{
  "url": "https://example.com",
  "waitUntil": "networkidle"
}
```

| Value              | Description             | Speed   |
| ------------------ | ----------------------- | ------- |
| `commit`           | First response received | Fastest |
| `domcontentloaded` | DOM parsed (default)    | Fast    |
| `load`             | All resources loaded    | Medium  |
| `networkidle`      | No network for 500ms    | Slowest |

<Tip>
  Use `networkidle` for JavaScript-heavy pages that load data after initial render.
</Tip>

## Async Processing

For non-blocking workflows, process captures asynchronously:

```json theme={null}
{
  "url": "https://example.com",
  "async": true
}
```

Async response returns immediately with a capture ID. Use webhooks or polling to get results.

## Combined Example

```json theme={null}
{
  "url": "https://complex-site.com",
  "format": "png",
  "viewport": {
    "width": 1920,
    "height": 1080
  },
  "isFullPage": true,
  "antiBot": true,
  "region": "us-east",
  "timeout": 60000,
  "waitUntil": "networkidle",
  "responseCache": {
    "enabled": true,
    "ttl": 86400
  }
}
```
