| api-key | An Ironfang API key with the render scope. Pass it from a secret, never inline. | yes | — |
| urls | URLs to render, one per line. | no | — |
| html | Raw HTML to render, instead of a URL. | no | — |
| kind | What to render - screenshot, pdf or image (a saved template). | no | screenshot |
| template | Template id, for kind=image. | no | — |
| vars | JSON object of template variables, for kind=image. | no | — |
| output-dir | Directory to write the files into. Created if missing. | no | renderwolf |
| file-name | Name for the file, without an extension. Numbered when there is more than one. Defaults to a name made from the URL. | no | — |
| format | png, jpeg or webp. Ignored for PDFs. | no | png |
| width | Viewport width in pixels. | no | — |
| height | Viewport height in pixels. | no | — |
| full-page | Capture the whole scrollable page rather than the viewport. | no | false |
| selector | Capture one element instead of the page, e.g. "#hero". | no | — |
| device | desktop, tablet or mobile - a viewport, density, mobile flag and user agent together. | no | — |
| dark-mode | Render as a visitor who prefers a dark colour scheme. | no | false |
| quality | 1-100, for jpeg and webp. | no | — |
| delay-ms | Extra wait after the page settles, in milliseconds. | no | — |
| fail-on-error | Fail the step if any render fails. Set false to capture what you can and carry on. | no | true |
| summary | Write a table of what was captured to the job summary. | no | true |
| base-url | API base. Only needed to point at something other than production. | no | https://api.ironfang.com/render |