{"openapi":"3.1.0","info":{"title":"FileSignature.org API","version":"1.0.0","description":"Retrieve magic bytes, MIME types, risk levels, and identify header bytes across 871+ file formats.","termsOfService":"https://filesignature.org/api"},"servers":[{"url":"https://filesignature.org"}],"tags":[{"name":"Signatures","description":"File signature records and discovery endpoints"}],"paths":{"/api/v1/{extension}":{"get":{"tags":["Signatures"],"summary":"Get file signature data by extension","parameters":[{"name":"extension","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9]{1,10}$"},"example":"pdf"}],"responses":{"200":{"description":"Signature record","content":{"application/json":{"example":{"success":true,"data":{"ext":"pdf","name":"Adobe Portable Document Format","mime":["application/pdf"],"risk_level":"Safe"}}}}},"404":{"description":"Extension not found"}}}},"/api/v1/identify":{"get":{"tags":["Signatures"],"summary":"Identify matching file formats from header bytes","parameters":[{"name":"hex","in":"query","required":true,"schema":{"type":"string","maxLength":16384},"example":"25 50 44 46 2D"}],"responses":{"200":{"description":"Matching signature candidates","content":{"application/json":{"example":{"success":true,"data":{"query":{"hex":"25 50 44 46 2D","bytes":5},"matches":[{"ext":"pdf","name":"Adobe Portable Document Format","mime":["application/pdf"],"risk_level":"Safe","signature":{"hex":"25 50 44 46 2D","offset":0},"url":"https://filesignature.org/pdf"}]}}}}},"400":{"description":"Invalid hex input"}}}},"/api/v1/suggest":{"get":{"tags":["Signatures"],"summary":"Get extension suggestions for autocomplete","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","maxLength":100},"example":"portable document"}],"responses":{"200":{"description":"Extension suggestions","content":{"application/json":{"example":{"suggestions":["pdf"]}}}}}}}},"components":{"schemas":{"IdentifyResponse":{"type":"object","properties":{"success":{"const":true},"data":{"type":"object","properties":{"query":{"type":"object","properties":{"hex":{"type":"string"},"bytes":{"type":"integer"}}},"matches":{"type":"array","items":{"type":"object","properties":{"ext":{"type":"string"},"name":{"type":"string"},"mime":{"type":"array","items":{"type":"string"}},"risk_level":{"type":"string","enum":["Safe","Medium","High"]},"signature":{"type":"object","properties":{"hex":{"type":"string"},"offset":{"type":"integer"},"endianness":{"type":"string","enum":["big","little"]}},"required":["hex","offset"]},"url":{"type":"string","format":"uri"}},"required":["ext","name","mime","risk_level","signature","url"]}}},"required":["query","matches"]}},"required":["success","data"]}}},"x-generated-at":"2026-05-31"}