I use make.com to pass on the entries in a form on to seatable. I would like to be able do the following:
The name and email address is passed on to seatable
First a search is carried out to see if that person’s name and email address already exists
If so, a certain column is linked to another column in another table
If not, a new row is added and the person is linked to another column in another table
At the moment, I cannot find any way to achieve 2). It seems to me that you can only search for a pre-existing row by inputting that row in the search term iin the scenario. Or am I missing something?
In the second step, you then execute the API call with the SQL query /dtable-db/api/v1/query/{{16.body.dtable_uuuid}}/, where {{16.body.dtable_uuid}} is the dtable_uuuid from the first call.
Thank you so much for you help. Unfortunately, I seem to be falling at the first hurdle. I copied the /api/v2.1/dtable/app-access-token/ command and used the “Make an API Call” module to make athe request but get “permission denied”. I am connected to SeaTable as I use the connection for other reasons.
The way I described above is actually the right one. However, since SeaTable 4.0, API access via the API call module of make.com does not seem to work reliably.
Fortunately, there is a workaround for everything. In this case, we simply make an HTTP call from make.com with the correct parameters (basically as if we were making the call via curl).
Here are the screenshots of the workaround.
In the HTTP call, we must enter the complete URL to the Seatable server. In my example, this is the Seatable server itself.
Of the two header items, the second is the most important: the API token of the respective Seatable base must be specified after the word “Bearer”.
The result of this call is a JSON data element. This is prepared for further use with the make.com JSON module.
Addendum: You can save yourself the trouble by parsing the response of the HTTP call as JSON using the option provided (see screenshot above at the end).
You can then continue with the make.com SeaTable API call module and specify the dtable_uuid from the JSON module.
As described above, the easiest way is to use the radio button “Parse response” in the make.com HTTP module. Please read the explanatory text on the radio button - here the HTTP call must be made manually once (right mouse button “Run this module only”) so that the parser can “learn” the JSON structure.
Alternatively, there is a separate JSON module in make.com that could also be used to parse the response. However, it has no advantages in this context and costs an extra operation in make.com, which can be saved.
Thanks Andreas. I will do some digging and see how to make this work. As a non-coder, I try not to do anything that requires me to start digging into code, whether python, javascript or sql. Maybe there is currently no way around it.
Check if Seatable has automation or scripting capabilities. Some platforms offer automation rules or scripting options that allow you to define more complex logic based on certain triggers. You might be able to create an automation rule that performs specific actions when a new row is added or when certain conditions are met.