Trade Manager API
The Trade Manager API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.
Use our API to programmatically access your trading data, manage recorders, and retrieve analytics.
Base URL
https://developers.trademanagergroup.netAuthentication
Security Notice: API keys are not meant to be published within client-side applications. They should always be utilized within server-side applications.
The Trade Manager API uses API keys to authenticate requests. You can view and manage your API keys in the Developer Dashboard.
Your API keys carry many privileges, so be sure to keep them secure! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
Authentication to the API is performed via Bearer token. Provide your API key in the Authorization header.
Authorization Header
Authorization: Bearer tmdev_live_your_api_key_hereAll API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.
Rate Limiting
The API implements dynamic rate limiting that automatically adjusts based on your account age and usage patterns. All API requests are subject to rate limits to ensure fair usage and system stability.
Rate Limit Tiers
🥉 Bronze - 30 req/min
New users (0-30 days)
🥈 Silver - 60 req/min
Established users (31-90 days) or high usage (>200 req/day)
🥇 Gold - 120 req/min
Mature users (91-180 days) or high usage (>500 req/day)
💎 Platinum - 300 req/min
Veteran users (180+ days) or very high usage (>1000 req/day)
⚙️ Custom - Variable
Admin-configured custom limits for enterprise users
Rate Limit Headers
Every API response includes headers that provide information about your current rate limit status:
Handling Rate Limits
When you exceed your rate limit, the API will return a 429 Too Many Requests response:
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 2026-01-02T12:35:00.000Z
X-RateLimit-Tier: gold
Retry-After: 45
{
"error": "Rate limit exceeded",
"retryAfter": 45,
"resetAt": "2026-01-02T12:35:00.000Z",
"limit": 120,
"tier": "gold"
}Best Practices
- Check the X-RateLimit-Remaining header to track your usage
- Implement exponential backoff when receiving 429 responses
- Respect the Retry-After header value
- Cache responses when possible to reduce API calls
- Use webhooks instead of polling for real-time updates
Automatic Tier Upgrades
Your rate limit tier automatically increases as your account ages and your usage grows. High-volume users can be upgraded to higher tiers regardless of account age. Use the GET /api/v1/me/rate-limit endpoint to check your current tier and see when you might be eligible for an upgrade.
Errors
Trade Manager uses conventional HTTP response codes to indicate the success or failure of an API request.
HTTP Status Code Summary
200 - OK
Everything worked as expected.
201 - Created
Resource was successfully created.
400 - Bad Request
The request was unacceptable, often due to missing a required parameter.
401 - Unauthorized
No valid API key provided.
404 - Not Found
The requested resource doesn't exist.
500 - Server Error
Something went wrong on our end.
Users
The Users API allows you to retrieve user information and access public recorders from other users.
Get Current User
Returns the authenticated user's information including id, username, Discord information, and account details.
/api/v1/meResponse
Returns the requested resource(s).
Get Your Rate Limit
Returns your current rate limit tier, limits, and usage information. Rate limits automatically increase as your account ages and usage grows. All API responses include rate limit headers: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, and X-RateLimit-Tier.
/api/v1/me/rate-limitResponse
Returns the requested resource(s).
Find User by Username
Finds a user by their username (exact match, case-insensitive). Returns a single user object with id and username.
/api/v1/usersQuery Parameters
usernamestringrequiredThe username to search for (exact match, case-insensitive)
Response
Returns the requested resource(s).
Get User
Returns a specific user's information by their user ID. Only returns id and username.
/api/v1/users/{userId}Path Parameters
userIdstringrequiredThe unique identifier of the user
Response
Returns the requested resource(s).
Get User's Public Recorders
Returns a list of public recorders owned by the specified user. Only public recorders are returned.
/api/v1/users/{userId}/recordersPath Parameters
userIdstringrequiredThe unique identifier of the user
Response
Returns the requested resource(s).
Recorders
Recorders track your trading strategies and their performance. You can view and share recorders.
List Recorders
Returns all recorders owned by the authenticated user, including both private and public recorders.
/api/v1/recordersResponse
Returns the requested resource(s).
Get Recorder
Returns detailed information about a specific recorder owned by the authenticated user.
/api/v1/recorders/{recorderId}Path Parameters
recorderIdstringrequiredThe unique identifier of the recorder
Response
Returns the requested resource(s).
Get Recorder Trades
Returns a paginated list of trades for a specific recorder. Supports pagination via limit and offset query parameters.
/api/v1/recorders/{recorderId}/tradesPath Parameters
recorderIdstringrequiredThe unique identifier of the recorder
Query Parameters
limitintegerdefault: 100Maximum number of trades to return
offsetintegerdefault: 0Number of trades to skip
Response
Returns the requested resource(s).
Get Recorder Sharing
Returns a list of users that a private recorder is shared with. Only works for private recorders.
/api/v1/recorders/{recorderId}/sharingPath Parameters
recorderIdstringrequiredThe unique identifier of the recorder
Response
Returns the requested resource(s).
Traders
Traders represent your connected trading accounts. You can manage traders and retrieve their trade history.
List Traders
Returns all traders (trading accounts) owned by the authenticated user. Traders represent connected trading platforms.
/api/v1/tradersResponse
Returns the requested resource(s).
Get Trader
Returns detailed information about a specific trader (account) owned by the authenticated user.
/api/v1/traders/{traderId}Path Parameters
traderIdstringrequiredThe unique identifier of the trader
Response
Returns the requested resource(s).
Toggle Trader
Enables or disables a trader. When disabled, the trader will not execute trades.
/api/v1/traders/{traderId}/togglePath Parameters
traderIdstringrequiredThe unique identifier of the trader
Request Body Parameters
disablebooleanrequiredSet to true to disable the trader, false to enable
Request Body
{
"disable": false
}Response
Returns the requested resource(s).
Get Trader Trades
Returns a paginated list of trades executed by a specific trader. Supports pagination via limit and offset query parameters.
/api/v1/traders/{traderId}/tradesPath Parameters
traderIdstringrequiredThe unique identifier of the trader
Query Parameters
limitintegerdefault: 100Maximum number of trades to return
offsetintegerdefault: 0Number of trades to skip
Response
Returns the requested resource(s).