Request Dataset Sample
curl --request POST \
--url https://api-dev.narrative.io/datasets/{dataset_id}/request-sample \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"compute_pool_id": "a81e1460-fbdc-4204-bd76-a9e496bf760d"
}
'import requests
url = "https://api-dev.narrative.io/datasets/{dataset_id}/request-sample"
payload = { "compute_pool_id": "a81e1460-fbdc-4204-bd76-a9e496bf760d" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({compute_pool_id: 'a81e1460-fbdc-4204-bd76-a9e496bf760d'})
};
fetch('https://api-dev.narrative.io/datasets/{dataset_id}/request-sample', 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-dev.narrative.io/datasets/{dataset_id}/request-sample",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'compute_pool_id' => 'a81e1460-fbdc-4204-bd76-a9e496bf760d'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api-dev.narrative.io/datasets/{dataset_id}/request-sample"
payload := strings.NewReader("{\n \"compute_pool_id\": \"a81e1460-fbdc-4204-bd76-a9e496bf760d\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api-dev.narrative.io/datasets/{dataset_id}/request-sample")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"compute_pool_id\": \"a81e1460-fbdc-4204-bd76-a9e496bf760d\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.narrative.io/datasets/{dataset_id}/request-sample")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"compute_pool_id\": \"a81e1460-fbdc-4204-bd76-a9e496bf760d\"\n}"
response = http.request(request)
puts response.read_body{
"job_id": "a81e1460-fbdc-4204-bd76-a9e496bf760d"
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}Dataset Samples
Request Dataset Sample
Request a dataset sample job with pre-compiled SQL (for non-Narrative Data Planes only)
A body that cannot be decoded as RequestSampleRequest is treated as an empty body rather than
refused: a compute_pool_id that is not a UUID is ignored and the dataset’s default compute pool is
used.
POST
/
datasets
/
{dataset_id}
/
request-sample
Request Dataset Sample
curl --request POST \
--url https://api-dev.narrative.io/datasets/{dataset_id}/request-sample \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"compute_pool_id": "a81e1460-fbdc-4204-bd76-a9e496bf760d"
}
'import requests
url = "https://api-dev.narrative.io/datasets/{dataset_id}/request-sample"
payload = { "compute_pool_id": "a81e1460-fbdc-4204-bd76-a9e496bf760d" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({compute_pool_id: 'a81e1460-fbdc-4204-bd76-a9e496bf760d'})
};
fetch('https://api-dev.narrative.io/datasets/{dataset_id}/request-sample', 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-dev.narrative.io/datasets/{dataset_id}/request-sample",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'compute_pool_id' => 'a81e1460-fbdc-4204-bd76-a9e496bf760d'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api-dev.narrative.io/datasets/{dataset_id}/request-sample"
payload := strings.NewReader("{\n \"compute_pool_id\": \"a81e1460-fbdc-4204-bd76-a9e496bf760d\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api-dev.narrative.io/datasets/{dataset_id}/request-sample")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"compute_pool_id\": \"a81e1460-fbdc-4204-bd76-a9e496bf760d\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.narrative.io/datasets/{dataset_id}/request-sample")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"compute_pool_id\": \"a81e1460-fbdc-4204-bd76-a9e496bf760d\"\n}"
response = http.request(request)
puts response.read_body{
"job_id": "a81e1460-fbdc-4204-bd76-a9e496bf760d"
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}{
"error": "Unauthorized",
"error_description": "You are not authorized to use this endpoint."
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique identifier for a dataset.
Body
application/json
Optional configuration for the sample job
The compute pool to run the sample job on. If not specified, defaults to the dataset's configured compute pool, then to the data plane's default compute pool.
Response
OK
The id of the job that has been enqueued.
Was this page helpful?

