Endpoints on this page
GET /v1/account: Get the current accountGET /v1/balance: Current prepaid balanceGET /v1/balance/transactions: Balance ledger
Base URL https://statesideip.com/api/v1. Authentication, errors and limits: see the API overview.
Get the current account
GET/v1/account
Authentication: API key in the Authorization: Bearer API_KEY header.
Response 200 OK
{
"accountNumber": "4821773009125564",
"createdAt": "2026-10-05T09:12:44Z",
"email": null,
"emailVerified": false,
"hasPassword": false,
"twoFactorEnabled": false,
"lang": "en",
"currency": "USD",
"balance": "0.00",
"referralCode": "K7Q2MX",
"status": "active",
"notifications": {
"paymentReceipts": true,
"lowTraffic": true,
"expiryReminders": true,
"productNews": false
},
"recoveryCodesRemaining": 0
}Code examples
curl -s "https://statesideip.com/api/v1/account" \
-H "Authorization: Bearer $API_KEY"import os
import requests
API = "https://statesideip.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}
r = requests.get(f"{API}/account", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())// Node.js 18+ (built-in fetch), ES module
const API = 'https://statesideip.com/api/v1';
const res = await fetch(`${API}/account`, {
headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());Current prepaid balance
GET/v1/balance
Authentication: API key in the Authorization: Bearer API_KEY header.
Response 200 OK
{
"balance": "29.00",
"currency": "USD"
}Code examples
curl -s "https://statesideip.com/api/v1/balance" \
-H "Authorization: Bearer $API_KEY"import os
import requests
API = "https://statesideip.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}
r = requests.get(f"{API}/balance", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())// Node.js 18+ (built-in fetch), ES module
const API = 'https://statesideip.com/api/v1';
const res = await fetch(`${API}/balance`, {
headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());Balance ledger
GET/v1/balance/transactions
Authentication: API key in the Authorization: Bearer API_KEY header.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
page | query | integer | No | ≥ 1, default 1 |
perPage | query | integer | No | 1–100, default 20 |
type | query | top_up · purchase · refund · referral_payout · adjustment | No | — |
Response 200 OK
{
"data": [
{
"id": "txn_2k9d1m",
"type": "top_up",
"amount": "29.00",
"balanceAfter": "29.00",
"description": "Top-up · USDT · Tron (TRC-20)",
"createdAt": "2026-10-05T14:03:11Z",
"orderId": null,
"topUpId": "top_7d2kq9x1"
}
],
"pagination": {
"page": 1,
"perPage": 20,
"total": 1,
"totalPages": 1
}
}Code examples
curl -s "https://statesideip.com/api/v1/balance/transactions" \
-H "Authorization: Bearer $API_KEY"import os
import requests
API = "https://statesideip.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}
r = requests.get(f"{API}/balance/transactions", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())// Node.js 18+ (built-in fetch), ES module
const API = 'https://statesideip.com/api/v1';
const res = await fetch(`${API}/balance/transactions`, {
headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());