{"openapi":"3.1.0","info":{"title":"macX public performance API","version":"1","description":"Free read-only evidence access. Cite sources; never present an estimate as a target-Mac measurement."},"servers":[{"url":"https://www.macx.com"}],"paths":{"/api/v1/games":{"get":{"operationId":"findGames","summary":"Find native Mac game editions","parameters":[{"name":"q","in":"query","required":false,"description":"Game title, developer or publisher","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"1-based page, 50 entries per page","schema":{"type":"string"}}],"responses":{"200":{"description":"Public result","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"integer"},"page":{"type":"integer"},"pages":{"type":"integer"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"slug":{"type":"string"},"title":{"type":"string"},"url":{"type":"string"},"native_storefronts":{"type":"array","items":{"type":"string"}}}}}}}}}},"400":{"description":"Invalid query"},"404":{"description":"Unknown game or configuration"},"429":{"description":"60 requests per minute exceeded. Retry-After header gives seconds to wait."}}}},"/api/v1/configurations":{"get":{"operationId":"findMacConfigurations","summary":"Find exact public Mac hardware configurations","parameters":[{"name":"q","in":"query","required":false,"description":"Search label, for example M3","schema":{"type":"string"}},{"name":"page","in":"query","required":false,"description":"1-based page, 50 entries per page","schema":{"type":"string"}}],"responses":{"200":{"description":"Public result","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"integer"},"page":{"type":"integer"},"pages":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Mac"}}}}}}},"400":{"description":"Invalid query"},"404":{"description":"Unknown game or configuration"},"429":{"description":"60 requests per minute exceeded. Retry-After header gives seconds to wait."}}}},"/api/v1/answer":{"get":{"operationId":"getMacGamePerformance","summary":"Get sourced measured performance, a labeled estimate, or insufficient evidence","parameters":[{"name":"game","in":"query","required":true,"description":"Exact slug from findGames","schema":{"type":"string"}},{"name":"config","in":"query","required":true,"description":"Exact configuration ID from findMacConfigurations","schema":{"type":"string"}}],"responses":{"200":{"description":"Public result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Answer"}}}},"400":{"description":"Invalid query"},"404":{"description":"Unknown game or configuration"},"429":{"description":"60 requests per minute exceeded. Retry-After header gives seconds to wait."}}}},"/api/v1/methodology":{"get":{"operationId":"getPerformanceMethodology","summary":"Read evidence and estimation rules","responses":{"200":{"description":"Public result","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid query"},"404":{"description":"Unknown game or configuration"},"429":{"description":"60 requests per minute exceeded. Retry-After header gives seconds to wait."}}}}},"components":{"schemas":{"Mac":{"type":"object","required":["id","family","chip","cpu_cores","gpu_cores","memory"],"properties":{"id":{"type":"string"},"label":{"type":"string"},"family":{"type":"string"},"size":{"type":"string"},"year":{"type":"integer"},"chip":{"type":"string"},"cpu_cores":{"type":"integer"},"gpu_cores":{"type":"integer"},"memory":{"type":"integer"}}},"Answer":{"type":"object","required":["status","summary","target","evidence","warnings","canonical_url"],"properties":{"api_version":{"type":"string"},"methodology_version":{"type":"string"},"generated_at":{"type":"string"},"canonical_url":{"type":"string"},"status":{"enum":["measured","estimated","insufficient_evidence"]},"confidence":{"enum":["reported_measurements","low","none"]},"summary":{"type":"string"},"target":{"$ref":"#/components/schemas/Mac"},"game":{"type":"object"},"rating":{"type":["object","null"],"properties":{"tier":{"type":"string"},"label":{"type":"string"},"basis":{"type":"string"},"estimated":{"type":"boolean"},"measured_target_fps":{"type":["number","null"]},"source_median_fps":{"type":["number","null"]},"representative_evidence_id":{"type":"string"}}},"evidence":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"kind":{"enum":["community_report","reviewed_external"]},"hardware":{"$ref":"#/components/schemas/Mac"},"measurement":{"type":"object"},"citation_url":{"type":"string"},"source_url":{"type":["string","null"]},"source_locator":{"type":"string"}}}},"coverage":{"type":"object"},"warnings":{"type":"array","items":{"type":"string"}}}}}}}