Hi, I am trying to add an integration between my Adalo app and an external service, which is meant to authenticate the user via biometrics (face and id recognition). I follow the steps on your guide about External Collections but receive this error message when testing:
“message”: “Method Not Allowed”
I send images of the process, thank you in advance.
The message means that your API doesn’t support the method you’re using
I wasn’t able to find any API documentation on their website and google search also didn’t return any meaningful results. So it is difficult to say what exactly are you doing wrong, without looking at the docs.
Thank you Victor, they have this link for documentation: Find a list of events
Based on the documentation for the method you used (Compare two face V2), this method requires POST request.
And you are trying to connect it as an external collection, where the first test is done by a usual GET request, without specifying the ID of the record in the collection.
As a side note: external collections in Adalo are designed to connect some data tables from external sources, e.g. from Airtable. So these 5 methods are used to: get list of all records (Adalo expects an array of records), get one record, create a new record, update an existing record and delete one record.
I am not sure that using collections is a good approach in your case. From one point of view, the method you’re using returns an array (according to the docs), so it could be recognised as an external collection. And also you can change the request type for “GET ALL” setting in Adalo External collection setup.
From other point of view, this endpoint does not represent a collection intrinsically - the endpoint is designed to receive 2 images and return a result how similar/different are they. So it looks more like a custom action.
There is another important point - this API endpoint requires images to be encoded in base64, and I am not sure that Adalo can do it easily.
If I were to implement this integration, I’d rather look at something like Make to prepare the data, send requests and interpret responses.
Best regards, Victor.
Thank you Victor for your explanation Yes, I used Zapier to convert images and video, to Base64, I will take a look to Make, I’ll update this ticket as soon as I know if it worked.
PS Isn’t it a way to obtain only the POST request?
I am not sure what do you mean by “obtain a POST request”. You can simply change the request by clicking on the one of 5 endpoints (e.g. Get All) and then you can modify the request there.
In regards to Make - maybe if you use Zapier, Make won’t be necessary. However, I can’t say what would be the best approach as this requires some experiments with your API.
Just in case: this forum is not a support channel, our conversation is not a “ticket”, and I do not work for Adalo This is a community where app makers help each other to solve problems and share their experience. If you would like to get an official response from Adalo support, I would recommend submitting the ticket here: Submit a Support Ticket.
Best regards, Victor.
Oh well, thank you for your support!
Yes what I mean by POST request is this (since I only need POST and not the other ones):
I tried like this but this error occurs:
“message”: “Key: ‘Verify.Image1’ Error:Field validation for ‘Image1’ failed on the ‘required’ tag\nKey: ‘Verify.Image2’ Error:Field validation for ‘Image2’ failed on the ‘required’ tag”
This is what I meant when I mentioned that API integration might be complicated. You are not providing the parameters the endpoint is expecting, therefore you get an error.
I would recommend to test API requests in Postman (postman.com) - this software is very helpful in API testing. And after you know how to set it up, you can replicate this setup in Adalo collections OR Adalo custom actions.
Will try postman.com, thank you very much for your help
Update: Custom Action worked
Thank you for your help.