FX-Brokers.co.uk
Menu
Trusted by traders29 brokers tested2,470+ pages indexedIndependent since 2024Updated daily
v1 Stable

FX-Brokers.eu Public API Documentation

Free JSON endpoints for European forex brokers, prop trading firms, and tradable instruments. Use the data to build dashboards, comparison tools, or research projects — attribution appreciated.

Getting Started

The API is hosted at https://fx-brokers.eu/api/v1. All endpoints return JSON, require no authentication, and include permissive CORS headers so you can call them directly from browser code.

Authentication

None — the API is open.

Rate Limit

60 requests per minute per IP. Response is cached at the edge for 1 hour.

CORS

Access-Control-Allow-Origin: *

Cache

public, s-maxage=3600

Free to use with attribution. If you use this data on a public site or product, please link back to fx-brokers.eu. For commercial licensing or bulk exports, reach out via our about page.

Endpoints

All responses are wrapped in a standard { data, meta } envelope.

GET/api/v1/brokers

Returns the full list of reviewed EU-focused forex and CFD brokers with public-safe fields (affiliate URLs are stripped).

Query parameters

  • limitMaximum number of brokers to return. Default 100, max 500.
  • categoryFilter by category slug (e.g. ecn, low-spread, beginners, scalping, mt4, mt5, day-trading).
  • minScoreOnly return brokers whose overall score is at least this value (e.g. 9).
cURL
curl "https://fx-brokers.eu/api/v1/brokers?limit=5&minScore=9"
fetch (JavaScript)
const res = await fetch('https://fx-brokers.eu/api/v1/brokers?limit=5&minScore=9');
const { data, meta } = await res.json();
console.log(data[0].name, data[0].scores.overall);

Example response

JSON
{
  "data": [
    {
      "name": "Exness",
      "slug": "exness",
      "founded": 2007,
      "hq": "Sydney, Australia",
      "scores": { "overall": 9.4, "fees": 9.6, "execution": 9.7, ... },
      "regulators": [
        { "name": "CySEC", "country": "Cyprus", "license": "362/18" }
      ],
      "trading": {
        "minDeposit": 200,
        "spreadEURUSD": "0.0 pips (Raw), 0.6 pips (Standard)",
        ...
      },
      "platforms": ["MetaTrader 4", "MetaTrader 5", "cTrader", "TradingView"],
      "url": "https://fx-brokers.eu/brokers/exness"
    }
  ],
  "meta": {
    "total": 25,
    "returned": 5,
    "limit": 5,
    "filters": { "category": null, "minScore": 9 },
    "generatedAt": "2026-04-11T12:00:00.000Z"
  }
}
GET/api/v1/brokers/{slug}

Returns a single broker by its slug. Includes the full long-form review text.

cURL
curl "https://fx-brokers.eu/api/v1/brokers/exness"
fetch (JavaScript)
const res = await fetch('https://fx-brokers.eu/api/v1/brokers/exness');
if (res.ok) {
  const { data } = await res.json();
  console.log(data.name, data.fullReview.length + ' chars');
}

Example response

JSON
{
  "data": {
    "name": "Exness",
    "slug": "exness",
    "scores": { "overall": 9.4, ... },
    "regulators": [...],
    "trading": {...},
    "fullReview": "Exness has cemented its position..."
  },
  "meta": { "generatedAt": "2026-04-11T12:00:00.000Z" }
}
GET/api/v1/instruments

Returns all tradable instruments known to FX-Brokers.eu across forex, crypto, commodities, indices, and stocks.

Query parameters

  • categoryFilter by one of: forex, crypto, commodities, indices, stocks.
  • limitMaximum number of instruments to return. Default 200, max 500.
cURL
curl "https://fx-brokers.eu/api/v1/instruments?category=forex&limit=10"
fetch (JavaScript)
const res = await fetch('https://fx-brokers.eu/api/v1/instruments?category=forex&limit=10');
const { data } = await res.json();
data.forEach(i => console.log(i.symbol, i.name));

Example response

JSON
{
  "data": [
    {
      "symbol": "EUR/USD",
      "slug": "eurusd",
      "name": "Euro / US Dollar",
      "category": "forex",
      "tvSymbol": "FX:EURUSD",
      "description": "The most traded currency pair in the world...",
      "url": "https://fx-brokers.eu/markets/eurusd"
    }
  ],
  "meta": {
    "total": 60,
    "returned": 10,
    "limit": 10,
    "filters": { "category": "forex" },
    "generatedAt": "2026-04-11T12:00:00.000Z"
  }
}
GET/api/v1/propfirms

Returns the full list of reviewed prop trading firms, ranked by overall score.

Query parameters

  • limitMaximum number of prop firms to return. Default 100, max 500.
cURL
curl "https://fx-brokers.eu/api/v1/propfirms?limit=5"
fetch (JavaScript)
const res = await fetch('https://fx-brokers.eu/api/v1/propfirms?limit=5');
const { data } = await res.json();
console.log(data.map(f => f.name));

Example response

JSON
{
  "data": [
    {
      "name": "FTMO",
      "slug": "ftmo",
      "founded": 2015,
      "hq": "Prague, Czech Republic",
      "score": 9.3,
      "scores": { "overall": 9.3, "payouts": 9.5, ... },
      "challengeTypes": [...],
      "platforms": ["MetaTrader 4", "MetaTrader 5", "cTrader"],
      "url": "https://fx-brokers.eu/prop-firms/ftmo"
    }
  ],
  "meta": { "total": 20, "returned": 5, "limit": 5, ... }
}

Status Codes

  • 200 — success, JSON body returned
  • 404 — resource not found (e.g. unknown broker slug)
  • 429 — rate limit exceeded (60 req/min/IP)
  • 500 — internal error, try again shortly

Versioning & Stability

This is v1. Breaking changes will only be shipped under a new versioned prefix (e.g. /api/v2/brokers). Additive changes (new fields) may land in v1 without notice — clients should ignore unknown fields.