Since launching in March, one of the ultimate goals of Bannerbear was to be able to generate images synchronously, opening up many more use-cases. That day is now here!
Until today, Bannerbear has worked only asynchronously.
Asynchronous: you fire off an API request to Bannerbear, the image starts to generate, then you fire another API request to fetch the image. If you are using the REST API you'll be familiar with this pattern. If you are using the Zapier integration which delivers images instantly, this two-step process is actually what is going on in the background.
From today there is a new synchronous option when using Signed URLs.
Synchronous: you fire off an API request to Bannerbear, and the image is generated and returned in the same request.
There are pros and cons to each approach and in your application you may wish to use different approaches for different parts of your app / website.
Synchronous image generation has many use-cases in user-facing contexts such as websites and emails. Just get your app or CMS to construct a Bannerbear synchronous signed url and let Bannerbear do the rest.
With the previous async pattern, you could not reliably use signed urls in contexts such as social meta tags or user emails. The async "loading" graphic would get loaded by social media platforms or email clients, and shown to the user which is not what we want.
Now with the new synchronous functionality, there is no "loading" graphic - the requested image just loads synchronously after a few seconds, even when requesting it for the first time.
I think the top two use cases for this feature will be:
Social meta tags - get your CMS to plug in some parameters (e.g. product names, article titles etc) and output a unique social image url for every page of your site. It gives your site an instant facelift on social media - and with Bannerbear's special objects you can get really creative e.g. adding star ratings to your social meta tag images across an entire product catalogue.
Email personalization - now you can easily add dynamic images to your user-facing emails. Really handy for welcome emails, weekly update emails etc. You can see an example of this if you sign up for Bannerbear - you'll receive a welcome email with a graphic like this:
Previously I was generating these images asynchronously using the REST API and a webhook (too complicated!), but now I just embed the synchronous signed url in the email and let Bannerbear do the rest. Much simpler!
I've tried to make this as simple as possible!
The method for creating synchronous signed urls is the same as the previous async method. The only different is, after you have generated your digitally-signed url you simply change:
The signed url documentation has been updated to reflect these changes.
Previously there were two options when constructing signed urls: non-encoded and Base64-encoded.
Your non-encoded signed urls will still work as normal. But if you want to use the new synchronous feature, your urls must use the Base64 method as described in the documentation.
This is now the default / only method for creating signed urls and the non-encoded method has been deprecated.
Hello I'm Jon, the founder of Bannerbear — every 2 weeks I send a newsletter with updates from the Product, Marketing and Business sides of my startup, subscribe below to receive it!
Other resources on Bannerbear with the tags api, synchronous, automation and update