{"openapi":"3.1.0","info":{"title":"ETFYield Lab REST API","version":"1.0.0","description":"Read-only HTTP JSON endpoints published by ETFYield Lab for searching imported financial records. Results are not live or independently verified.","termsOfService":"https://etfyieldlab.com/about","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"}},"servers":[{"url":"https://etfyieldlab.com","description":"ETFYield Lab Production API"}],"paths":{"/api/v1/verify/license":{"get":{"operationId":"verifyLicenseNumber","summary":"Search imported licence records","description":"Search imported records by number. A match does not establish current authorisation or an approved website.","parameters":[{"name":"number","in":"query","required":true,"schema":{"type":"string"},"description":"Certificate, FRN, AFSL, or MSB number"},{"name":"regulator","in":"query","required":false,"schema":{"type":"string"},"description":"Optional regulator short code (e.g. FCA, FinCEN, ASIC)"}],"responses":{"200":{"description":"Structured licence match verdict with SHA-256 integrity hash","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Missing required query parameter number"}}}},"/api/v1/verify/domain":{"get":{"operationId":"verifyBrokerDomain","summary":"Search imported website records","description":"Search for exact hostname matches. Results do not establish ownership, authorisation or safety.","parameters":[{"name":"host","in":"query","required":true,"schema":{"type":"string"},"description":"Domain or URL to verify"}],"responses":{"200":{"description":"Recorded exact-host matches, with no live safety verdict","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Missing required query parameter host"}}}},"/api/v1/brokers/{slug}":{"get":{"operationId":"getInstitutionScorecard","summary":"Retrieve broker or digital asset regulatory dossier","description":"Retrieve imported source scores and licence records; none are independently verified.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"description":"Institution slug"}],"responses":{"200":{"description":"Imported source scores and licence records","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Institution outside this publication coverage slice"}}}},"/api/v1/markets/{provider}/{symbol}":{"get":{"operationId":"getMarketContractSpecification","summary":"Retrieve exchange contract specification & liquidity audit","description":"Retrieve structured exchange contract specifications, tick/lot precision, margin parameters, and liquidity audit telemetry for a provider and instrument symbol.","parameters":[{"name":"provider","in":"path","required":true,"schema":{"type":"string"},"description":"Exchange or liquidity provider slug (e.g. binance, okx, bybit)"},{"name":"symbol","in":"path","required":true,"schema":{"type":"string"},"description":"Market instrument or contract symbol (e.g. BTCUSDT, ETH-USDT-SWAP)"}],"responses":{"200":{"description":"Structured exchange contract specification and liquidity audit payload","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Market provider or contract symbol not found"}}}},"/api/v1/compare/{pair}":{"get":{"operationId":"getEntityComparisonMatrix","summary":"Compare imported institution records","description":"Compare imported source fields. Results do not establish current authorisation, safety or a regulatory winner.","parameters":[{"name":"pair","in":"path","required":true,"schema":{"type":"string"},"description":"Comparison pair slug formatted as {slugA}-vs-{slugB}"}],"responses":{"200":{"description":"Imported records and source-score comparison where available","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"One or both entities in comparison pair not found"}}}},"/api/v1/rankings/{facet}":{"get":{"operationId":"getFacetedRegulatoryLeaderboard","summary":"Retrieve faceted regulatory leaderboard","description":"Retrieve ranked institutional leaderboard filtered by regulatory jurisdiction, licence tier, or asset class facet.","parameters":[{"name":"facet","in":"path","required":true,"schema":{"type":"string"},"description":"Leaderboard facet slug (e.g. overall, fca, asic, tier-1, low-risk)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Optional maximum number of ranked entities to return"}],"responses":{"200":{"description":"Structured faceted regulatory leaderboard with ranked institutions and 6D scores","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Unknown ranking facet"}}}},"/api/badge/{slug}":{"get":{"operationId":"getRegulatoryTrustScoreBadge","summary":"Render SVG source-record badge","description":"Render an embeddable SVG identifying an imported record, without asserting verification.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"description":"Institution slug"}],"responses":{"200":{"description":"Embeddable SVG source-record badge","content":{"image/svg+xml":{"schema":{"type":"string"}}}},"404":{"description":"Institution not found"}}}}}}