List available proxy packages
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");curl_easy_setopt(hnd, CURLOPT_URL, "https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential");
struct curl_slist *headers = NULL;headers = curl_slist_append(headers, "Authorization: Bearer <token>");curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
CURLcode ret = curl_easy_perform(hnd);using System.Net.Http.Headers;var client = new HttpClient();var request = new HttpRequestMessage{ Method = HttpMethod.Get, RequestUri = new Uri("https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential"), Headers = { { "Authorization", "Bearer <token>" }, },};using (var response = await client.SendAsync(request)){ response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);}package main
import ( "fmt" "net/http" "io")
func main() {
url := "https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential")) .header("Authorization", "Bearer <token>") .method("GET", HttpRequest.BodyPublishers.noBody()) .build();HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());System.out.println(response.body());OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder() .url("https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential") .get() .addHeader("Authorization", "Bearer <token>") .build();
Response response = client.newCall(request).execute();import axios from 'axios';
const options = { method: 'GET', url: 'https://api.proxyrequest.com/api/v1/packages', params: {pricing_unit: 'data', type: 'residential'}, headers: {Authorization: 'Bearer <token>'}};
try { const { data } = await axios.request(options); console.log(data);} catch (error) { console.error(error);}const url = 'https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}val client = OkHttpClient()
val request = Request.Builder() .url("https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential") .get() .addHeader("Authorization", "Bearer <token>") .build()
val response = client.newCall(request).execute()use reqwest;
#[tokio::main]pub async fn main() { let url = "https://api.proxyrequest.com/api/v1/packages";
let querystring = [ ("pricing_unit", "data"), ("type", "residential"), ];
let mut headers = reqwest::header::HeaderMap::new(); headers.insert("Authorization", "Bearer <token>".parse().unwrap());
let client = reqwest::Client::new(); let response = client.get(url) .query(&querystring) .headers(headers) .send() .await;
let results = response.unwrap() .json::<serde_json::Value>() .await .unwrap();
dbg!(results);}curl --request GET \ --url 'https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential' \ --header 'Authorization: Bearer <token>'wget --quiet \ --method GET \ --header 'Authorization: Bearer <token>' \ --output-document \ - 'https://api.proxyrequest.com/api/v1/packages?pricing_unit=data&type=residential'Returns public packages and private packages already assigned to the authenticated account, including pricing and targeting capabilities.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Number of results to return per page.
The initial index from which to return the results.
Which field to use when ordering the results.
Unit customers purchase — determines how the billing model amounts are interpreted. * data - Data * proxy - Proxy
Case-insensitive partial search across Package fields: name and alias. Separate multiple terms with spaces or commas; every term must match at least one listed field.
static- Static *residential- Residential
Responses
Section titled “Responses”The operation completed successfully.
object
object
Unique display name for this package shown to customers and in the admin. Residential Starter Business Pro
Lowercase alphanumeric identifier used internally for package resolution and proxy username routing. Cannot be changed without affecting active connections. residential01 bizpro
static- Static *residential- Residential
Display order in the UI. Lower values appear first.
When enabled, users on this package can target proxies by continent. If disabled, they will only be able to target by country or city.
Allow users to target a specific country in their proxy username. country-us country-de
Allow users to target a specific region in their proxy username. Requires country targeting to be enabled. country-us-region-california
Allow users to target a specific city in their proxy username. Requires country and region targeting to be enabled. country-us-region-california-city-los_angeles
Allow users to target a specific ASN in their proxy username. ASNs must be configured in the provider’s location vocabulary. country-us-asn-3602
Customer-facing description shown on the package listing page.
Pricing model applied when customers purchase data on this package. Fixed a fixed price per data amount — 10 GB for $10, 50 GB for $50 Range tiered pricing where the unit price decreases as quantity increases * fixed - Fixed * range - Range
Unit customers purchase — determines how the billing model amounts are interpreted. * data - Data * proxy - Proxy
Number of days before purchased data expires. Set to -1 for data that never expires. 30 monthly -1 never expires
object
Reseller commission rate as a percentage of the sale price. Applies to all purchases of this package. 10.00 → 10% commission on every purchase
How the commission rate is applied to reseller sales. Fixed a fixed percentage regardless of sale amount Flexible rate may vary based on negotiated reseller terms * flexible - Flexible * percentage - Percentage * fixed - Fixed
object
Examples
Example response
{ "count": 1, "next": null, "previous": null, "results": [ { "id": "550e8400-e29b-41d4-a716-446655440001", "name": "Residential 10 GB", "alias": "residential-10gb", "type": "static", "order": 1, "is_continent_targeting": true, "is_country_targeting": true, "is_region_targeting": true, "is_city_targeting": true, "is_asn_targeting": true, "features": [], "description": "description", "pricing": "fixed", "pricing_unit": "data", "billing_cycle": 1, "billing_model": {}, "commission_rate": "commission rate", "commission_type": "flexible", "targeting_options": { "package": "package", "split_char": "-", "value_char": "-", "continent": "continent", "country": "us", "region": "california", "city": "los_angeles", "asn": "15169", "isp": "comcast", "username": "developer", "pool": "residential", "location": "location", "location_format": "location format", "session": "session", "session_mode_tag": "session mode tag", "session_ttl": "session ttl", "session_ttl_format": 1, "os": "os", "os_combined": true, "os_split_char": "os split char", "os_linux": "os linux", "os_windows": "os windows", "os_ios": "os ios", "os_macos": "os macos", "os_android": "os android" } } ]}The request is malformed or violates a business rule.
Validation and API error payload. Field names may be added dynamically; field errors are returned as arrays of human-readable messages.
object
Stable translation key suitable for client localisation.
Examples
Validation error
{ "non_field_errors": [ "The request could not be processed." ], "translation": "errors.request.invalid"}Authentication credentials are missing, expired, or invalid.
Validation and API error payload. Field names may be added dynamically; field errors are returned as arrays of human-readable messages.
object
Stable translation key suitable for client localisation.
Examples
Authentication required
{ "detail": "Authentication credentials were not provided."}The authenticated account cannot perform this operation.
Validation and API error payload. Field names may be added dynamically; field errors are returned as arrays of human-readable messages.
object
Stable translation key suitable for client localisation.
Examples
Permission denied
{ "detail": "You do not have permission to perform this action."}