WebAPI v1 (legacy)
v1 is the original WebAPI surface, and it keeps running exactly as it always has — there is no deadline attached to it. Whether it's still the right one to build against depends on the platform:
Authentication
Same OAuth2 Client Credentials flow as v2 — see Authorization. The client id/secret you create in Toolbox works against both versions; only the base path and response shape differ.
REST
Rooted at https://cloud.mywebapi.com, no version segment in the path. Every request carries the bearer token in the Authorization header; methods that target a specific server take the trade platform id in the path.
curl https://cloud.mywebapi.com/api/MT4/{tradePlatform}/UserRecordGet/{login} \
-H "Authorization: Bearer $ACCESS_TOKEN"
The full v1 method catalogue — with request/response schemas and a "try it" console — lives in the v1 Swagger reference.
Realtime
v1 realtime uses SignalR over Web Sockets (with Long Polling and other transports as fallback), on the v1 hubs. Connect and provide the bearer token via accessTokenFactory:
const connection = new signalR.HubConnectionBuilder()
.withUrl('https://cloud.mywebapi.com/hubs/mt4/v1', {
accessTokenFactory: () => access_token,
})
.build()
await connection.start()
// subscribe to a symbol, then receive ticks as they happen
await connection.invoke('SubscribeToTicks', tradePlatform, 'EURUSD')
connection.on('onTick', (tp, tick) => console.log(tick))
Typed interface
Download the up-to-date hub/method/event definitions as CPlugin.WebAPI.Realtime.ts.
SDKs and v1
The published SDKs (TypeScript, .NET, PowerShell) target v2 only — every generated call goes to a /api/v2/… path. There is no SDK support for v1; direct HTTP (above) or your own client generated from the v1 Swagger spec is the way to call it.
See WebAPI for environments, pricing, firewall whitelisting and the cloud routing notes — those apply the same way regardless of API version.

