List available coupons
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");curl_easy_setopt(hnd, CURLOPT_URL, "https://api.proxyrequest.com/api/v1/coupons?type=free_data");
struct curl_slist *headers = NULL;headers = curl_slist_append(headers, "Accept-Language: de");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/coupons?type=free_data"), Headers = { { "Accept-Language", "de" }, { "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/coupons?type=free_data"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept-Language", "de") 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/coupons?type=free_data")) .header("Accept-Language", "de") .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/coupons?type=free_data") .get() .addHeader("Accept-Language", "de") .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/coupons', params: {type: 'free_data'}, headers: {'Accept-Language': 'de', 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/coupons?type=free_data';const options = { method: 'GET', headers: {'Accept-Language': 'de', 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/coupons?type=free_data") .get() .addHeader("Accept-Language", "de") .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/coupons";
let querystring = [ ("type", "free_data"), ];
let mut headers = reqwest::header::HeaderMap::new(); headers.insert("Accept-Language", "de".parse().unwrap()); 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/coupons?type=free_data' \ --header 'Accept-Language: de' \ --header 'Authorization: Bearer <token>'wget --quiet \ --method GET \ --header 'Accept-Language: de' \ --header 'Authorization: Bearer <token>' \ --output-document \ - 'https://api.proxyrequest.com/api/v1/coupons?type=free_data'Returns coupons visible to the authenticated account. Staff accounts receive administrative fields; customers receive the public coupon view.
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.
Case-insensitive partial search across Coupon fields: title and content. Separate multiple terms with spaces or commas; every term must match at least one listed field.
free_data- Free Data *monetary- Money *percentage- Percentage
Header Parameters
Section titled “Header Parameters”Preferred language for human-readable API errors. Supported languages: en, ru, uk, de, it, fr, es. Regional language tags and quality weights are accepted; unsupported or omitted values use English.
Examples
defr-CA, fr;q=0.9, en;q=0.5Responses
Section titled “Responses”The operation completed successfully.
object
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
When enabled, users on this package have no data cap. The proxy will not enforce any bandwidth limit.
object
Arbitrary coupon value
Leaving this field empty will generate a random code.
If true, coupon can be used multiple times.
If true, coupon can not be used for one-time package tiers.
free_data- Free Data *monetary- Money *percentage- Percentage
Number of times coupon can be used
Leave empty for coupons that never expire
The marketer who owns this coupon. Required if is_marketer is true.
The user who created this coupon.
Examples
Example response
{ "count": 1, "next": null, "previous": null, "results": [ { "id": "550e8400-e29b-41d4-a716-446655440001", "is_expired": true, "is_redeemed": true, "packages": [ { "id": "550e8400-e29b-41d4-a716-446655440001", "name": "Residential 10 GB", "alias": "residential-10gb", "is_unlimited_data": true, "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" }, "connection_limit": 1 } ], "created": "2026-07-01T12:30:00Z", "value": 1, "code": "us", "is_multi_use": true, "is_available_to_one_time": true, "type": "free_data", "limit": 100, "valid_until": "2026-07-01T12:30:00Z", "marketer": "550e8400-e29b-41d4-a716-446655440001", "user": "550e8400-e29b-41d4-a716-446655440001" } ]}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
Examples
Validation error
{ "non_field_errors": [ "The request could not be processed." ]}Headers
Section titled “Headers”Language used for human-readable errors.
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
Examples
Authentication required
{ "detail": "Authentication credentials were not provided."}Headers
Section titled “Headers”Language used for human-readable errors.
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
Examples
Permission denied
{ "detail": "You do not have permission to perform this action."}Headers
Section titled “Headers”Language used for human-readable errors.