Rate limits are dynamically calculated based on the number of accounts (accounts_count) linked to your API key. Each endpoint enforces limits at three levels:
- Per second
- Per minute
- Per hour
The applied limit is always the minimum between the per-account calculation and a global cap:
Per second: min(1 × accounts_count, global cap)
Per minute: min(2 × accounts_count, global cap)
Per hour: min(30 × accounts_count, global cap)
Endpoints & Limits
Account & Reporting Endpoints
/webservice/v4/account/getAccounts.php /webservice/v4/account/getReporting.php
| Interval | Limit Formula | Max Cap |
| Per second | min(1 × accounts, 10) | 10 req/sec |
| Per minute | min(2 × accounts, 60) | 60 req/min |
| Per hour | min(30 × accounts, 1800) | 1800 req/hour |
Open Positions
/webservice/v4/position/getOpenPositions.php
| Interval | Limit Formula | Max Cap |
| Per second | min(1 × accounts, 5) | 5 req/sec |
| Per minute | min(2 × accounts, 30) | 30 req/min |
| Per hour | min(30 × accounts, 900) | 900 req/hour |
Closed Positions
/webservice/v4/position/getClosedPositions.php
| Interval | Limit Formula | Max Cap |
| Per second | min(1 × accounts, 5) | 5 req/sec |
| Per minute | min(2 × accounts, 15) | 15 req/min |
| Per hour | min(30 × accounts, 300) | 300 req/hour |
Settings
/webservice/v4/account/getSettings.php
| Interval | Max Cap |
| Per second | 1 req/sec |
| Per minute | 60 req/min |
| Per hour | 1200 req/hour |
Other endpoints not listed above
| Interval | Max Cap |
| Per second | 1 req/sec |
| Per minute | 60 req/min |
| Per hour | 3600 req/hour |
Example
If you manage 3 accounts:
- Per second:
min(3, 10) = 3 req/sec - Per minute:
min(6, 60) = 6 req/min - Per hour:
min(90, 1800) = 90 req/hour
If you manage 20 accounts:
- Per second:
min(20, 10) = 10 req/sec (capped) - Per minute:
min(40, 60) = 40 req/min - Per hour:
min(600, 1800) = 600 req/hour