RedScrapeRedScrapeDocs

Subscriptions

Manage proxy subscriptions list, filter, get credentials, monitor usage, whitelist IPs, reset passwords, export in bulk, and top-up data.

List Subscriptions

Retrieve all subscriptions with full proxy details, credentials, node info, and usage stats.

GET /subscriptions/

Headers

HeaderRequiredDescription
X-API-KeyYesYour API key

Query Parameters

ParameterTypeDefaultDescription
statusstringFilter by status: active, expired, cancelled, paused, suspended
product_slugstringFilter by product slug
category_slugstringFilter by category slug
pageinteger1Page number
per_pageinteger50Results per page (1–100)

Response

{
  "items": [
    {
      "id": 42,
      "product_id": 1,
      "product_name": "Datacenter Proxy",
      "product_slug": "datacenter-proxy",
      "category_slug": "datacenter",
      "status": "active",
      "source": "api",
      "billing_period": "monthly",
      "started_at": "2025-01-15T12:00:00Z",
      "expires_at": "2025-02-14T12:00:00Z",
      "time_remaining_seconds": 1296000,
      "time_remaining_human": "15d 0h",
      "is_expired": false,
      "price_paid_usd": "29.99",
      "auto_renew": true,
      "nickname": "US Scraper",
      "proxy": {
        "id": 10,
        "threads": 100,
        "max_ips": 5,
        "max_data_bytes": 107374182400,
        "data_used_bytes": 21474836480,
        "data_remaining_bytes": 85899345920,
        "data_usage_percent": 20.0,
        "proxy_username": "user_abc123",
        "proxy_password": "p4ssw0rd",
        "proxy_host": "us.proxy.redscrape.com",
        "proxy_port": 10000,
        "node": {
          "name": "US East",
          "location": "New York",
          "country_code": "US",
          "status": "active"
        },
        "is_pay_as_you_go": false,
        "ip_whitelist": [
          {
            "id": 1,
            "ip_address": "203.0.113.10",
            "label": "Office server"
          }
        ]
      }
    }
  ],
  "meta": {
    "total": 12,
    "pages": 1,
    "page": 1,
    "per_page": 50
  }
}

Subscription Object

FieldTypeDescription
idintegerUnique subscription ID
product_idintegerAssociated product ID
product_namestringProduct display name
product_slugstringProduct slug
category_slugstringCategory slug
statusstringactive, expired, cancelled, paused, suspended
billing_periodstringweekly, monthly, quarterly, yearly, pay_as_you_go
started_atstringISO 8601 start timestamp
expires_atstring | nullISO 8601 expiry timestamp
time_remaining_secondsinteger | nullSeconds until expiry
time_remaining_humanstring | nullHuman-readable time remaining (e.g. 15d 3h)
is_expiredbooleanWhether the subscription has expired
price_paid_usdstringAmount paid
auto_renewbooleanAuto-renewal enabled
nicknamestring | nullCustom label
proxyobjectProxy configuration and credentials (see below)

Proxy Object

FieldTypeDescription
proxy_hoststring | nullProxy server hostname
proxy_portintegerProxy server port (default: 10000)
proxy_usernamestringAuth username
proxy_passwordstringAuth password
threadsintegerMax concurrent connections
max_ipsintegerMax whitelisted IPs
max_data_bytesinteger | nullData cap in bytes
data_used_bytesintegerData consumed in bytes
data_remaining_bytesinteger | nullRemaining data in bytes
data_usage_percentnumber | nullPercentage of data used
nodeobject | nullNode details (name, location, country_code, status)
is_pay_as_you_gobooleanPay-as-you-go mode
ip_whitelistarrayWhitelisted IPs

Get Subscription

Retrieve a single subscription by ID with full details.

GET /subscriptions/{sub_id}

Path Parameters

ParameterTypeDescription
sub_idintegerSubscription ID

Response

Returns a single Subscription Object.


Get Proxy Credentials

Get just the proxy connection details designed for quick integration.

GET /subscriptions/{sub_id}/credentials

Response

{
  "subscription_id": 42,
  "product_name": "Datacenter Proxy",
  "status": "active",
  "proxy_host": "us.proxy.redscrape.com",
  "proxy_port": 10000,
  "proxy_username": "user_abc123",
  "proxy_password": "p4ssw0rd",
  "protocol": "http",
  "connection_string": "http://user_abc123:[email protected]:10000",
  "node": {
    "name": "US East",
    "location": "New York",
    "country_code": "US"
  }
}

Use the connection_string directly in your HTTP client:

import requests

creds = get_credentials(42)
proxies = {"http": creds["connection_string"], "https": creds["connection_string"]}
resp = requests.get("https://httpbin.org/ip", proxies=proxies)

Get Usage Stats

Get detailed usage statistics: data consumption, time remaining, and limits.

GET /subscriptions/{sub_id}/usage

Response

