API Reference
This page documents the HTTP API used to run scraping tasks and (optionally) configure custom proxies.
Authentication
All endpoints require an API token:
- Header:
Authorization: Bearer ${token}
To get your token:
- Log in to the Console.
- Click Get API Token and then Generate Token.
- Copy the token and use it in the
Authorizationheader.
Each token is valid for 365 days. Generating a new token does not invalidate previous ones.
Common Concepts
Scraping Task Lifecycle
A scraping task goes through these phases:
- PENDING → task accepted and queued
- RUNNING → actively being executed
- SUCCESS → completed successfully (billed)
- BLOCKED / ERROR → recoverable failure, retried automatically (3 times)
- BLOCKED_TOO_MANY_TIMES / ERROR_TOO_MANY_TIMES → non-recoverable failure (not billed)
- CANCELLED → cancelled by client or by timeout (not billed)
- REPLACED → rare edge cases where a task is replaced by one or more derived tasks (e.g. a page is split into smaller pages)
Synchronous vs Asynchronous Execution
The Run endpoints support two modes:
waitForCompletion=true(default): keep the HTTP connection open until tasks complete and return results directly.waitForCompletion=false: return immediately. You can later fetch results using Read Scraping Tasks.
When waitForCompletion=true, if the HTTP connection closes prematurely, ongoing scraping tasks are cancelled.
For production integrations, prefer waitForCompletion=false + polling/batching to avoid long-lived connections.
Scraping Tasks
Run Scraping Tasks
Run multiple requests in a single call.
HTTP Method and URL
POST https://continuous-scraper.common.chartedapi.com/scraping-tasks/${scraper}/run?autoCancelAfterSec=1200&waitForCompletion=false
Path Parameters
scraper:shopee,shopee-androidorlazada
Query Parameters
waitForCompletion(default =true): wait for completion and return results directly.autoCancelAfterSec(default =600): execution timeout (only used whenwaitForCompletion=true).includeAllFields(default =false): if false, only the most important fields are returned.includeFields(optional): comma-separated list of fields to return (overridesincludeAllFields). Example:includeFields=uuid,url,statushttpStatusOnError(optional): HTTP status code returned if at least one task ends in an error/blocked terminal status.- If not set, the API always returns
200 OK. - Example:
httpStatusOnError=500
- If not set, the API always returns
Request Headers
Authorization: Bearer ${token}
Request Body Example
{
"requests": [
{
"url": "https://shopee.co.id/adidas-Runfalcon-3.0-Men's-Running-Shoes---Core-Black-i.234490784.25462132870?sp_atk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9&xptdk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9"
},
{
"url": "https://shopee.co.id/SEPATU-SNEAKERS-CASUAL-ADIDS-SPEZIAL-HANDBALL-BNIB-i.197850298.20595626884?sp_atk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8&xptdk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8"
},
{
"url": "https://shopee.sg/api/v4/microsite/batch_get_item_card",
"method": "POST",
"payload": {
"shop_item_ids": [
{
"item_id": 40505798777,
"shop_id": 1521408445
},
{
"item_id": 40905798740,
"shop_id": 1521408445
},
{
"item_id": 42105798857,
"shop_id": 1521408445
},
{
"item_id": 43005798827,
"shop_id": 1521408445
},
{
"item_id": 27937932620,
"shop_id": 1521408445
}
]
}
}
],
"cacheMaxAgeInSec": 3600
}
Request body fields
requests: array of request objects:url: the API or page URL to scrapemethod(optional):GETorPOSTpayload(optional): request body whenmethod=POST
cacheMaxAgeInSec(default =0): if a successful result exists for the same URL and is fresh enough, it will be returned from cache (not billed).
You can also pass scraper-specific parameters (see the scrapers section), for example:
{
"requests": [
{
"url": "https://shopee.co.id/api/v4/search/search_items?keyword=tshirt"
}
],
"productSearch_enrichUrlQuery_pageSize": 60,
"productSearch_crawlNextPages": true,
"productSearch_crawlNextPages_maxPages": 3,
"productSearch_crawlProductDetails": true
}
Response (when waitForCompletion=true)
[
{
"url": "https://shopee.co.id/SEPATU-SNEAKERS-CASUAL-ADIDS-SPEZIAL-HANDBALL-BNIB-i.197850298.20595626884?sp_atk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8&xptdk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8",
"status": "SUCCESS",
"responseBody": "..."
},
{
"url": "https://shopee.co.id/adidas-Runfalcon-3.0-Men's-Running-Shoes---Core-Black-i.234490784.25462132870?sp_atk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9&xptdk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9",
"status": "ERROR_TOO_MANY_TIMES",
"responseBody": null,
"errorMessage": "... explanation ..."
},
{
"url": "https://shopee.sg/api/v4/microsite/batch_get_item_card",
"method": "POST",
"payload": {
"shop_item_ids": [
{
"item_id": 40505798777,
"shop_id": 1521408445
},
{
"item_id": 40905798740,
"shop_id": 1521408445
},
{
"item_id": 42105798857,
"shop_id": 1521408445
},
{
"item_id": 43005798827,
"shop_id": 1521408445
},
{
"item_id": 27937932620,
"shop_id": 1521408445
}
]
},
"status": "BLOCKED_TOO_MANY_TIMES",
"responseBody": "... message from scraped platform, if any ..."
}
]
CURL Example
curl --header "Content-Type: application/json" \
--header "Authorization: Bearer ${token}" \
--request POST \
--data '{"requests":[{"url": "https://shopee.co.id/adidas-Runfalcon-3.0-Mens-Running-Shoes---Core-Black-i.234490784.25462132870?sp_atk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9&xptdk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9"}, {"url": "https://shopee.co.id/SEPATU-SNEAKERS-CASUAL-ADIDS-SPEZIAL-HANDBALL-BNIB-i.197850298.20595626884?sp_atk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8&xptdk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8"}]}' \
https://continuous-scraper.common.chartedapi.com/requests/shopee/run?autoCancelAfterSec=1200&includeAllFields=false
Run a Single Scraping Task
Convenience endpoint to run a single request.
HTTP Method and URL
POST https://continuous-scraper.common.chartedapi.com/scraping-tasks/${scraper}/run-single?autoCancelAfterSec=1200
Parameters
Same as Run Scraping Tasks.
Request Body Example
{
"url": "https://shopee.co.id/adidas-Runfalcon-3.0-Men's-Running-Shoes---Core-Black-i.234490784.25462132870?sp_atk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9&xptdk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9"
}
Request body fields
Same as Run Scraping Tasks, but fields that are normally located in the requests array
are directly placed at the root (e.g. url, method, payload).
Response (when waitForCompletion=true)
{
"url": "https://shopee.co.id/SEPATU-SNEAKERS-CASUAL-ADIDS-SPEZIAL-HANDBALL-BNIB-i.197850298.20595626884?sp_atk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8&xptdk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8",
"status": "SUCCESS",
"responseBody": "..."
}
CURL Example
curl --header "Content-Type: application/json" \
--header "Authorization: Bearer ${token}" \
--request POST \
--data '{"url": "https://shopee.co.id/adidas-Runfalcon-3.0-Mens-Running-Shoes---Core-Black-i.234490784.25462132870?sp_atk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9&xptdk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9"}' \
https://continuous-scraper.common.chartedapi.com/requests/shopee/run-single
Read Scraping Tasks
Fetch tasks (and results) by UUID and/or filters.
HTTP Method and URL
GET https://continuous-scraper.common.chartedapi.com/scraping-tasks/${scraper}?limit=20&offset=0&uuids=398a3b4d-241c-4297-9e81-5c4c6ecce340,785ebeaf-ae2c-4453-908b-c7dac008fbf4
Path Parameters
scraper:shopee,shopee-androidorlazada
Query Parameters
limit(optional, default =20): max number of tasks to returnoffset(default =0): number of tasks to skipuuids(optional): comma-separated list of task UUIDsurls(optional): comma-separated list of task URLsminPendingAt(optional): ISO 8601 datetime (inclusive)maxPendingAt(optional): ISO 8601 datetime (exclusive)includeAllFields(default =false)includeFields(optional): overridesincludeAllFields
Request Headers
Authorization: Bearer ${token}
Response Body Example
[
{
"uuid": "398a3b4d-241c-4297-9e81-5c4c6ecce340",
"url": "https://shopee.co.id/SEPATU-SNEAKERS-CASUAL-ADIDS-SPEZIAL-HANDBALL-BNIB-i.197850298.20595626884?sp_atk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8&xptdk=ff613749-9cf1-4b40-ae8e-f76dd2279ba8",
"status": "SUCCESS",
"responseBody": "..."
},
{
"uuid": "785ebeaf-ae2c-4453-908b-c7dac008fbf4",
"url": "https://shopee.co.id/adidas-Runfalcon-3.0-Men's-Running-Shoes---Core-Black-i.234490784.25462132870?sp_atk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9&xptdk=67836f0a-c0c8-40d4-a0a7-bd1998943cc9",
"status": "ERROR",
"responseBody": null,
"errorMessage": "... explanation ..."
}
]
CURL Example
curl --header "Authorization: Bearer ${token}" \
"https://continuous-scraper.common.chartedapi.com/scraping-tasks/shopee?limit=20&offset=0"
Count Scraping Tasks
Count tasks by status and country.
HTTP Method and URL
GET https://continuous-scraper.common.chartedapi.com/scraping-tasks/${scraper}/count?statuses=PENDING,RUNNING,BLOCKED,ERROR
Path Parameters
scraper:shopee,shopee-androidorlazada
Query Parameters
statuses(optional, default = all): comma-separated list of statuses
Example 1:
statuses=PENDING,RUNNING,BLOCKED,ERROR→ pending/running counts
Example 2:
statuses=BLOCKED_TOO_MANY_TIMES,ERROR_TOO_MANY_TIMES,REPLACED,CANCELLED,SUCCESS→ completed/non-recoverable counts
Request Headers
Authorization: Bearer ${token}
Response Body Example
[
{ "country": "ID", "status": "BLOCKED_TOO_MANY_TIMES", "count": 4846 },
{ "country": "ID", "status": "SUCCESS", "count": 452746545 },
{ "country": "MY", "status": "SUCCESS", "count": 3054565 }
]
CURL Example
curl --header "Authorization: Bearer $token" \
"https://continuous-scraper.common.chartedapi.com/scraping-tasks/shopee/count?statuses=PENDING,RUNNING,BLOCKED,ERROR"
Cancel Scraping Tasks
Cancel tasks (and sub-tasks) by UUID and/or country.
HTTP Method and URL
POST https://continuous-scraper.common.chartedapi.com/scraping-tasks/${scraper}/cancel
Path Parameters
scraper:shopee,shopee-androidorlazada
Request Headers
Authorization: Bearer ${token}
Request Body Example
{
"uuids": [
"2199a83d-3ebe-442c-aa82-afd3a9903967",
"1ce16c7b-26f1-4851-a281-e09f79ce2de9",
"34d3449d-b5b9-46a5-a4e0-d524d2ab3222"
],
"countries": ["ID", "MY", "PH", "SG", "TH", "VN"]
}
Request body fields
uuids: array of task UUIDs to cancelcountries: array of countries to cancel
Sub-scraping tasks are cancelled as well.
Response Body Example
{
"uuids": [
"2199a83d-3ebe-442c-aa82-afd3a9903967",
"1ce16c7b-26f1-4851-a281-e09f79ce2de9",
"34d3449d-b5b9-46a5-a4e0-d524d2ab3222",
"37744b6d-35fb-47c0-9c73-e9b7feb9f089",
"29d6b918-745b-4029-bdba-5f6489c43146"
],
"countries": ["ID"]
}
CURL Example
curl --header "Content-Type: application/json" \
--header "Authorization: Bearer ${token}" \
--request POST \
--data '{"uuids":["2199a83d-3ebe-442c-aa82-afd3a9903967", "1ce16c7b-26f1-4851-a281-e09f79ce2de9"}' \
https://continuous-scraper.common.chartedapi.com/requests/shopee/cancel
Proxy Configuration
By default, Charted Sea manages proxies for you. If you want to use your own proxy pool, you can configure custom proxy URLs.
Why configure your own proxies?
- Expand your pool of IPs for higher throughput or improved success rate
- Use your existing proxy provider deals
- Control proxy routing behavior
If you use your own proxies, Charted Sea will not charge for managed proxy usage.
Configured proxies must be sticky, because web browsers can open multiple TCP connections.
Validate Proxies
Unfortunately not all proxies are compatible with our scrapers, for example our Shopee Web scraper requires socks5 proxies with HTTP/3 support.
This API allows you to validate your proxy URLs and check their compatibility with our scrapers.
Executing this API will not update your proxy configuration, but it will consume a little bit of proxy traffic.
HTTP Method and URL
POST https://continuous-scraper.common.chartedapi.com/proxy-validate
Request Headers
Authorization: Bearer ${token}
Request Body Example
The request body is an array of proxy URL strings (placeholders supported, see Appendix: Proxy URL Placeholders):
[
"socks5://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}",
"socks5://uuu-zone-custom-region-${country(case=LOWER)}-session-${rand(len=9,use=[lowerCaseChar,digit])}-sessTime-10:ppp@p1.mangoproxy.com:2333"
]
Response Body Example
[
{
"url": "socks5://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}",
"tests": [
{
"type": "http",
"success": true,
"ipAddress": "124.246.119.222"
},
{
"type": "https",
"success": true,
"ipAddress": "124.246.119.222"
},
{
"type": "http3",
"success": true,
"ipAddress": "124.246.119.222"
},
{
"type": "stun",
"success": true,
"ipAddress": "124.246.119.222"
},
{
"type": "tcp20443",
"success": false,
"errors": [
"Error: read ECONNRESET"
]
},
{
"type": "udp20443",
"success": false,
"errors": [
"Error: UDP reflect request to udp://sg1.whatismyip.chartedsea.com:20443 timed out after 10000ms."
]
}
],
"compatibilities": [
{
"scraper": "SHOPEE",
"description": "Shopee Web Scraper",
"compatible": true
},
{
"scraper": "SHOPEE_ANDROID",
"description": "Shopee Android Scraper",
"compatible": true,
"degradedPerformanceReason": "Unsupported protocol/port(s): TCP/20443"
},
{
"scraper": "LAZADA",
"description": "Lazada Web Scraper",
"compatible": true
}
]
},
{
"url": "socks5://uuu-zone-custom-region-${country(case=LOWER)}-session-${rand(len=9,use=[lowerCaseChar,digit])}-sessTime-10:ppp@p1.mangoproxy.com:2333",
"tests": [
{
"type": "http",
"success": true,
"ipAddress": "58.182.111.127"
},
{
"type": "https",
"success": true,
"ipAddress": "58.182.111.127"
},
{
"type": "http3",
"success": false,
"errors": [
"Error: Request failed: Timeout was reached"
]
},
{
"type": "stun",
"success": false,
"errors": [
"Error: STUN request to sg2.whatismyip.chartedsea.com:19302 timed out after 10000ms."
]
},
{
"type": "tcp20443",
"success": false,
"errors": [
"Error: Missing response from tcp://sg1.whatismyip.chartedsea.com:20443"
]
},
{
"type": "udp20443",
"success": false,
"errors": [
"Error: UDP reflect request to udp://sg1.whatismyip.chartedsea.com:20443 timed out after 10000ms."
]
}
],
"compatibilities": [
{
"scraper": "SHOPEE",
"description": "Shopee Web Scraper",
"compatible": false,
"incompatibilityReason": "Unsupported protocol/port(s): HTTP3/443",
"degradedPerformanceReason": "Unsupported protocol/port(s): STUN/19302"
},
{
"scraper": "SHOPEE_ANDROID",
"description": "Shopee Android Scraper",
"compatible": true,
"degradedPerformanceReason": "Unsupported protocol/port(s): TCP/20443"
},
{
"scraper": "LAZADA",
"description": "Lazada Web Scraper",
"compatible": true
}
]
}
]
Response body fields
url: Proxy URLtests: Validations on a set of protocol and portstype: The protocol/port being tested (see test types below)success: Whether the test passedipAddress: The IP address seen by the remote server (only present whensuccess=true)warnings: Array of warning messages (e.g. "Different IP address from HTTP")errors: Array of error messages (only present whensuccess=false)
compatibilities: Indicate if the proxy is compatible with our scraperscraper: Scraper identifier (SHOPEE,SHOPEE_ANDROID,LAZADA)description: Human-readable scraper namecompatible: Whether the proxy fully works with this scraperincompatibilityReason: Why the proxy is incompatible (only present whencompatible=false)degradedPerformanceReason: Why performance may be reduced (only present when applicable, even ifcompatible=true)
When degradedPerformanceReason is present, the proxy will work with the scraper but may experience lower
success rates or slower speeds due to missing protocol support.
Test types
| Type | What it tests |
|---|---|
http | HTTP over port 80 |
https | HTTPS over port 443 |
http3 | HTTP/3 (QUIC) over UDP port 443 |
stun | STUN protocol over port 19302 |
tcp20443 | TCP connection to port 20443 |
udp20443 | UDP reflection to port 20443 |
Update Proxy Configuration
Replace the entire proxy configuration with a new set of proxy URLs.
Proxies are validated before updating your configuration. If at least one error or incompatibility is detected, the whole request fails and nothing is updated.
HTTP Method and URL
PUT https://continuous-scraper.common.chartedapi.com/proxy-configs
Request Headers
Authorization: Bearer ${token}
Request Body Example
[
{
"scraper": "SHOPEE",
"proxySettings": [
{
"type": "RESIDENTIAL",
"urls": [
"socks5://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}"
]
},
{
"country": "TW",
"type": "RESIDENTIAL",
"urls": [
"socks5://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}",
"socks5://uuu:ppp_country-${country(case=LOWER)}_session-${rand(len=8,use=[lowerCaseChar,upperCaseChar,digit])}_lifetime-15m@geo.iproyal.com:12321"
]
}
]
},
{
"scraper": "SHOPEE_ANDROID",
"proxySettings": [
{
"type": "RESIDENTIAL",
"urls": [
"http://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}",
"http://uuu-residential-country_${country(case=UPPER)}-r_10m-s_${rand(len=10,use=[lowerCaseChar,upperCaseChar,digit])}:ppp@gate.nstproxy.io:24125"
]
},
{
"country": "TW",
"type": "RESIDENTIAL",
"urls": [
"http://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}",
"http://uuu-residential-country_${country(case=UPPER)}-r_10m-s_${rand(len=10,use=[lowerCaseChar,upperCaseChar,digit])}:ppp@gate.nstproxy.io:24125",
"http://uuu:ppp_country-${country(case=LOWER)}_session-${rand(len=8,use=[lowerCaseChar,upperCaseChar,digit])}_lifetime-15m@geo.iproyal.com:12321"
]
}
]
},
{
"scraper": "LAZADA",
"proxySettings": [
{
"type": "DATACENTER",
"urls": [
"http://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}"
]
},
{
"type": "RESIDENTIAL",
"urls": [
"http://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}"
]
}
]
}
]
Request body fields
scraper:SHOPEE,SHOPEE_ANDROIDorLAZADAproxySettings: array of objects:type:DATACENTERorRESIDENTIALurls: array of proxy URLs (placeholders supported)country(optional): if set, this setting is dedicated to that country
Response
In case of success, the response status is 200 and the body is the same as the request body.
In case of error, the response status is 400 and the body is almost the same as the request body, but with
an additional field under proxySettings:
invalidUrls: array of objects:url: Proxy URLreason: EitherHAS_ERROR(e.g. URL formatting error) orINCOMPATIBLE(e.g. missing required protocol/port).
For example:
[{
"scraper": "SHOPEE",
"proxySettings": [
{
"type": "RESIDENTIAL",
"urls": ["socks5://..."],
"invalidUrls": [
{ "url": "socks5://...", "reason": "INCOMPATIBLE" }
]
}
]
}]
Please run the Validate proxies API with the invalid URLs to get detailed explanations.
Read Proxy Configuration
HTTP Method and URL
GET https://continuous-scraper.common.chartedapi.com/proxy-configs
Request Headers
Authorization: Bearer ${token}
Response Body Example
Same as the request body in Update Proxy Configuration.
CURL Example
curl --header "Authorization: Bearer ${token}" \
"https://continuous-scraper.common.chartedapi.com/proxy-configs"
Appendix: Proxy URL Placeholders
Proxy URL placeholders are enclosed in ${...} and expanded server-side before use.
They allow you to dynamically generate proxy URLs (for example, to create sticky sessions or country-specific credentials).
Supported functions
${rand(...)}
Generates a random value.
Supported arguments:
-
len(number)
Length of the generated string (required unlessrangeis provided). -
use(array)
Character sets to include. Allowed values:lowerCaseChar→abcdefghijklmnopqrstuvwxyzupperCaseChar→ABCDEFGHIJKLMNOPQRSTUVWXYZdigit→0123456789symbol→[],$&+:;=?@#|"'><.^*()%! -
-
subset(string)
Custom set of allowed characters (alternative touse).
The characters$,"and\must be escaped as\$,\"and\\. -
range(array[min, max])
Generates a random number within the specified range (inclusive).
Examples:
${rand(len=8,use=[lowerCaseChar,digit])}
${rand(range=[10000,19999])}
${rand(len=12,subset="abcdef012345")}
${country(case=UPPER|LOWER)}
Expands to the target country code associated with the scraping task.
Arguments:
case=UPPER→SG,ID,MYcase=LOWER→sg,id,my
Example:
${country(case=LOWER)}
Example Proxy URLs
{
"urls": [
// Generate 9999 DataImpulse URLs
"socks5://uuu__cr.${country(case=LOWER)}:ppp@gw.dataimpulse.com:${rand(range=[10000,19999])}",
// Generate many LunaProxy URLs
"http://user-uuu-region-${country(case=LOWER)}-sessid-${country(case=LOWER)}${rand(len=16,use=[lowerCaseChar,digit])}-sesstime-30:ppp@as.e4f4xh3i.lunaproxy.net:12233",
// Generate many IPRoyal URLs
"http://uuu:ppp_country-${country(case=LOWER)}_session-${rand(len=8,use=[lowerCaseChar,upperCaseChar,digit])}_lifetime-30m@geo.iproyal.com:12321",
// Generate many BrightData URLs
"http://brd-customer-hl_uuu-zone-zzz-country-${country(case=LOWER)}-session-${rand(range=[1,70000000])}:ppp@brd.superproxy.io:22225",
// Generate many Oxylabs URLs
"http://customer-uuu-cc-${country(case=UPPER)}-sessid-${rand(len=10,use=[lowerCaseChar,digit])}-sesstime-30:ppp@pr.oxylabs.io:7777",
// Generate many Massive URLs (note how the characters @, ?, & and = are URI encoded)
"http://john.doe%40example.com%3Fcountry%3D${country(case=UPPER)}%26session%3D${rand(len=10,use=[lowerCaseChar,upperCaseChar,digit])}:ppp@network.joinmassive.com:65534",
// Generate many Nstproxy URLs
"http://uuu-residential-country_${country(case=UPPER)}-r_30m-s_${rand(len=10,use=[lowerCaseChar,upperCaseChar,digit])}:ppp@gate.nstproxy.io:24125",
// Generate many Mango Proxy URLs
"http://uuu-zone-custom-region-${country(case=LOWER)}-session-${rand(len=9,use=[lowerCaseChar,digit])}-sessTime-30:ppp@p1.mangoproxy.com:2333",
// Generate many Netnut URLs
"http://uuu-res-${country(case=UPPER)}-sid-${rand(len=9,use=[digit])}:ppp@gw.ntnt.io:5959",
// Generate many Zenrows URLs
"http://uuu:ppp_country-${country(case=LOWER)}_ttl-30m_session-${rand(len=12,use=[lowerCaseChar,upperCaseChar,digit])}@superproxy.zenrows.com:1337",
// Generate many Soax Proxy URLs
"http://package-123456-country-${country(case=LOWER)}-sessionid-${rand(len=10,use=[lowerCaseChar,digit])}-sessionlength-30:ppp@proxy.soax.com:5000",
// Generate many 711Proxy Proxy URLs
"http://uuu-zone-custom-region-${country(case=UPPER)}-session-${rand(len=8,use=[digit])}-sessTime-30-sessAuto-1:ppp@global.711proxy.com:10000"
]
}
Important Notes
- Placeholders are expanded for each scraping execution.
- Sticky sessions must remain stable for at least 25 minutes.
- Don't hesitate to contact us if you need help.
Next Steps
- Review the scraper-specific documentation (Shopee, Lazada, etc.)
- Review the Quick Start guide for a minimal integration example
- Monitor usage and wallet balance in the Console