# Enhanced Mode

> Use enhanced proxies for reliable scraping on complex sites

import ProxyPython from "/snippets/v2/scrape/proxy/python.mdx";
import ProxyNode from "/snippets/v2/scrape/proxy/js.mdx";
import ProxyCURL from "/snippets/v2/scrape/proxy/curl.mdx";

<Warning>
The `proxy` parameter is deprecated. We recommend `auto` — the default — which lets Firecrawl handle proxy selection for you.
</Warning>

Firecrawl provides different proxy types to help you scrape websites with varying levels of complexity. Set the `proxy` parameter to control which proxy strategy is used for a request.

## Proxy types

| Type | Description |
|------|-------------|
| `basic` | Standard proxies suitable for most sites |
| `enhanced` | Enhanced proxies for complex sites |
| `auto` | **Recommended.** Tries `basic` first, then retries with `enhanced` on failure |

If you do not specify a proxy, Firecrawl defaults to `auto`.

## Basic usage

Set the `proxy` parameter to choose a proxy strategy. The following example uses `auto`, which lets Firecrawl decide when to escalate to enhanced proxies.

<CodeGroup>

<ProxyPython />

<ProxyNode />

<ProxyCURL />

</CodeGroup>

<Info>
Enhanced proxy requests now cost the same as basic requests — **1 credit per request**. There is no longer any extra charge when `auto` escalates to an enhanced retry.
</Info>

> Are you an AI agent that needs a Firecrawl API key? See [firecrawl.dev/agent-onboarding/SKILL.md](https://www.firecrawl.dev/agent-onboarding/SKILL.md) for automated onboarding instructions.
