Skip to main content
Reseller endpoints accept two credentials: If both are present, the reseller key wins.
cURL
Note that x-reseller-key is a different header from the one used by the residential usage API, which uses x-api-key. The reseller key is scoped to your reseller account and its pool.
Because the dashboard token works too, a logged-in user with reseller access needs no API key at all. The key exists for integrations that run without a user session.

Keeping your key safe

Your reseller key can spend your data allocation and your proxy capacity. Treat it like a password: keep it server-side, and never put it in client-side code, URLs, or logs.
Your key is shown once, when it’s issued. Only a SHA-256 hash of it is stored, so there is no way to read it back later — not by you, and not by support.

Checking your access

GET /reseller/self

Authenticated with your dashboard token, not the reseller key. Tells you whether the logged-in user has reseller access.
cURL

Rotating your key

POST /reseller/self/rotate-key

Also authenticated with your dashboard token, so it works even when the key is lost. The new key is returned once, in the response body.
cURL
The same rotation is available from your dashboard under Reseller → Rotate key. Rotation is immediate and unforgiving:
  • The old key stops working the moment the new one is issued. There’s no grace period.
  • The new key is shown once, same as the original.
  • Any running integration still sending the old key starts failing with 401 Invalid reseller API key.
Deploy the new key everywhere before you rotate, or expect a gap.
Rotating your key does not affect your sub-users or proxy allocations. Those credentials are independent and keep working.

Suspension

A suspended reseller account (isActive: false) gets 401 on every reseller endpoint. Existing sub-users keep working upstream until their data runs out, so your customers aren’t cut off immediately.

Troubleshooting

See Error Handling for the full error reference.