Custom Cookies

Add your own cookies to BrowserAPI and receive customised responses.

Custom cookies are an extremely powerful feature of BrowserAPI. For example, they can be successfully used to scrape personalized content on a e-commerce site.

BrowserAPI does not allow the use of custom cookies for authentication purposes.

Because BrowserAPI will no longer have complete control over the scraping performance, using this feature means charging 100% of the requests (both successful and failed).

Custom Cookies without JavaScript Rendering

When you are not using JavaScript rendering, custom cookies should be added in the WSA-Cookie custom header. Simply pass the name and value of the cookie(s) to this header when you send your request.

Integration Examples

curl --request GET --url "https://api.webscrapingapi.com/v1?api_key=<YOUR_API_KEY>&url=http%3A%2F%2Fhttpbin.org%2Fcookies" --header "Wsa-Accept: application/json" --header "WSA-Cookie: name1=value1; name2=value2"
Response Example
{
    "cookies": {
        "name1": "value1",
        "name2": "value2"
    }
}

Custom Cookies with JavaScript Rendering

When using JavaScript rendering, custom cookies should be passed in a list in the cookies parameter. Each cookie object will have 3 properties: name, value and domain. Here is an example:

[{"name":"cookie_name1", "value":"cookie_value1", "domain":"cookie_domain1"},{"name":"cookie_name2", "value":"cookie_value2", "domain":"cookie_domain2"},{"name":"cookie_name3", "value":"cookie_value3", "domain":"cookie_domain3"}]

And this is the URL encoded value from the example above:

%5B%7B%22name%22%3A%22cookie_name1%22%2C%20%22value%22%3A%22cookie_value1%22%2C%20%22domain%22%3A%22cookie_domain1%22%7D%2C%7B%22name%22%3A%22cookie_name2%22%2C%20%22value%22%3A%22cookie_value2%22%2C%20%22domain%22%3A%22cookie_domain2%22%7D%2C%7B%22name%22%3A%22cookie_name3%22%2C%20%22value%22%3A%22cookie_value3%22%2C%20%22domain%22%3A%22cookie_domain3%22%7D%5D

Warning! Please make sure that you passed the correct domain value in the cookie objects. We used "domain":"httpbin.org" in the examples below because we want those cookies to be set on the httpbin.org domain.

Integration Examples

curl --request GET --url "https://api.webscrapingapi.com/v1?api_key=<YOUR_API_KEY>&render_js=1&url=http%3A%2F%2Fhttpbin.org%2Fcookies&cookies=%5B%7B%22name%22%3A%22cookie_name1%22%2C%20%22value%22%3A%22cookie_value1%22%2C%20%22domain%22%3A%22httpbin.org%22%7D%2C%7B%22name%22%3A%22cookie_name2%22%2C%20%22value%22%3A%22cookie_value2%22%2C%20%22domain%22%3A%22httpbin.org%22%7D%2C%7B%22name%22%3A%22cookie_name3%22%2C%20%22value%22%3A%22cookie_value3%22%2C%20%22domain%22%3A%22httpbin.org%22%7D%5D"
Response Example
<html>

<head>
	<meta name="color-scheme" content="light dark">
</head>

<body>
	<pre style="word-wrap: break-word; white-space: pre-wrap;">{
  "cookies": {
    "cookie_name1": "cookie_value1", 
    "cookie_name2": "cookie_value2", 
    "cookie_name3": "cookie_value3"
  }
}
</pre>
</body>

</html>

Important! The url parameter has to be encoded.

( i.e. &url=https%3A%2F%2Fwww.webscrapingapi.com%2F )

Last updated