{"openapi":"3.1.0","info":{"title":"FundedSpend UK API","version":"0.2.0-beta","description":"Controlled-beta access to licensed UK funding awards and qualitative, evidence-labelled supplier categories. Signals are not confirmed tenders, budgets, buying dates or purchase probabilities."},"servers":[{"url":"https://fundedspend.co.uk"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"FundedSpend API key"}},"schemas":{"EvidenceLevel":{"type":"string","enum":["confirmed-procurement","source-mentioned","possible"]},"Signal":{"type":"object","required":["category","supplierType","evidenceLevel","evidence","ruleVersion","explanation"],"properties":{"category":{"type":"string"},"supplierType":{"type":"string"},"evidenceLevel":{"$ref":"#/components/schemas/EvidenceLevel"},"evidenceLevelLabel":{"type":"string"},"evidence":{"type":"object","properties":{"excerpt":{"type":"string"},"url":{"type":"string","format":"uri"}}},"ruleVersion":{"type":"string"},"explanation":{"type":"string"}}},"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}}}}}},"paths":{"/api/v1/projects":{"get":{"summary":"Search funded projects","description":"Search is tokenised and pages through published records from active, approved sources.","parameters":[{"name":"q","in":"query","schema":{"type":"string","maxLength":200}},{"name":"sector","in":"query","schema":{"type":"string"}},{"name":"region","in":"query","schema":{"type":"string"}},{"name":"evidence","in":"query","schema":{"$ref":"#/components/schemas/EvidenceLevel"}},{"name":"min_amount","in":"query","schema":{"type":"number","minimum":0}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":50,"default":20}},{"name":"offset","in":"query","schema":{"type":"integer","minimum":0,"maximum":50000,"default":0}}],"responses":{"200":{"description":"A page of award records and evidence-labelled supplier categories"},"400":{"description":"Invalid query"},"401":{"description":"Invalid API key"},"402":{"description":"Paid API access required"}}}},"/api/v1/projects/{slug}":{"get":{"summary":"Get one funded project","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Award record with source provenance and evidence-labelled supplier categories"},"404":{"description":"Not found"}}}},"/api/v1/match":{"post":{"summary":"Match a supplier profile to funded projects","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"categories":{"type":"array","items":{"type":"string"}},"sectors":{"type":"array","items":{"type":"string"}},"regions":{"type":"array","items":{"type":"string"}}}}}}},"responses":{"200":{"description":"Ranked qualitative matches"}}}},"/api/mcp":{"post":{"summary":"Stateless MCP JSON-RPC endpoint","responses":{"200":{"description":"MCP response"}}}},"/api/x402/v1/project-brief":{"get":{"summary":"Controlled-beta pay-per-request project brief","description":"Not generally available until live settlement and metering controls pass production review.","security":[],"responses":{"200":{"description":"Paid project brief when the controlled beta is enabled"},"402":{"description":"x402 payment requirements when the controlled beta is enabled"},"503":{"description":"x402 beta is not enabled"}}}},"/api/x402/v1/signals":{"get":{"summary":"Controlled-beta pay-per-request signal search","description":"Uses the same qualitative evidence contract as the REST API and is not generally available.","security":[],"parameters":[{"name":"q","in":"query","schema":{"type":"string"}},{"name":"sector","in":"query","schema":{"type":"string"}},{"name":"region","in":"query","schema":{"type":"string"}},{"name":"evidence","in":"query","schema":{"$ref":"#/components/schemas/EvidenceLevel"}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":30}},{"name":"offset","in":"query","schema":{"type":"integer","minimum":0,"maximum":50000}}],"responses":{"200":{"description":"A paid page when the controlled beta is enabled"},"402":{"description":"x402 payment requirements when the controlled beta is enabled"},"503":{"description":"x402 beta is not enabled"}}}}}}