Skip to content
markitel
API · REST + WebSocket

Build on the routing layer.

Authenticated REST endpoints + a real-time WebSocket stream. Integrate Markitel signals into your bot, dashboard, or trading desk.

Authentication

Bearer token, header-based.

All requests include an Authorization: Bearer header. Generate keys from your account's API tab.

GET /api/v1/signals HTTP/1.1
Host: api.markitel.com
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Endpoints

Four to start.

GET/api/v1/signals

Returns a paginated list of active trading signals with confidence scores, entry/exit levels, and source-chain summaries.

{
  "data": [
    {
      "id": "sig-001",
      "asset": "EURUSD",
      "direction": "LONG",
      "confidence": 85,
      "entryPriceLow": 1.0820,
      "entryPriceHigh": 1.0840,
      "stopLoss": 1.0780,
      "takeProfit1": 1.0900,
      "takeProfit2": 1.0980,
      "status": "ACTIVE",
      "publishedAt": "2026-03-23T10:30:00Z",
      "sourceCount": 5
    }
  ],
  "meta": { "page": 1, "total": 47 }
}
GET/api/v1/signals/:id

Returns full signal details including the complete source chain, analysis text, and historical performance for the asset.

GET/api/v1/news

Returns the latest market news with AI-generated summaries and sentiment scores.

GET/api/v1/calendar

Returns upcoming and recent economic calendar events with impact ratings, forecasts, and actual values.

WebSocket stream

Real-time push.

Subscribe to live signal events the moment they're published. One connection per key; reconnect logic recommended.

// WebSocket endpoint
wss://api.markitel.com/v1/stream

// Message format
{
  "type": "signal.new",
  "data": {
    "id": "sig-042",
    "asset": "XAUUSD",
    "direction": "LONG",
    "confidence": 92
  }
}
Code samples

Two languages, copy-paste ready.

JavaScript · fetch

const r = await fetch(
  "https://api.markitel.com/api/v1/signals",
  { headers: { Authorization: "Bearer YOUR_API_KEY" } }
);
const { data: signals } = await r.json();
console.log(`${signals.length} active signals`);

Python · requests

import requests

r = requests.get(
    "https://api.markitel.com/api/v1/signals",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
)
signals = r.json()["data"]
print(f"{len(signals)} active signals")
Rate limits

Per API key, per tier.

TierRESTWebSocket
Starter10 / min
Pro100 / min
Elite1,000 / min✓ priority

API access requires Pro or Elite.

Upgrade your plan to start integrating Markitel signals into your tools.

View plans