Create a refresh schedule for an existing materialized view
curl --request POST \
--url https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"cron": "@hourly",
"cron_zone_id": "EST",
"stats_enabled": false,
"status": "active"
}
'import requests
url = "https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule"
payload = {
"cron": "@hourly",
"cron_zone_id": "EST",
"stats_enabled": False,
"status": "active"
}
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({cron: '@hourly', cron_zone_id: 'EST', stats_enabled: false, status: 'active'})
};
fetch('https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule', 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}/refresh-schedule",
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([
'cron' => '@hourly',
'cron_zone_id' => 'EST',
'stats_enabled' => false,
'status' => 'active'
]),
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}/refresh-schedule"
payload := strings.NewReader("{\n \"cron\": \"@hourly\",\n \"cron_zone_id\": \"EST\",\n \"stats_enabled\": false,\n \"status\": \"active\"\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}/refresh-schedule")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"cron\": \"@hourly\",\n \"cron_zone_id\": \"EST\",\n \"stats_enabled\": false,\n \"status\": \"active\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule")
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 \"cron\": \"@hourly\",\n \"cron_zone_id\": \"EST\",\n \"stats_enabled\": false,\n \"status\": \"active\"\n}"
response = http.request(request)
puts response.read_bodyDataset Refresh
Create a refresh schedule for an existing materialized view
Creates new request for request derivation
POST
/
datasets
/
{dataset_id}
/
refresh-schedule
Create a refresh schedule for an existing materialized view
curl --request POST \
--url https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"cron": "@hourly",
"cron_zone_id": "EST",
"stats_enabled": false,
"status": "active"
}
'import requests
url = "https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule"
payload = {
"cron": "@hourly",
"cron_zone_id": "EST",
"stats_enabled": False,
"status": "active"
}
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({cron: '@hourly', cron_zone_id: 'EST', stats_enabled: false, status: 'active'})
};
fetch('https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule', 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}/refresh-schedule",
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([
'cron' => '@hourly',
'cron_zone_id' => 'EST',
'stats_enabled' => false,
'status' => 'active'
]),
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}/refresh-schedule"
payload := strings.NewReader("{\n \"cron\": \"@hourly\",\n \"cron_zone_id\": \"EST\",\n \"stats_enabled\": false,\n \"status\": \"active\"\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}/refresh-schedule")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"cron\": \"@hourly\",\n \"cron_zone_id\": \"EST\",\n \"stats_enabled\": false,\n \"status\": \"active\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-dev.narrative.io/datasets/{dataset_id}/refresh-schedule")
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 \"cron\": \"@hourly\",\n \"cron_zone_id\": \"EST\",\n \"stats_enabled\": false,\n \"status\": \"active\"\n}"
response = http.request(request)
puts response.read_bodyAuthorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique identifier for a dataset.
Body
application/json
cron expression "for example: @hourly, 0 12 * * 1-5"
zone id where the cron should take place "for example: EST, GMT+2"
Show child attributes
Show child attributes
if we need to enable advanced statistics calculation
active will be ran on cron schedule, pending and archived won't be run
Available options:
active, pending, archived The ID of the compute pool to use for scheduled refreshes. The compute pool must be active, belong to your company, and be associated with the target data plane.
Response
200
OK
Was this page helpful?
⌘I

