curl --request GET \
--url https://api.cloudglue.dev/v1/query/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cloudglue.dev/v1/query/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cloudglue.dev/v1/query/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cloudglue.dev/v1/query/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.cloudglue.dev/v1/query/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.cloudglue.dev/v1/query/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cloudglue.dev/v1/query/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"object": "query_result",
"status": "completed",
"created_at": 123,
"collections": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"sql": "<string>",
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"rows": [
{}
],
"row_count": 123,
"truncated": true,
"dry_run": true,
"usage": {
"files_scanned": 123,
"entity_rows": 123,
"segment_entity_rows": 123,
"engine_ms": 123,
"total_ms": 123
},
"error": {
"code": "<string>",
"message": "<string>"
},
"format": "json",
"download_url": "<string>",
"download_expires_at": 123,
"output_bytes": 123
}{
"error": "<string>"
}{
"error": "<string>"
}Get Query Result
Retrieve a stored query run by its ID, including its result rows. Results larger than the inline storage cap are replayed truncated (truncated: true).
curl --request GET \
--url https://api.cloudglue.dev/v1/query/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cloudglue.dev/v1/query/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cloudglue.dev/v1/query/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cloudglue.dev/v1/query/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.cloudglue.dev/v1/query/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.cloudglue.dev/v1/query/{id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cloudglue.dev/v1/query/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"object": "query_result",
"status": "completed",
"created_at": 123,
"collections": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"sql": "<string>",
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"rows": [
{}
],
"row_count": 123,
"truncated": true,
"dry_run": true,
"usage": {
"files_scanned": 123,
"entity_rows": 123,
"segment_entity_rows": 123,
"engine_ms": 123,
"total_ms": 123
},
"error": {
"code": "<string>",
"message": "<string>"
},
"format": "json",
"download_url": "<string>",
"download_expires_at": 123,
"output_bytes": 123
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The ID of the query result to retrieve
Response
Query result details
Query result ID
Object type identifier
query_result Current status of the query. Synchronous queries return 'completed' or 'failed'.
completed, failed, in_progress, cancelled Unix timestamp of when the query was created
Collection IDs the query ran over
The effective SQL that was executed (echoes the request's sql)
Result columns in select order
Show child attributes
Show child attributes
Result rows as objects keyed by column name
Number of rows returned
Whether the result was truncated by max_rows or the stored-result size cap
True when the query was only validated/compiled (dry_run request): columns holds the output schema and rows is null.
Dataset and timing usage for the run
Show child attributes
Show child attributes
Error details if the query failed
Show child attributes
Show child attributes
The result format ('csv'/'jsonl' for background exports)
json, csv, jsonl Signed URL to download a completed background export. Valid for 24 hours and not refreshed on read (re-run the export if it expires); null for synchronous runs and until a background export completes
Unix timestamp (ms) when download_url expires
Compressed size of a completed background export, in bytes