# Extra Headers > Source: https://scrape.do/documentation/headers-cookies/extra-headers/ Add headers without replacing default headers It is a feature that you can use only when there is one or more header parameters that you want to use for the needs of the target website, without breaking the requests we have created for the target website. After setting the query parameter as `extraHeaders=true`, the header values you will send with the `Sd-**` prefix will be sent to the target website. **cURL (API mode)** ```bash curl --location --request GET 'https://api.scrape.do/?token=YOUR_TOKEN&url=https://httpbin.co/headers&extraHeaders=true' \ --header 'sd-Test: TestValue' ``` **Python (API mode)** ```python import requests import urllib.parse token = "YOUR_TOKEN" targetUrl = urllib.parse.quote("https://httpbin.co/headers") extraHeaders = "true" payload = {} url = "http://api.scrape.do/?token={}&url={}&extraHeaders={}".format(token, targetUrl, extraHeaders) headers = { 'sd-Test': 'TestValue' } response = requests.request("GET", url, headers=headers, data=payload) print(response.text) ``` **Node.js (API mode)** ```javascript const axios = require('axios'); const token = "YOUR_TOKEN"; const targetUrl = encodeURIComponent("https://httpbin.co/headers"); const extraHeaders = "true" const config = { 'method': 'GET', 'url': `https://api.scrape.do/?token=${token}&url=${targetUrl}&extraHeaders=${extraHeaders}`, 'headers': { 'sd-Test': 'TestValue', } }; axios(config) .then(function (response) { console.log(response.data); }) .catch(function (error) { console.log(error); }); ``` **cURL (Proxy mode)** ```bash curl -k -x "http://YOUR_TOKEN:extraHeaders=true@proxy.scrape.do:8080" 'https://httpbin.co/headers' -v --header 'sd-Test: TestValue' ``` **Python (Proxy mode)** ```python import requests import urllib3 urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) url = "https://httpbin.co/headers" token = "YOUR_TOKEN" proxyModeUrl = "http://{}:extraHeaders=true@proxy.scrape.do:8080".format(token) headers = { 'sd-Test': 'TestValue' } proxies = { "http": proxyModeUrl, "https": proxyModeUrl, } response = requests.request("GET", url, proxies=proxies, verify=False) print(response.text) ``` **Node.js (Proxy mode)** ```javascript const axios = require('axios'); const token = "YOUR_TOKEN"; const targetUrl = "https://httpbin.co/anything"; axios({ method:"GET", url:targetUrl, proxy: { protocol:'http', host: 'proxy.scrape.do', port: 8080, auth: { username: token, password: 'extraHeaders=true' } }, headers: { 'sd-Test': 'TestValue', } }) .then(response => { console.log(response.data); }) .catch(error => { console.error(error.message); }); ``` *(Go, Ruby, Java, C#, PHP examples are also available on the HTML version.)* **Example Result** ```json { "headers": { "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", "Accept-Encoding": "gzip, deflate, br", "Accept-Language": "en-US,en;q=0.9", "Authority": "httpbin.co", "Cache-Control": "no-cache", "Host": "httpbin.co", "Referer": "https://httpbin.co", "Sec-Ch-Ua": "\"Google Chrome\";v=\"107\", \"Chromium\";v=\"107\", \"Not=A?Brand\";v=\"24\"", "Sec-Ch-Ua-Mobile": "?0", "Sec-Ch-Ua-Platform": "\"macOS\"", "Sec-Fetch-Dest": "document", "Sec-Fetch-Mode": "navigate", "Sec-Fetch-Site": "none", "Sec-Fetch-User": "?1", "Test": "TestValue", "Upgrade-Insecure-Requests": "1", "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36", "X-Amzn-Trace-Id": "Root=1-63748c46-2e20cdb45d2d89455b4e4fd0" } } ```