Airtable image automation with jsontoimg runs as a custom extension. You select records, click Render selected, and the extension writes the signed image URL back, and optionally uploads the file into an attachment field. Three constraints decide whether it suits you: the plan, the token, and the file size.
Requirements
- An Airtable Pro or Enterprise workspace for collaborators to run custom extensions. You can develop against any base where you have creator permission.
- The Blocks CLI: install
@airtable/blocks-cli, runblock init, copy in the jsontoimg frontend, thenblock run. - A jsontoimg API key, plus an Airtable personal access token with
data.records:writeif you want attachment write-back. Airtable describes tokens in personal access tokens.
block run listens on https://localhost:9000. That address is a dev server, not a webpage: opening it in a browser tab shows “Not found”, and that is expected. Paste it into Edit extension inside Airtable and accept the self-signed certificate once.
First render
- Pick a table, template, and format.
- Map each layer to a field. Text layers stringify the field; image layers take the first attachment URL or an
httpstring. - Choose a URL field, an attachment field, or both.
- Select records in the grid and click Render selected.
Each record mints a signed URL, writes it to the URL field, then downloads the file, retrying on 503, and uploads the bytes to the attachment field.
Limits
| Limit | Value |
|---|---|
| Records per run | 50 selected |
| Attachment upload | 5 MB per file |
| Trigger | A button; it does not fire on record create or update |
| Key visibility | Collaborators who can edit the base can read the stored keys |
The last row matters. Credentials live in the extension’s globalConfig, so create keys you can revoke and do not reuse your main one.
When to use something else
Event-driven work, such as “render when a record enters Approved”, needs an automation that can listen for changes. Use n8n or an HTTP step. A 5 MB attachment cap also rules out very large high-scale PNGs; send those to a URL field and skip the attachment.
The overview of triggers is in the Image Automation API guide.
FAQ
Can I generate images from Airtable records?
Yes. Install the jsontoimg custom extension, map fields to template layers, select up to 50 records, and render. The signed URL is written back, and the file can be uploaded as an attachment.
Do I need a paid Airtable plan?
Collaborators need a Pro or Enterprise workspace to run custom extensions. You can develop against a base where you have creator permission.
Why does localhost:9000 show Not found?
It is the Blocks CLI dev server, not a webpage. Paste the URL into Edit extension in Airtable; it is not meant to be opened in a tab.
Does the extension run when a record changes?
No. It runs when you click Render selected. For triggers on create or update, use n8n or an HTTP step.
Related Resources
- How JSON-to-image conversion works — the pillar guide
- Image automation API guide — choose a trigger
- Airtable docs — install steps
- Product banners use case — a catalog-driven job