API Endpoint
Important notes (architecture & parameters)
Three-layer architecture
Server ↔ SDK ↔ Robot/Indicator. Server–SDK: HTTP/JSON with JWT over SDK_API_BASE_URL. SDK–Robot: MQL5 callbacks. Robots use IRobotConfig; Indicators do not.
Endpoints (POST, JSON):
/robot/start — API key in body; special Authorization
/robot/heartbeat — Bearer JWT; sequence, timestamp, dynamic_data
/robot/refresh — Bearer + jwt_token in body
/robot/end — Bearer; session_id, reason, optional final_stats
Parameter separation
robot_version_uuid / indicator_version_uuid: programmer, constructor. IRobotConfig: programmer, Robots only. api_key: customer input. magic_number: customer input, Robots only. base_url: SDK constant. Indicators omit magic_number and session_symbols on start; no config/symbol change requests.
Robot vs Indicator
Start: Robots send magic_number and session_symbols; Indicators omit both, expert_magic 0. Heartbeat: Robots send config_change_results and symbols_change_results when pending; Indicators omit. Termination: Robots call ExpertRemove(); Indicators stop timer and alert user.