{"openapi":"3.1.0","info":{"title":"feezy API","version":"1.0.0","description":"Resize, optimize and convert images with a single GET request. No keys, no SDK. The first request generates the image; every request after is served from cache."},"servers":[{"url":"https://feezy.eu"}],"tags":[{"name":"Images","description":"Resize, crop and convert images on the fly."}],"paths":{"/api/v1/images/{urlHash}/{width}/{height}/{name}.{extension}":{"get":{"operationId":"getImage","tags":["Images"],"summary":"Get a resized image","description":"Returns the source image resized to the given dimensions and converted to the format set by the extension.","parameters":[{"name":"urlHash","in":"path","required":true,"description":"Identifies the source image URL.","schema":{"type":"string"},"example":"9f3ac21"},{"name":"width","in":"path","required":true,"description":"Target width in pixels.","schema":{"type":"integer","minimum":1},"example":800},{"name":"height","in":"path","required":true,"description":"Target height in pixels.","schema":{"type":"integer","minimum":1},"example":600},{"name":"name","in":"path","required":true,"description":"File name of the result.","schema":{"type":"string"},"example":"sneaker"},{"name":"extension","in":"path","required":true,"description":"Output format. The image is converted to this type.","schema":{"type":"string","enum":["jpg","png","webp","gif"]},"example":"webp"},{"name":"fit","in":"query","required":false,"description":"How the image fills the target box.","schema":{"type":"string","enum":["cover","contain","fill"],"default":"cover"},"example":"cover"}],"responses":{"200":{"description":"The resized image.","content":{"image/webp":{},"image/jpeg":{},"image/png":{},"image/gif":{}}},"400":{"description":"Invalid dimensions or unsupported format."},"404":{"description":"Source image not found."}}}}}}