- Make a
POST
to/v1/statement
with the query - You get back a JSON document that might contain a
nextUri
link - The document will contain
columns
if available - The document will contain
data
if available - The
columns
field will always be set ifdata
is set (and usually earlier) - If there is no
nextUri
link, then the query is finished (either successfully completed or failed) - Otherwise, keep following the
nextUri
link - The
status
field is only for displaying to humans as a hint about the query's state on the server. It is not in sync in the query state from the client's perspective and must not be used to determine whether the query is finished. - The document will contain an
error
field if the query has failed — this is how you distinguish between a successfully completed query and a failed query when there is no morenextUri
link - If the response is an HTTP
503
, sleep 50-100ms and try again - Otherwise, if the response is anything other than an HTTP
200
with Content-Typeapplication/json
, then consider the query failed (this means something has gone wrong, for example, you might receive a404
or410
) - The document format is exactly the same for the POST response and the
nextUri
link response — you might getdata
immediately as a response to thePOST
, or it might take many requests for a longer query
-
-
Save thehajime/10695776 to your computer and use it in GitHub Desktop.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment