Has anyone here integrated with Filestack Rest API?
Since Airtable doesnt allow file uploads directly through its API, an alternative is to upload using Filestack API and then just pass the Filestack URL returned in their response to the Airtable Attachment field. This is how i could be able to set my Image URLs to display for an image sharing component of my app.
I am just having trouble creating the Rest API Data resource for this, and getting an image file to successfully Upload (Create Record) (POST) to Filestack. If anybody has done this or can help please let me know. Thanks!
Here is an example Filestack upload request, per their API guide:
curl -X POST -F fileUploademail@example.com "https://www.filestackapi.com/api/store/S3?key=MY_API_KEY"
Im not really sure how to translate this into a Create Record config in the Data configurator, or even how to make the Create Record flow function.
A more full description of their upload API is at: https://www.filestack.com/docs/concepts/uploading/
I got everything figured out … sort of.
Problem I have is I can only upload images using the Upload Files flow function. If I try to use a Create Record flow function then all it does is upload (POST) a text file with literally the path/name of the image file im trying to upload.
But if i use the Upload Files flow function, this works great, except it doesn’t return the server Response which contains the URL of where the file is at.
So i need to figure out how to make the Create Record function upload (POST) a binary file (and not literally the file path-name i specify to upload)
Get the Upload Files function to output the response sent from the server so I can pull the URL field that is returned.
I figured this out just using HTTP Request and Base64Encode.
I’m new to AppGyver and I’ve realized that what you have outlined here is exactly what is stopping me from launching my app. In my client app, clients are to take a photo that can then be viewed from the database (AirTable) and then retrieved from the Airtable to the staff app as an image (so staff member’s can view the customer’s requests). I’m having a problem with using Filestack for the file conversion (to get it to the AirTable as a URL and not an image per say). Is it possible for you to send the logic you had used or to further outline the process?
Your help will be much appreciated! Thank you.
Overall logic flow. You have to convert your image to Base 64 first and save that output in a Text variable (i called mine PAGE_ImageFile here which is an ‘Any Text’ type variable):
Here is the HTTP POST to Filestack (I use the HTTP Request flow function for this):
The URL property will look like this (replacing with your own Filestack API Key):
Then I save the output url of the Filestack POST in another variable (I call PAGE_ImageURL here).
Then you take that URL variable and Update your Airtable record with it.
Hope this helps.
For the Update record flow function, would it be set up using PUT even though it’s destructive according to AirTable? How exactly would you set up that function?
Also, while on the Update Record topic, I would like the staff to update the status of the request from their app. How can I set up a PATCH for that since AppGyver doesn’t provide that?
Thank you so much for your help so far!
I used PUT (Update record flow function), and thus updating every field in the entire record at once with a record Object variable, because at the time I think I was having trouble getting PATCH to work. I did this very early in my beginning Appgyver days. But I believe it could be done using a HTTP Request PATCH function.
Okay. Thank you so much.
How can I make the PUT replace the field with the same data?
I’ve only used GET and POST, I’ve never used anything including Update Record so I’m a little lost.
I have done all the steps I think, but I still get a Invalid_Attachment_Object when I plug the Web URL page variable into my Create Record object. I tested the output of the Set Page Variable after the HTTP Request Post to Filestack and it returns a URL but doesn’t have a filename at the end. I checked Filestack and the images are uploading to it. My page has a button that either gets image from phone or takes a picture then that all gets merged at a resize logic then I goes through the steps you outlined above.
In my Airtable Create Record Schema for my image field (Attachements) all I have under the object is the URL field.
Any help is greatly appreciated.