Limits and pagination
Request rate limits and their headers, how lists are paged, how many accounts each plan connects, and the limits of what the copier copies.
Rate limits
| Limit | Applies to |
|---|---|
| 120 requests per minute | Each API key, all endpoints together |
| 5 per minute | Connecting, reconnecting and disconnecting accounts, per user across all your keys. Each of these starts or stops a MetaTrader terminal |
| 120 messages per minute | Each API key on the MCP server. A tool call also counts once against the key's 120 requests |
Every response has two headers that tell you where you stand:
RateLimit-Policy: 120;w=60
RateLimit: limit=120, remaining=117, reset=42RateLimit-Policyis the limit and its window in seconds.RateLimitis the limit, the requests left in the current window, and the seconds until the window has room again.
When you go over a limit, the request fails with 429 rate_limited and a Retry-After header. Wait that many seconds before you try again.
Pagination
List endpoints return their items in pages, all in the same format:
{
"object": "list",
"data": [],
"has_more": false,
"next_cursor": null
}| Field | Description |
|---|---|
data | The items on this page |
has_more | Whether there is another page |
next_cursor | Pass it as cursor to get the next page; null on the last one |
Two query parameters control the paging:
| Parameter | Description |
|---|---|
limit | Items per page, 1 to 100. Default 50 |
cursor | The next_cursor of the previous page. A value the API didn't return fails with 400 invalid_cursor |
Each list has a fixed order:
| List | Order |
|---|---|
GET /v1/accounts | Newest first |
GET /v1/copiers | Oldest first |
GET /v1/copiers/{copier_id}/followers | Oldest first |
GET /v1/copiers/{copier_id}/events | Newest first |
curl "https://api.algotradertools.com/v1/copiers?limit=100" \
-H "Authorization: Bearer $ATT_API_KEY"Account slots
Your plan decides how many accounts can be connected at the same time. Masters and followers each take a slot.
| Plan | Accounts |
|---|---|
| Starter | 2 |
| Trader | 5 |
| Pro | 10 |
| Desk | 20 |
Connecting or reconnecting an account when all of your plan's slots are in use fails with 403 plan_limit_reached. An account whose terminal was released after a lapsed subscription doesn't take a slot until it is reconnected.
Retention
Copy events are kept for 90 days. Removing a follower deletes its events, and deleting a copier deletes all of its events.
Copying limits
- Hedging accounts only. MT5 netting accounts can't be masters or followers. All MT4 accounts are hedging accounts.
- A master or a follower. An account can't be both, and masters are your own accounts.
- Pending orders. By default, a pending order is copied as a market order when it fills. With
copy_pendingon the follower, pending orders are placed on the follower too. Stop-limit orders to MT4 followers and to followers withreverseare still copied only when they fill. See Pending orders. - Currencies.
balance_ratioandequity_ratiosizing compare the two accounts' figures as they are, without converting between currencies. - Copy time is mostly the follower broker's own execution, about 50 to 300 ms.