Get a coupon
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/example");
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/example"), 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/example"
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/example")) .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/example") .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/example', 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/example';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/example") .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/example";
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) .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/example \ --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/exampleReturns one coupon visible within the caller’s account scope.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”A unique value identifying this Coupon.
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
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
{ "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"}Headers
Section titled “Headers”Strong entity tag for optimistic concurrency control.
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.
The requested resource does not exist in the current account scope.
Validation and API error payload. Field names may be added dynamically; field errors are returned as arrays of human-readable messages.
object
Examples
Resource not found
{ "detail": "Not found."}Headers
Section titled “Headers”Language used for human-readable errors.