{"openapi":"3.1.0","info":{"title":"QR Code API","description":"Generate PNG or SVG QR codes from text and URLs.","version":"1.0.0"},"paths":{"/qr":{"get":{"tags":["QR codes"],"summary":"Get Qr","description":"Generate a QR code using query-string parameters.","operationId":"get_qr_qr_get","parameters":[{"name":"data","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":2000,"title":"Data"}},{"name":"format","in":"query","required":false,"schema":{"enum":["png","svg"],"type":"string","default":"png","title":"Format"}},{"name":"scale","in":"query","required":false,"schema":{"type":"integer","maximum":20,"minimum":1,"default":6,"title":"Scale"}},{"name":"border","in":"query","required":false,"schema":{"type":"integer","maximum":16,"minimum":0,"default":4,"title":"Border"}},{"name":"dark","in":"query","required":false,"schema":{"type":"string","pattern":"^[0-9a-fA-F]{6}$","default":"000000","title":"Dark"}},{"name":"light","in":"query","required":false,"schema":{"type":"string","pattern":"^[0-9a-fA-F]{6}$","default":"ffffff","title":"Light"}}],"responses":{"200":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["QR codes"],"summary":"Post Qr","description":"Generate a QR code using a JSON request body.","operationId":"post_qr_qr_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QRRequest"}}}},"responses":{"200":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/health":{"get":{"tags":["Service"],"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Health Get"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"QRRequest":{"properties":{"data":{"type":"string","maxLength":2000,"minLength":1,"title":"Data"},"format":{"type":"string","enum":["png","svg"],"title":"Format","default":"png"},"scale":{"type":"integer","maximum":20.0,"minimum":1.0,"title":"Scale","default":6},"border":{"type":"integer","maximum":16.0,"minimum":0.0,"title":"Border","default":4},"dark":{"type":"string","pattern":"^[0-9a-fA-F]{6}$","title":"Dark","default":"000000"},"light":{"type":"string","pattern":"^[0-9a-fA-F]{6}$","title":"Light","default":"ffffff"}},"additionalProperties":false,"type":"object","required":["data"],"title":"QRRequest","description":"Validated JSON payload for QR generation."},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}