Prerequisites
- A Arbitrage developer account. Register at app.revalonlabs.xyz or via
POST /api/v1/auth/register. - A valid session JWT (email/password login) to authenticate Console API calls.
Create an API key
1
Open the Developer Console
Go to app.revalonlabs.xyz and sign in with your developer account. Navigate to Developer Console → API Keys and click New API Key.Fill in a descriptive name (e.g.
Production Trading Bot), choose the permissions you need, and set a rate limit. Then click Create.2
Copy and store the key immediately
The Console shows the full key — prefixed with
pdx_ — exactly once. Copy it into a secrets manager, environment variable, or vault before closing the dialog.Create a key via the API
You can also create keys programmatically using your session JWT. Endpoint:POST /api/v1/console/keys
Request body:
Available permissions:
read:arbitrage— access arbitrage opportunity endpointsread:markets— access market browsing and discovery endpointsread:questions— access canonical question endpoints
key field in data is the value you’ll use in all subsequent requests. The key_prefix (first 12 characters) is what Predexy stores and displays in listings for identification.
Use your API key
Pass the key in theX-API-Key header on every request:
API key endpoints are separate from session-authenticated endpoints. The external arbitrage endpoint is
GET /api/v1/external/arbitrage/opportunities — not the session-only /api/v1/arbitrage/opportunities.List your API keys
Retrieve all keys on your account. The full key is never included — only thekey_prefix is returned.
Endpoint: GET /api/v1/console/keys
APIKeyInfo object includes:
Revoke a key
Revoking a key is immediate and permanent. Any in-flight requests using the key will receive a401 INVALID_API_KEY response. Revoked keys cannot be reactivated.
Endpoint: DELETE /api/v1/console/keys/{id}
Rate limits
Your key’s rate limit (default 60 req/min, maximum 10,000 req/min) is enforced per rolling window. Every response includes these headers:
When you exceed the limit, the API returns
429 RATE_LIMITED. Back off and retry after the X-RateLimit-Reset timestamp.