curl --request GET \
--url https://api.zebratruth.ai/v1/memory/review-queue \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.zebratruth.ai/v1/memory/review-queue"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.zebratruth.ai/v1/memory/review-queue', 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.zebratruth.ai/v1/memory/review-queue",
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.zebratruth.ai/v1/memory/review-queue"
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.zebratruth.ai/v1/memory/review-queue")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zebratruth.ai/v1/memory/review-queue")
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{
"items": [
{
"proposalId": "<string>",
"status": "needs_human",
"proposalKind": "<string>",
"memoryKind": "<string>",
"tenantScope": "<string>",
"jurisdictionScope": [
"<string>"
],
"platformScope": [
"<string>"
],
"sourceClass": "<string>",
"authorityRank": 123,
"impact": "low",
"createdAt": "2023-11-07T05:31:56Z",
"slaDueAt": "2023-11-07T05:31:56Z",
"slaStatus": "ok",
"approvalsReceived": 123,
"approvalsRequired": 123,
"assignedTo": "<string>"
}
],
"counters": {
"needsHuman": 123,
"dueSoon": 123,
"overdue": 123,
"highImpact": 123
},
"pagination": {
"limit": 123,
"nextCursor": "<string>"
},
"sort": "<string>",
"serverTime": "2023-11-07T05:31:56Z"
}{
"statusCode": 123,
"message": "<string>",
"error": true,
"url": "<string>",
"statusMessage": "<string>",
"data": {
"code": "review_scope_not_enabled"
}
}{
"statusCode": 123,
"message": "<string>",
"error": true,
"url": "<string>",
"statusMessage": "<string>",
"data": {
"code": "review_scope_not_enabled"
}
}{
"statusCode": 123,
"message": "<string>",
"error": true,
"url": "<string>",
"statusMessage": "<string>",
"data": {
"code": "review_scope_not_enabled"
}
}{
"statusCode": 429,
"message": "Rate limit exceeded",
"error": true,
"url": "<string>",
"statusMessage": "Rate limit exceeded",
"data": {
"retryAfter": 5,
"limit": 60,
"remaining": 0
}
}List corpus proposals awaiting review
Proposed additions and changes to the governed legal corpus, with SLA state and quorum
progress. Dashboard session only (a user bearer token, never an API key); the
caller must be a registered reviewer, or an owner, manager, or employee with the
proposals:review capability on a company workspace named by x-workspace-id.
Company callers see their own workspace’s proposals only. Proposals are created by
the engine’s observation pipeline; POST /memory/propose always returns 403
direct_memory_propose_forbidden.
curl --request GET \
--url https://api.zebratruth.ai/v1/memory/review-queue \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.zebratruth.ai/v1/memory/review-queue"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.zebratruth.ai/v1/memory/review-queue', 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.zebratruth.ai/v1/memory/review-queue",
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.zebratruth.ai/v1/memory/review-queue"
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.zebratruth.ai/v1/memory/review-queue")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zebratruth.ai/v1/memory/review-queue")
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{
"items": [
{
"proposalId": "<string>",
"status": "needs_human",
"proposalKind": "<string>",
"memoryKind": "<string>",
"tenantScope": "<string>",
"jurisdictionScope": [
"<string>"
],
"platformScope": [
"<string>"
],
"sourceClass": "<string>",
"authorityRank": 123,
"impact": "low",
"createdAt": "2023-11-07T05:31:56Z",
"slaDueAt": "2023-11-07T05:31:56Z",
"slaStatus": "ok",
"approvalsReceived": 123,
"approvalsRequired": 123,
"assignedTo": "<string>"
}
],
"counters": {
"needsHuman": 123,
"dueSoon": 123,
"overdue": 123,
"highImpact": 123
},
"pagination": {
"limit": 123,
"nextCursor": "<string>"
},
"sort": "<string>",
"serverTime": "2023-11-07T05:31:56Z"
}{
"statusCode": 123,
"message": "<string>",
"error": true,
"url": "<string>",
"statusMessage": "<string>",
"data": {
"code": "review_scope_not_enabled"
}
}{
"statusCode": 123,
"message": "<string>",
"error": true,
"url": "<string>",
"statusMessage": "<string>",
"data": {
"code": "review_scope_not_enabled"
}
}{
"statusCode": 123,
"message": "<string>",
"error": true,
"url": "<string>",
"statusMessage": "<string>",
"data": {
"code": "review_scope_not_enabled"
}
}{
"statusCode": 429,
"message": "Rate limit exceeded",
"error": true,
"url": "<string>",
"statusMessage": "Rate limit exceeded",
"data": {
"retryAfter": 5,
"limit": 60,
"remaining": 0
}
}Authorizations
API key starting with zt_live_ (production) or zt_test_ (sandbox).
Get your key at https://developers.zebratruth.ai
Headers
Company workspace to review for. Omit for personal or global reviewer access.
Query Parameters
needs_human, approved, rejected, changes_requested, expired, quarantined low, medium, high me, all primary, reverification, all urgency, oldest, newest, impact 1 <= x <= 100The pagination.nextCursor of the previous page.