How to build a custom query endpoint against Elastic in an Open API?

Im hoping to find inspiration, tips or examples on how to open up more possibilities for independent devs and other organisations using our data.
We are running an open API for ad search based on Elastic and would like to build an endpoint where the user can create custom queries against our data. The purpose is to remove the restraint of having to wait for us to build a rest endpoint for them as well as creating a way for us to see how users actually want to use the data. Performance and security feels like obvious concerns to consider. Users would use an API-key so we would be able to restrain or even ban users running bad queries.

I have looked at GraphQl for inspiration but it seems its purpose is to help with more complex data structures. We have only one type of data: ads. They have similarities with each other but no relations. The closest we get to relations is CategoryTopic > CategoryGroup > Category of which all three is stored in every JSON-object.

Are there any good examples on how to build an endpoint like this? What are the main concerns? Could GraphQL still be a good choice?

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.