Skip to main content

Webhook Image (Experimental)

Push custom images to your TRMNL display from any script, service, or automation.

I
Written by Ikraam Ghoor
Updated over 2 weeks ago

NOTE: Please be aware that this plugin's API and approach may change as we experimenting with other types of integrations.

Step 1 - Add the Plugin

Inside TRMNL, navigate to Plugins > Webhook Image.

Click "Add to my plugins" and give it a name.

Step 2 - Copy Your Webhook URL

After saving, you'll see a unique Webhook URL in your plugin settings.

This URL is private to you. Treat it like a password. Anyone with this URL can update your display.

Step 3 - Send an Image

POST your image file directly to the webhook URL. Here's an example using cURL:

curl -X POST -H "Content-Type: image/png" --data-binary @my-image.png "YOUR_WEBHOOK_URL"

Replace YOUR_WEBHOOK_URL with the URL from Step 2, and my-image.png with your file.

Supported formats: PNG, JPEG, BMP

Maximum size: 5 MB

Rate limit: 12 uploads per hour

Step 4 - You're Done!

Based on your device's refresh settings, you'll see your image on the display very soon.

Note: TRMNL OG displays are 800x480 pixels. For best results, size your image to match. This plugin only does passthrough image storage with no processing, so images may not display on your device unless they meet the devices needs.

Troubleshooting

Getting a 422 error?

Your image may be too large (over 5 MB), wrong format, or corrupted. Try a simple PNG file first.

Getting a 429 error?

You've hit the rate limit. Wait a bit before sending more images.

Display not updating?

Check that your POST request returned a 200 response. You can also use "Force Refresh" in plugin settings.

Image not rendering on your device?

Please validate that the format and pre-processing setup is valid for your device.

Stay focused!

Did this answer your question?