Automation Integrations
Generate images, screenshots and PDFs inside Make, Zapier, n8n, or any automation platform with an HTTP request module.
Common connection
All platforms use the same REST API. Create an API key in the StarkRender dashboard, keep it in the platform's secure connection or credential store, and send it in the x-api-key header.
| Setting | Value |
|---|---|
| Method | POST |
| URL | https://api.starkrender.com/v1/render |
| Header | x-api-key: YOUR_API_KEY |
| Content type | application/json |
| Response image | url |
JSON Body
{
"html": "<div style='width:1080px;height:1080px;display:flex;background:#111;color:#fff'>Hello</div>",
"width": 1080,
"height": 1080,
"image_url": "https://example.com/photo.jpg"
}JSON Response
{
"url": "https://api.starkrender.com/v1/image/uuid",
"id": "uuid"
}The output field is
url, not image_url. In platforms that expose the full response object, map body.url.Make
HTTP module
- Add HTTP → Make a request to your scenario.
- Set the URL to
https://api.starkrender.com/v1/renderor/v1/render/fast. - Select
POST, add thex-api-keyheader, and chooseapplication/json. - Map values from previous modules into
htmlandimage_url. - Use the returned
urlin the next module.
Custom app operation
Make IML
{
"url": "/v1/render/fast",
"method": "POST",
"body": {
"image_url": "{{parameters.image_url}}",
"html": "{{parameters.html}}"
},
"response": {
"output": { "url": "{{body.url}}" }
}
}/v1/render/fast uses Satori and requires display:flex on elements with multiple children. Use /v1/render for broader HTML/CSS and JavaScript compatibility.Zapier
- Add Webhooks by Zapier → Custom Request.
- Choose
POSTand enterhttps://api.starkrender.com/v1/render. - Set Data Pass-Through to false and provide a JSON body.
- Add headers
x-api-keyandContent-Type: application/json. - Test the step, then map the response field
urlinto your storage, social, email, or publishing action.
Zapier Data
{
"html": "{{HTML from previous step}}",
"image_url": "{{Image URL from previous step}}",
"width": 1080,
"height": 1350
}n8n
- Add an HTTP Request node.
- Set method to
POSTand URL tohttps://api.starkrender.com/v1/render. - Use Header Auth or add
x-api-keymanually. - Enable Send Body, select JSON, and map expressions from earlier nodes.
- Read the image URL with
{{$json.url}}in the next node.
n8n JSON Body
{
"html": "{{$json.html}}",
"image_url": "{{$json.image_url}}",
"width": 1080,
"height": 1350
}Other automation tools
The same configuration works in Pipedream, Activepieces, Node-RED, Power Automate, Retool, Bubble, Airtable automations, serverless functions, and any system that can send an authenticated HTTP request.
- Use
/v1/render/fastfor low-latency, Satori-compatible HTML/CSS. - Use
/v1/renderfor Chromium rendering and broader web compatibility. - Use
/v1/render/asyncwhen the automation platform has a short request timeout. - Use
/v1/render/batchto create up to 25 images in one operation. - Use
/v1/screenshotfor public web pages and/v1/pdffor PDF documents.
Troubleshooting
| Problem | Fix |
|---|---|
| Empty mapped image | Map url or body.url, not image_url. |
401 | Verify the x-api-key header and that the key is active. |
| Fast render layout error | Add display:flex where required or switch to /v1/render. |
| Platform timeout | Use /v1/render/async and poll with the returned job_id. |
| Old content appears | Confirm the current scenario maps the latest html value and does not reuse stored bundle data. |
Never expose your API key in browser-side JavaScript or public workflow screenshots. Store it in the automation platform's credential manager.
StarkRender