{"openapi":"3.0.3","info":{"title":"PropFirmMap Public API","version":"1.0.0","description":"Read-only JSON API for prop trading firm data: 50+ firms with verified profit splits, drawdown rules, payout speed, TrustPilot ratings, active promo codes, and trader tools. Updated daily from primary sources (no fabricated data).","contact":{"url":"https:\/\/propfirmmap.com"},"license":{"name":"Free for public use","url":"https:\/\/propfirmmap.com\/api\/docs"}},"servers":[{"url":"https:\/\/propfirmmap.com","description":"Production"}],"paths":{"\/api\/v1\/firms":{"get":{"summary":"List published prop firms","description":"Returns a paginated list of prop firms ranked by PropFirmMap Score (composite trust + value + speed + flexibility + platforms).","parameters":[{"name":"search","in":"query","schema":{"type":"string"},"description":"Substring match on firm name"},{"name":"asset_type","in":"query","schema":{"type":"string"},"description":"Exact name e.g. \"Forex\", \"Futures\", \"Crypto\""},{"name":"country","in":"query","schema":{"type":"string"}},{"name":"safety_grade","in":"query","schema":{"type":"string","enum":["A+","A","B+","B","C","D","F"]}},{"name":"min_score","in":"query","schema":{"type":"number","format":"float"}},{"name":"sort","in":"query","schema":{"type":"string","enum":["score","name","latest","safety"]}},{"name":"per_page","in":"query","schema":{"type":"integer","maximum":50}},{"name":"page","in":"query","schema":{"type":"integer"}}],"responses":{"200":{"description":"Paginated firm collection"}}}},"\/api\/v1\/firms\/{slug}":{"get":{"summary":"Get full firm detail","description":"Returns full firm record with challenges, active offers, platforms, payment + payout methods, and TrustPilot data.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Firm detail"},"404":{"description":"Firm not found or not published"}}}},"\/api\/v1\/firms\/statistics":{"get":{"summary":"Aggregated firm statistics","description":"Counts by asset type + safety grade, average score, top-5 ranked firms. Cached 15 min.","responses":{"200":{"description":"Statistics payload"}}}},"\/api\/v1\/compare":{"get":{"summary":"Side-by-side compare 2-4 firms","description":"Pass a comma-separated list of slugs. Returns full FirmDetail records in the requested order. Max 4 firms.","parameters":[{"name":"firms","in":"query","required":true,"schema":{"type":"string"},"example":"ftmo,topstep,fundingpips"}],"responses":{"200":{"description":"Comparison payload (FirmDetail[] + meta.matched_count)"},"422":{"description":"Invalid slug list"}}}},"\/api\/v1\/deals":{"get":{"summary":"List active promo codes","description":"All currently-active offers across published firms. Ordered by discount % desc, then by expiry.","parameters":[{"name":"firm","in":"query","schema":{"type":"string"},"description":"Filter to one firm by slug"},{"name":"min_discount","in":"query","schema":{"type":"integer"}},{"name":"expiring_soon","in":"query","schema":{"type":"boolean"},"description":"Only offers expiring in the next 14 days"},{"name":"per_page","in":"query","schema":{"type":"integer","maximum":100}}],"responses":{"200":{"description":"Paginated offer collection"}}}},"\/api\/v1\/tools":{"get":{"summary":"List trader tools","description":"Verified trading tools (journals, charting, screeners) with pricing, features, and TrustPilot data.","parameters":[{"name":"category","in":"query","schema":{"type":"string"},"description":"Filter by category slug"},{"name":"search","in":"query","schema":{"type":"string"}},{"name":"free_only","in":"query","schema":{"type":"boolean"}},{"name":"per_page","in":"query","schema":{"type":"integer","maximum":50}}],"responses":{"200":{"description":"Paginated tool collection"}}}},"\/api\/v1\/tools\/{slug}":{"get":{"summary":"Get tool detail","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Tool detail"},"404":{"description":"Tool not found"}}}},"\/api\/v1\/categories":{"get":{"summary":"List available filter categories","description":"Asset types, countries, platforms, safety grades, and tool categories \u2014 each with firm counts. Cached 15 min.","responses":{"200":{"description":"Categories payload"}}}},"\/mcp":{"post":{"summary":"Model Context Protocol (MCP) endpoint for AI assistants","description":"JSON-RPC 2.0 over Streamable HTTP. Exposes the API as 6 MCP tools: list_firms, get_firm_detail, find_deals, compare_firms, list_tools, get_categories. Use this from Claude integrations, ChatGPT GPTs, or any MCP-compliant client. See \/mcp (GET) for discovery.","requestBody":{"required":true,"content":{"application\/json":{"schema":{"type":"object","required":["jsonrpc","method"],"properties":{"jsonrpc":{"type":"string","enum":["2.0"]},"method":{"type":"string","enum":["initialize","tools\/list","tools\/call","resources\/list","resources\/read","resources\/templates\/list","prompts\/list","prompts\/get","ping"]},"params":{"type":"object"},"id":{"oneOf":[{"type":"string"},{"type":"integer"}]}}}}}},"responses":{"200":{"description":"JSON-RPC 2.0 response"},"204":{"description":"Notification accepted (no id provided)"}}},"get":{"summary":"MCP discovery (server info + tool list)","description":"Lightweight discovery endpoint that returns server metadata and tool catalog without requiring a full JSON-RPC handshake.","responses":{"200":{"description":"Server metadata + tool catalog"}}}}}}