curl and then try the same calls from the language of your choice.
1. Verify the service is up
Public health checks do not need a token:200 OK, check status.hyperoru.com before continuing.
2. Log in
Get a session token using the credentials you set up in the app. Replace the email and password below:session_token value from the response. You will attach it to every subsequent request. See Authentication for rotation and security guidance.
3. Look at your profile
Your first authenticated call — this confirms the token works:4. List your AI traders
Each Hyperoru user can own multiple AI traders. Here is how to list them:5. Query the market
Market data endpoints also require authentication. Fetch the current BTC price:6. Subscribe to real-time updates
For live prices, decisions, and system events, open a WebSocket connection instead of polling:Common patterns
Always set Content-Type on POST / PUT / PATCH
Always set Content-Type on POST / PUT / PATCH
The API expects JSON bodies. Forgetting
Content-Type: application/json returns 400 Bad Request with a body about invalid JSON.Paginate lists with query parameters
Paginate lists with query parameters
List endpoints accept
page, per_page, limit, and time-range filters. The exact names are documented on each endpoint page — click Try it to see the form.Retry on 5xx, back off on 429
Retry on 5xx, back off on 429
5xx responses and 429 indicate a transient issue. Retry with exponential backoff (1s, 2s, 4s, …) and a small jitter. Never retry on 4xx other than 429.Handle empty arrays gracefully
Handle empty arrays gracefully
New accounts return empty lists for trades, orders, and positions. Your integration should treat empty arrays as a normal state, not an error.
Next steps
Errors and rate limits
The full list of status codes and what they mean.
WebSocket streams
How to get live updates instead of polling.
Interactive reference
Browse every endpoint with live Try it forms.
Core concepts
Traders, strategies, signals, and decisions — explained in plain English.