Save culture with workflow run
curl --request GET \
--url {protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id} \
--header 'Authorization: Bearer <token>'import requests
url = "{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_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_PORT => "62437",
CURLOPT_URL => "{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_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 := "{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_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("{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id}")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"message": "Culture process complete"
}Culture
Save culture with workflow run
Loads culture data from Redis, runs the full culture generation pipeline (context analysis, tone, intro questions, scoring), and saves results to the Prompt Library. Transitions through workflow steps during processing.
GET
/
culture
/
{council_sage_id}
/
save
/
{run_id}
Save culture with workflow run
curl --request GET \
--url {protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id} \
--header 'Authorization: Bearer <token>'import requests
url = "{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_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_PORT => "62437",
CURLOPT_URL => "{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_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 := "{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_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("{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("{protocol}://{host}:{port}/culture/{council_sage_id}/save/{run_id}")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"message": "Culture process complete"
}Authorizations
User JWT token passed in Authorization header
Headers
Required JWT permission: council_sage (informational only -- enforced server-side)
Path Parameters
UUID of the council sage
UUID of the workflow run to track progress
Response
Culture saved successfully