Proxies Remove user proxy (only created by user). Package
A list of all publicly available methods for interacting with the API.
Proxies list Proxies Get proxies in given package. Package -/package/proxy-list/{id}
Query method
GEThttps://api.stableproxy.com/v2/package/proxy-list/{id}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| with-hiddenNot necessarily | nullableex-boolean | false |
| countriesNot necessarily | nullablearray | {"UA": 10, "PL": 20} |
| searchNot necessarily | nullablestring | 49 |
| per-pageNot necessarily | nullableinteger | 40 |
| pageNot necessarily | nullableinteger | 94 |
| sort-byNot necessarily | nullablestringapp\_validators\_ex_in_rule | "" |
| sort-orderNot necessarily | nullablestringin:asc, desc | "asc" |
| countries.*Not necessarily | distinctstringcountry_code | {"UA": 10, "PL": 20} |
| id | 1required | 97 |
Code examples
JavaScript
async function getPackageProxyList() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy-list/{id}'
.replace("{id}", 97) + '?' + Object.entries({
"with-hidden": false,
"countries[UA]": 10,
"countries[PL]": 20,
"search": 49,
"per-page": 40,
"page": 94,
"sort-by": "",
"sort-order": "asc",
"countries.*[UA]": 10,
"countries.*[PL]": 20
}).map(([key, value]) => key + "=" + value).join('&'), {
method: 'GET',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Get available country cities Get available city in residential country or regions -/package/proxy/{id}/cities
Query method
GEThttps://api.stableproxy.com/v2/package/proxy/{id}/cities
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| regionsNot necessarily | arraydistinct | [] |
| country | stringrequiredcountry_code | "" |
| regions.*Not necessarily | string | "" |
| id | 1required | 93 |
Code examples
JavaScript
async function getPackageProxyCities() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}/cities'
.replace("{id}", 93) + '?' + Object.entries({
"regions": [],
"country": "",
"regions.*": ""
}).map(([key, value]) => key + "=" + value).join('&'), {
method: 'GET',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Get available country regions Proxies Get available regions in residential country Package -/package/proxy/{id}/regions
Query method
GEThttps://api.stableproxy.com/v2/package/proxy/{id}/regions
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| country | stringrequiredcountry_code | "" |
| id | 1required | 16 |
Code examples
JavaScript
async function getPackageProxyRegions() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}/regions'
.replace("{id}", 16) + '?' + Object.entries({
"country": ""
}).map(([key, value]) => key + "=" + value).join('&'), {
method: 'GET',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Get proxy Get proxy bfrom list by index. -/package/proxy/{id}/{proxyIndex}
Query method
GEThttps://api.stableproxy.com/v2/package/proxy/{id}/{proxyIndex}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| id | 1required | 56 |
| proxyIndex | 1required | 46 |
Code examples
JavaScript
async function getPackageProxy() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}/{proxyIndex}'
.replace("{id}", 56)
.replace("{proxyIndex}", 46), {
method: 'GET',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Change proxy pool Change the pool for an already-added residential proxy.Passing pool_id=null reverts to the default pool. Only applicable to residential_gb and residential_city_gb package types. -/package/proxy/{id}/{proxyIndex}/pool
Query method
PUThttps://api.stableproxy.com/v2/package/proxy/{id}/{proxyIndex}/pool
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| pool_idNot necessarily | nullablestring | 22 |
| id | 1required | 81 |
| proxyIndex | 1required | 93 |
Code examples
JavaScript
async function putPackageProxyPool() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}/{proxyIndex}/pool'
.replace("{id}", 81)
.replace("{proxyIndex}", 93), {
method: 'PUT',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"pool_id": 22
}),
}
);
const res = await req.json();
}Hide proxy Proxies Hide selected proxy from list (but it will work, only visual)) Package -/package/hide/{id}/{proxyIndex}
Query method
PUThttps://api.stableproxy.com/v2/package/hide/{id}/{proxyIndex}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| id | 1required | 58 |
| proxyIndex | 1required | 72 |
Code examples
JavaScript
async function putPackageHide() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/hide/{id}/{proxyIndex}'
.replace("{id}", 58)
.replace("{proxyIndex}", 72), {
method: 'PUT',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Get note You can read note for proxy. -/package/note/{id}/{proxyIndex}
Query method
GEThttps://api.stableproxy.com/v2/package/note/{id}/{proxyIndex}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| noteNot necessarily | nullablestring | 98 |
| id | 1required | 6 |
| proxyIndex | 1required | 95 |
Code examples
JavaScript
async function getPackageNote() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/note/{id}/{proxyIndex}'
.replace("{id}", 6)
.replace("{proxyIndex}", 95) + '?' + Object.entries({
"note": 98
}).map(([key, value]) => key + "=" + value).join('&'), {
method: 'GET',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Change note Proxies Add personal note for proxy in package. Package -/package/note/{id}/{proxyIndex}
Query method
PUThttps://api.stableproxy.com/v2/package/note/{id}/{proxyIndex}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| noteNot necessarily | nullablestring | 98 |
| id | 1required | 6 |
| proxyIndex | 1required | 95 |
Code examples
JavaScript
async function putPackageNote() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/note/{id}/{proxyIndex}'
.replace("{id}", 6)
.replace("{proxyIndex}", 95), {
method: 'PUT',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"note": 98
}),
}
);
const res = await req.json();
}Examples of answers
Success response
Rotate proxy Rotate proxy, residential, mobile - change ip. -/package/proxy-rotate/{id}/{proxyIndex}
Query method
GEThttps://api.stableproxy.com/v2/package/proxy-rotate/{id}/{proxyIndex}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| id | 1required | 82 |
| proxyIndex | 1required | 72 |
Code examples
JavaScript
async function getPackageProxyRotate() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy-rotate/{id}/{proxyIndex}'
.replace("{id}", 82)
.replace("{proxyIndex}", 72), {
method: 'GET',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Add proxy Proxies Add custom user proxy, like for residential constructor. Package -/package/proxy/{id}
Query method
POSThttps://api.stableproxy.com/v2/package/proxy/{id}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| fixed | requiredex-boolean | false |
| interval | requiredinteger | 49 |
| pool_idNot necessarily | nullablestring | 58 |
| count | requiredinteger | 30 |
| countriesNot necessarily | nullablearray | {"UA": 10, "PL": 20} |
| countries.*Not necessarily | distinctstringcountry_code | {"UA": 10, "PL": 20} |
| id | 1required | 99 |
Code examples
JavaScript
async function postPackageProxy() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}'
.replace("{id}", 99), {
method: 'POST',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"fixed": false,
"interval": 49,
"pool_id": 58,
"count": 30,
"countries": {"UA": 10, "PL": 20},
"countries.*": {"UA": 10, "PL": 20}
}),
}
);
const res = await req.json();
}Examples of answers
Success response
Change all proxies pool Change the pool for ALL proxies in a package at once.Iterates over all sub-users and updates every proxy's pool_id. Passing pool_id=null removes the explicit pool (reverts to upstream default routing). Only applicable to residential_gb and residential_city_gb package types. -/package/proxy/{id}/pool
Query method
PUThttps://api.stableproxy.com/v2/package/proxy/{id}/pool
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| pool_idNot necessarily | nullablestring | 47 |
| id | 1required | 89 |
Code examples
JavaScript
async function putPackageProxyPool() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}/pool'
.replace("{id}", 89), {
method: 'PUT',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"pool_id": 47
}),
}
);
const res = await req.json();
}Remove proxy Proxies Remove user proxy (only created by user). Package -/package/proxy/{id}/{proxyIndex}
Query method
DELETEhttps://api.stableproxy.com/v2/package/proxy/{id}/{proxyIndex}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| id | 1required | 56 |
| proxyIndex | 1required | 46 |
Code examples
JavaScript
async function deletePackageProxy() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}/{proxyIndex}'
.replace("{id}", 56)
.replace("{proxyIndex}", 46), {
method: 'DELETE',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Replace proxies Proxies Replace proxies by given sequence. Package -/package/replace/{id}/{type}
Query method
PUThttps://api.stableproxy.com/v2/package/replace/{id}/{type}
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| type | 1in:non-workingrequired | "non-working" |
| id | 1required | 56 |
Code examples
JavaScript
async function putPackageReplace() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/replace/{id}/{type}'
.replace("{id}", 56)
.replace("{type}", "non-working"), {
method: 'PUT',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}Examples of answers
Success response
Get proxy pools Get available proxy pools for a package. Only applicable to residential_gb and residential_city_gb package types. -/package/proxy/{id}/pools
Query method
GEThttps://api.stableproxy.com/v2/package/proxy/{id}/pools
Query parameters
| Identifier | Regulations | Example |
|---|---|---|
| id | 1required | 87 |
Code examples
JavaScript
async function getPackageProxyPools() {
const baseUrl = 'https://api.stableproxy.com/v2';
const req = await fetch(baseUrl + '/package/proxy/{id}/pools'
.replace("{id}", 87), {
method: 'GET',
headers: {
'Authorization': 'API-Token [YOUR TOKEN]',
'Content-Type': 'application/json'
}
}
);
const res = await req.json();
}