{
  "subscription_id": 42,
  "status": "active",
  "billing_period": "monthly",
  "data": {
    "used_bytes": 21474836480,
    "used_gb": 20.0,
    "max_bytes": 107374182400,
    "max_gb": 100.0,
    "remaining_bytes": 85899345920,
    "remaining_gb": 80.0,
    "usage_percent": 20.0,
    "is_pay_as_you_go": false
  },
  "limits": {
    "threads": 100,
    "max_ips": 5,
    "whitelisted_ips_count": 2
  },
  "time": {
    "started_at": "2025-01-15T12:00:00+00:00",
    "expires_at": "2025-02-14T12:00:00+00:00",
    "remaining_seconds": 1296000,
    "remaining_hours": 360.0,
    "remaining_days": 15.0,
    "is_expired": false
  }
}

Data Object

FieldTypeDescription
used_bytesintegerData consumed in bytes
used_gbnumberData consumed in GB
max_bytesinteger | nullData cap in bytes
max_gbnumber | nullData cap in GB
remaining_bytesinteger | nullRemaining data in bytes
remaining_gbnumber | nullRemaining data in GB
usage_percentnumber | nullPercentage of data used
is_pay_as_you_gobooleanPay-as-you-go mode

Time Object

FieldTypeDescription
started_atstringISO 8601 start timestamp
expires_atstringISO 8601 expiry timestamp
remaining_secondsintegerSeconds until expiry
remaining_hoursnumberHours until expiry
remaining_daysnumberDays until expiry
is_expiredbooleanWhether the time has expired

Export Credentials (Bulk)

Export proxy credentials for all (or filtered) subscriptions. Supports JSON and plain text formats.

GET /subscriptions/export/credentials

Query Parameters

ParameterTypeDefaultDescription
statusstringactiveFilter by status
formatstringjsonOutput format: json or plain

JSON Response

{
  "count": 3,
  "proxies": [
    {
      "subscription_id": 42,
      "nickname": "US Scraper",
      "product_name": "Datacenter Proxy",
      "product_slug": "datacenter-proxy",
      "status": "active",
      "proxy_host": "us.proxy.redscrape.com",
      "proxy_port": 10000,
      "proxy_username": "user_abc123",
      "proxy_password": "p4ssw0rd",
      "connection_string": "http://user_abc123:[email protected]:10000",
      "node": {
        "name": "US East",
        "location": "New York",
        "country_code": "US"
      }
    }
  ]
}

Plain Text Response (format=plain)

Returns one proxy per line as host:port:user:pass:

us.proxy.redscrape.com:10000:user_abc123:p4ssw0rd
eu.proxy.redscrape.com:10000:user_def456:s3cur3pw

Add IP to Whitelist

POST /subscriptions/{sub_id}/ip-whitelist

Request Body

FieldTypeRequiredDescription
ip_addressstringYesIPv4 or IPv6 address
labelstringNoFriendly label

Response

{
  "id": 5,
  "ip_address": "203.0.113.10",
  "label": "Office server"
}

Remove IP from Whitelist

DELETE /subscriptions/{sub_id}/ip-whitelist/{ip_id}

Response

{ "ok": true, "message": "IP removed" }

Reset Proxy Password

Generate a new proxy password. The old password stops working immediately.

POST /subscriptions/{sub_id}/reset-password

Response

{ "proxy_password": "new_s3cure_pw" }

Rename Subscription

PATCH /subscriptions/{sub_id}/rename

Request Body

FieldTypeRequiredDescription
nicknamestringYesNew display name (max 64 chars)

Response

{ "ok": true, "message": "Subscription renamed" }

Top-Up Data

Add more data (GB) to a subscription. Cost is deducted from your wallet.

POST /subscriptions/{sub_id}/topup-data

Request Body

FieldTypeRequiredDescription
data_gbintegerYesAmount of data to add in GB

Response

{
  "ok": true,
  "message": "Added 50 GB",
  "new_max_data_bytes": 161061273600
}

Examples

# List active subscriptions only
curl -H "X-API-Key: your_api_key" \
  "https://api.redscrape.com/api/public/subscriptions/?status=active"

# Filter by product
curl -H "X-API-Key: your_api_key" \
  "https://api.redscrape.com/api/public/subscriptions/?product_slug=datacenter-proxy"

# Get proxy credentials for quick integration
curl -H "X-API-Key: your_api_key" \
  https://api.redscrape.com/api/public/subscriptions/42/credentials

# Get detailed usage stats
curl -H "X-API-Key: your_api_key" \
  https://api.redscrape.com/api/public/subscriptions/42/usage

# Export all active proxy credentials as plain text
curl -H "X-API-Key: your_api_key" \
  "https://api.redscrape.com/api/public/subscriptions/export/credentials?format=plain"

# Export as JSON
curl -H "X-API-Key: your_api_key" \
  https://api.redscrape.com/api/public/subscriptions/export/credentials

# Add IP to whitelist
curl -X POST -H "X-API-Key: your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"ip_address": "203.0.113.10", "label": "Office"}' \
  https://api.redscrape.com/api/public/subscriptions/42/ip-whitelist

# Reset proxy password
curl -X POST -H "X-API-Key: your_api_key" \
  https://api.redscrape.com/api/public/subscriptions/42/reset-password

# Top-up 50 GB
curl -X POST -H "X-API-Key: your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"data_gb": 50}' \
  https://api.redscrape.com/api/public/subscriptions/42/topup-data

On this page