Python
Basic Usage
python
import requests
API_KEY = "cst_your_key_here"
BASE = "https://central.haus"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
def get_token(target, source=None):
payload = {"target": target}
if source:
payload["source"] = source
r = requests.post(
f"{BASE}/token",
json=payload,
headers=HEADERS,
timeout=65,
)
if r.status_code == 200:
return r.json()
elif r.status_code == 404:
return None # no tokens available
else:
raise Exception(f"API error {r.status_code}: {r.json().get('error')}")
# Get a token
result = get_token("EpicLogin")
if result:
print(f"Token: {result['token'][:30]}...")
print(f"Cookie: {result['cookie']}")Multi-threaded
python
import requests
from concurrent.futures import ThreadPoolExecutor
API_KEY = "cst_your_key_here"
BASE = "https://central.haus"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
def worker(target):
r = requests.post(
f"{BASE}/token",
json={"target": target},
headers=HEADERS,
timeout=65,
)
if r.status_code == 200:
data = r.json()
print(f"[{target}] Token #{data['id']}")
return data
return None
# 10 concurrent requests
with ThreadPoolExecutor(max_workers=10) as pool:
futures = [pool.submit(worker, "EpicLogin") for _ in range(10)]
results = [f.result() for f in futures]
print(f"Got {sum(1 for r in results if r)} tokens")Balance Check
python
r = requests.get(f"{BASE}/balance", headers=HEADERS)
balance = r.json()["balance"]
print(f"Balance: ${balance}")