---
title: "Dynamic Asset Transformations"
url: "https://developers.bynder.com/apis/dynamic-asset-transformations-api-1/versions/3eaa3fe1-3c1f-455a-b1ee-e6f314e2e6b2"
---

# Dynamic Asset Transformations

OpenAPI specification document.

```json
{"components":{"securitySchemes":{"OAuth2":{"flows":{"authorizationCode":{"authorizationUrl":"https://{your-auth-url}","scopes":{},"tokenUrl":"https://{your-bynder-domain}/v6/authentication/oauth2/token"},"clientCredentials":{"scopes":{},"tokenUrl":"https://{your-bynder-domain}/v6/authentication/oauth2/token"}},"type":"oauth2"},"permanentToken":{"in":"header","name":"Authorization","type":"apiKey"}}},"info":{"title":"Dynamic Asset Transformations","description":"Transform assets on-the-fly with resizing, cropping, format conversion, and other dynamic transformations.","version":"1.0.0","x-bynder-visibility":"public"},"openapi":"3.1.0","paths":{"/transform/{id}/{name}":{"get":{"description":"Generate a derivative on the fly with a transformation (such as cropping, scaling, filling) applied to it.   More information about this feature can be found in our [Knowledge Base item](https://support.bynder.com/hc/en-us/articles/360018559260-Dynamic-Asset-Transformations-DAT-).\nImage operations can be passed as `io` parameters in the form of `transform:{operation},{param1}:{value1},{param2}:{value2},...`.   It's possible to specify several operations: `?io={operation1}&io={operation2}&...`. The operations will be applied in the same order they are passed in the url.\nThese are the possible image operations and their parameters:\n\n<table>\n<thead>\n<tr><th>Operation</th><th>Parameter</th><th>Possible values</th></tr>\n</thead>\n<tbody>\n<tr><td><code>background</code></td><td>color</td><td>color name (yellow, black, etc.) or hexadecimal (rgb, rrggbb)</td></tr>\n<tr><td><code>crop</code></td><td>width</td><td>integer</td></tr>\n<tr><td></td><td>height</td><td>integer</td></tr>\n<tr><td></td><td>x</td><td>integer</td></tr>\n<tr><td></td><td>y</td><td>integer</td></tr>\n<tr><td></td><td>gravity</td><td>topleft / top / topright / left / center / right / bottomleft / bottom / bottomright</td></tr>\n<tr><td></td><td>shape</td><td>circle / square</td></tr>\n<tr><td></td><td>blur</td><td>integer</td></tr>\n<tr><td></td><td>background</td><td>color name (yellow, black, etc.) or hexadecimal (rgb, rrggbb)</td></tr>\n<tr><td><code>extend</code></td><td>width</td><td>integer</td></tr>\n<tr><td></td><td>height</td><td>integer</td></tr>\n<tr><td></td><td>background</td><td>color name (yellow, black, etc.) or hexadecimal (rgb, rrggbb)</td></tr>\n<tr><td><code>fill</code></td><td>width</td><td></td></tr>\n<tr><td></td><td>height</td><td></td></tr>\n<tr><td></td><td>gravity</td><td></td></tr>\n<tr><td></td><td>aspectratio</td><td>(integer) x (integer)</td></tr>\n<tr><td><code>fit</code></td><td>width</td><td>integer</td></tr>\n<tr><td></td><td>height</td><td>integer</td></tr>\n<tr><td><code>flip</code></td><td>(no parameters)</td><td></td></tr>\n<tr><td><code>mirror</code></td><td>(no parameters)</td><td></td></tr>\n<tr><td><code>rotate</code></td><td>angle</td><td>integer between 0 and 360</td></tr>\n<tr><td></td><td>background</td><td>color name (yellow, black, etc.) or hexadecimal (rgb, rrggbb)</td></tr>\n<tr><td><code>scale</code></td><td>width</td><td>integer</td></tr>\n<tr><td></td><td>height</td><td>integer</td></tr>\n</tbody>\n</table>","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"path","name":"name","required":true,"schema":{"type":"string"}},{"description":"The operation(s) performed on the image before it's served to the client.","in":"query","name":"io","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Focus point as a x,y coordinate (with values between 0 - 1).","in":"query","name":"focuspoint","required":false,"schema":{"type":"string"}},{"description":"Format of the served image. This can either be `jpg` or `png` and it will overwrite the default `webP`.","in":"query","name":"format","required":false,"schema":{"type":"string"}},{"description":"Image quality, ranging from 1 - 100 (has no effect when `format` is set to 'png').","in":"query","name":"quality","required":false,"schema":{"maximum":100,"minimum":1,"type":"integer"}}],"responses":{"200":{"content":{"image/jpeg":{"schema":{"format":"binary","type":"string"}},"image/png":{"schema":{"format":"binary","type":"string"}}},"description":"Image"},"400":{"description":"Image Operation not supported"},"404":{"description":"Not Found"}},"summary":"Generate dynamic asset transformation"}}},"security":[{"OAuth2":[]},{"permanentToken":[]}],"servers":[{"url":"https://{your-bynder-domain}/"}]}
```
