Are all installed queries GET only?

All of the documentation that I have seen refers to builtin functions for POST, and for new queries that are installed by the user, the examples only show them being called by GET.

Are there examples of an installed query that supports POST? The purpose of this is to allow a large set of inputs without hitting the limits on GET. Such as passing the input values in a file or a large input json string.

Any examples of this?

When I try calling my own query with POST I get this error

" there is no corresponding ‘POST’ method for such endpoint, please check the method of this url."

@markmegerian does this section help address the question above - https://docs.tigergraph.com/dev/restpp-api/built-in-endpoints#run-an-installed-query-post

Run an installed query ( POST )

POST /query/{graph_name}/{query_name}

Users can also run queries through a POST request, which allows them to pass query parameters in JSON. This is especially helpful when the query takes complex parameters.

Parameter Passing:

When using a POST request to run an installed query, the query parameters are passed in through the request body and encoded in JSON format.

Sample request:

The query in this request takes a parameter of type VERTEX<person> :

curl -X POST -d '{"p":{"id":"Tom","type":"person"}}' \

"http://localhost:9000/query/social/hello"

Installed queries can run in Detached Mode. To do this, use the GSQL-ASYNC header and set its value to true . The results and status of the queries run in Detached Mode can be retrieved with a query ID, which is returned immediately when queries are executed in Detached Mode.

This should work on TigerGraph 3.1. Which version are you currently using?

Still on 2.6 So just to be clear, on 3.1 is every installed query automatically enabled for both GET and POST, or do I have to do something to enable it?

See my error above

" there is no corresponding ‘POST’ method for such endpoint, please check the method of this url."

From my understanding it’s automatically enabled for 3.1 @markmegerian

POST is a feature that was implemented in 3.1 regarding a request to " support for JSON payload method to be used for calling GSQL dynamic endpoints"

1 Like