# Bypass Request Cloudflare

## Send request to base URL with params

```
https://solvercf.com/api
```

## **Request Structure**

<table><thead><tr><th width="163">Parameters</th><th width="113">Type</th><th width="124">Required</th><th>Description</th></tr></thead><tbody><tr><td>url</td><td>string</td><td>yes</td><td>The target URL you want to access. Must start with <code>http://</code> or <code>https://</code></td></tr><tr><td>apiKey</td><td>string</td><td>yes</td><td>Client account key, can be found <a href="https://solvercf.com/dashboard">here</a></td></tr><tr><td>proxy</td><td>string</td><td>yes</td><td><p></p><p><strong>proxy</strong> <code>string</code> - optional</p><p>Proxy server to use for the request. Supports multiple formats:</p><ul><li><code>ip:port</code> - Simple proxy without authentication</li><li><code>ip:port:username:password</code> - Proxy with authentication</li><li><code>http://username:password@ip:port</code> - Full URL format (recommend)</li></ul></td></tr><tr><td>followRedirects</td><td>boolean</td><td>no</td><td>default: true</td></tr></tbody></table>

## Get proxy free for testing

{% embed url="<https://solvercf.com/dashboard/proxyfree>" %}

## Basic Examples

```
METHOD: follow request
```

### Simple GET Request

```http
curl -X GET https://solvercf.com/api?url=https://example.com&apiKey=YOUR_API_KEY
```

### POST Request with JSON Body

```http
curl -X POST "https://solvercf.com/api?url=https://api.target.com&apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username":"user","password":"pass"}'
```

### Using Proxy

```http
curl -X GET https://solvercf.com/api?url=https://example.com&apiKey=YOUR_API_KEY&proxy=192.168.1.1:8080
```

```http
curl -X GET https://solvercf.com/api?url=https://example.com&apiKey=YOUR_API_KEY&proxy=192.168.1.1:8080:username:password
```

## Example C\#

```csharp
namespace YourApp
{
    internal class Program
    {

        static string apiSolverCF = "https://solvercf.com/api";
        static string apiKey = "your_api_key_here";
        static string proxy = "host:port:user:pass";

        static string targetUrl = "https://example.com";

        static async Task Main(string[] args)
        {
            // standard
            using (HttpClient client = new HttpClient())
            {
                HttpResponseMessage response = await client.GetAsync(targetUrl);
                Console.WriteLine(await response.Content.ReadAsStringAsync());
            }

            // with SolverCF
            using (HttpClient client = new HttpClient())
            {
                HttpResponseMessage response = await client.GetAsync(GetUrlBypass(targetUrl));
                Console.WriteLine(await response.Content.ReadAsStringAsync());
            }
        }

        static string GetUrlBypass(string targetUrl)
        {
            return $"{apiSolverCF}?url={System.Web.HttpUtility.UrlEncode(targetUrl)}&apiKey={apiKey}&proxy={proxy}";
        }
    }
}
```

## Example Python

```python
import requests

api_solvercf = "https://solvercf.com/api"
api_key = "your_api_key_here"
proxy = "host:port:user:pass"

target_url = "https://example.com"

def get_url_bypass(target_url):
    # maybe encode target_url if error
    return f"{api_solvercf}?url={target_url}&apiKey={api_key}&proxy={proxy}"

def main():
    # standard
    response = requests.get(target_url)
    print(response.text)

    # with SolverCF
    response = requests.get(get_url_bypass(target_url))
    print(response.text)

if __name__ == "__main__":
    main()
```

## Example Nodejs

```javascript
const axios = require("axios");

const apiSolverCF = "https://solvercf.com/api";
const apiKey = "your_api_key_here";
const proxy = "host:port:user:pass";

const targetUrl = "https://example.com";

function getUrlBypass(targetUrl) {
    return `${apiSolverCF}?url=${encodeURIComponent(targetUrl)}&apiKey=${apiKey}&proxy=${proxy}`;
}

async function main() {
    try {
        // standard
        let response = await axios.get(targetUrl);
        console.log(response.data);

        // with SolverCF
        response = await axios.get(getUrlBypass(targetUrl));
        console.log(response.data);

    } catch (error) {
        console.error("Error:", error.message);
    }
}

main();
```


---

# 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://nguyens-organization-105.gitbook.io/solvercf.com/solver-cloudflare/api-reference/bypass-request-cloudflare.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.
