Add text as layer to Image - Free API service

Another free API and easy to handle to add “text” over image we capture through the app.

Possible use case could be add date/time at the corner of image as indication when (possibly where) the image was captured. It is bit nostalgic now but we place the date or datetime to the coner of the image like the film camera did in old days… :sweat_smile:

Add dynamic title and subtitle to own image as background / banner etc.

How to use?

Leave it to you.


@Stefan_Quartemont Look what @tsuji_koichi found!

1 Like

I m sorry for fogetting to mention, thanks to @GreenFlux

I borrowed your app which made set up of this “add text to image” module easy to generate.

To control the color of text, we need to pass the value of HEX code, which can be easily taken this sample app.

thanks again and keep up!


No worries, @tsuji_koichi!

I’m glad to see it getting used in other apps. Everyone is welcome to copy and use it. :smiley:

1 Like

Good to see the capability of Appsheet is expanding!

Looking forward to joining to the upcoming special version of webiner in hours. See you over there.
(It starts from 1 AM here my time… :crazy_face:)

1 Like

By the way, we are able to combine this API along with the API service to “crop” images you introduced, by combining the URLs, but I m afraid it will get slower to operate the app due to expensive operations on the backend.

Ideally, manipulation of images could happen on client side. Hope capable Appsheet dev team will make it happen sometime. :grinning: and we will forget those third party API service completely.

Super useful for overlaying lat/long coordinates on an image. Thanks @tsuji_koichi !

Hi John,

Thanks for your words, I m interested in knowing how you nicely “consume” this API.

Please let me know how you cook it to your own taste.

Koichi Tsuji

@tsuji_koichi This is a great find!! Thanks for sharing

Hello friend.

Thnaks to Google search, not me, haha.

Let me know what will be the possible use case.

As i stated, I thought pushing “Date Stamp” to it… or some alert over the image, saying something.


My org does a lot of construction supervision work, and we take a lot of photos. These photos are useless without context. Pre-appsheet, it was a logistical nightmare to get field personnel to upload and add context to photos stored on their phones. One solution was to use a third-party application (e.g. Open Camera on Android) to add text overlays to our images. Conveniently, if you set this as your default camera, AppSheet will use it and images will be stamped. If I can do this without having to rely on a third party app, then that makes user onboarding / training easier for me and makes workflows more consistent.

Note that images stored in appsheet will have context when viewed through the app (ref tables, date, latlong coordinates, descriptions, etc). However, these images are often shared outside of the context of the app. Having some metadata overlayed on the image is very useful.

Queue rant

Problem: a hurdle I often encounter with AppSheet is that it only allows a table to be 'ispartof' one other table. This means, for every unique inspection form one may have, you must have its own photos table. This isn’t desireable, particularly in an application with `10+ unique forms. Also, I want users to be able to view all photos in a single table rather than segmented based upon their unique parent tables… hopefully that makes sense

Solution: continue to add a unique photos table for every unique table, but set it to ‘filter out all existing rows’:

Add an OnSave action which takes only the image path, table identifier, and row REF and places it in a new, universal photos table.

Where this API comes in handy: I can set up my photos table similar to how you’ve shown in your demo video above. I don’t need to worry about all of the excess metadata being saved (text placement, color, etc) as it is effectively discarded on save. The edited image will be passed to my new table.


I wonder how hard it would be for AppSheet to add this functionality natively, given that they already have the drawing columntype (although its lacking text).

Lets ask question to Appsheet team in 30 mins.


Im with you.

Some of my apps are used by ships inspectors who are working on the site with less connectivities to the internet etc.

John, thanks for your feedback and shareing your experience and thought.


I deciced to release the sample app for the community benefit.

For this third party API, we are able to change the color of “overlay layer” but I dont think we need it. So I intentionally ignored its parameter.

Feel free to copy and test it .


One of my dream, Appsheet team makes such functionality to a job on the clients side rather than server side in the near future.

Can do they do it?

Yes, I believe so, as they are super capable.

Sorry, i m with too much “Sake” (japanese wine) to wait for start of the session… Long day!


You could have a single IMAGE table in SQL, and then create a SQL view for each type of image table… Then all the images/comments are technically going to a single table…

1 Like

True; but you would still want to filter out existing rows on the view table lest appsheet loads it twice?

A table view-based approach would save an application action, but the change would only be reflected within the app environment after a sync.

Oh, I :100: agree… Plus, if we ever want to be able to select multiple images/files for upload, Appsheet needs to build out something native.

@tsuji_koichi this is again very cool. Thank you.
I could think of using Watermark / Company Brand.


Another practically useful extension from you. Thank you @tsuji_koichi

1 Like