Data Engine Content Controls
Update item metadata
Update mutable metadata fields for an item. Provide either producer_id or item_id along with publisher_id to identify the target item. (Both may be passed in as well.)
PATCH
/
engine
/
v2
/
item
Update item metadata
curl --request PATCH \
--url https://platform.ai.gloo.com/engine/v2/item \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"item_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publisher_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"producer_id": "<string>",
"item_title": "<string>",
"item_subtitle": "<string>",
"publication_date": "<string>",
"item_image": "<string>",
"item_url": "<string>",
"item_summary": "<string>",
"item_number": "<string>",
"item_extra": "<string>",
"author": [
"<string>"
],
"item_tags": [
"<string>"
]
}
'import requests
url = "https://platform.ai.gloo.com/engine/v2/item"
payload = {
"item_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publisher_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"producer_id": "<string>",
"item_title": "<string>",
"item_subtitle": "<string>",
"publication_date": "<string>",
"item_image": "<string>",
"item_url": "<string>",
"item_summary": "<string>",
"item_number": "<string>",
"item_extra": "<string>",
"author": ["<string>"],
"item_tags": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
item_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
publisher_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
producer_id: '<string>',
item_title: '<string>',
item_subtitle: '<string>',
publication_date: '<string>',
item_image: '<string>',
item_url: '<string>',
item_summary: '<string>',
item_number: '<string>',
item_extra: '<string>',
author: ['<string>'],
item_tags: ['<string>']
})
};
fetch('https://platform.ai.gloo.com/engine/v2/item', 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://platform.ai.gloo.com/engine/v2/item",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'item_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'publisher_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'producer_id' => '<string>',
'item_title' => '<string>',
'item_subtitle' => '<string>',
'publication_date' => '<string>',
'item_image' => '<string>',
'item_url' => '<string>',
'item_summary' => '<string>',
'item_number' => '<string>',
'item_extra' => '<string>',
'author' => [
'<string>'
],
'item_tags' => [
'<string>'
]
]),
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://platform.ai.gloo.com/engine/v2/item"
payload := strings.NewReader("{\n \"item_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"publisher_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"producer_id\": \"<string>\",\n \"item_title\": \"<string>\",\n \"item_subtitle\": \"<string>\",\n \"publication_date\": \"<string>\",\n \"item_image\": \"<string>\",\n \"item_url\": \"<string>\",\n \"item_summary\": \"<string>\",\n \"item_number\": \"<string>\",\n \"item_extra\": \"<string>\",\n \"author\": [\n \"<string>\"\n ],\n \"item_tags\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://platform.ai.gloo.com/engine/v2/item")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"item_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"publisher_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"producer_id\": \"<string>\",\n \"item_title\": \"<string>\",\n \"item_subtitle\": \"<string>\",\n \"publication_date\": \"<string>\",\n \"item_image\": \"<string>\",\n \"item_url\": \"<string>\",\n \"item_summary\": \"<string>\",\n \"item_number\": \"<string>\",\n \"item_extra\": \"<string>\",\n \"author\": [\n \"<string>\"\n ],\n \"item_tags\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.ai.gloo.com/engine/v2/item")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"item_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"publisher_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"producer_id\": \"<string>\",\n \"item_title\": \"<string>\",\n \"item_subtitle\": \"<string>\",\n \"publication_date\": \"<string>\",\n \"item_image\": \"<string>\",\n \"item_url\": \"<string>\",\n \"item_summary\": \"<string>\",\n \"item_number\": \"<string>\",\n \"item_extra\": \"<string>\",\n \"author\": [\n \"<string>\"\n ],\n \"item_tags\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>"
}Error Reference: Content Controls
Common errors: item not found (404), publisher not found (400), ownership mismatch (403), vector-store update failure (502).
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
- UpdateItemMetadataRequest
- UpdateItemMetadataRequest
Update mutable metadata fields for an item. Provide either producer_id or item_id to identify the target item. (Both may be passed in together.)
Item ID to update (preferred when available)
Publisher ID that owns the item
Producer-specific identifier for the item
⌘I
Update item metadata
curl --request PATCH \
--url https://platform.ai.gloo.com/engine/v2/item \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"item_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publisher_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"producer_id": "<string>",
"item_title": "<string>",
"item_subtitle": "<string>",
"publication_date": "<string>",
"item_image": "<string>",
"item_url": "<string>",
"item_summary": "<string>",
"item_number": "<string>",
"item_extra": "<string>",
"author": [
"<string>"
],
"item_tags": [
"<string>"
]
}
'import requests
url = "https://platform.ai.gloo.com/engine/v2/item"
payload = {
"item_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publisher_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"producer_id": "<string>",
"item_title": "<string>",
"item_subtitle": "<string>",
"publication_date": "<string>",
"item_image": "<string>",
"item_url": "<string>",
"item_summary": "<string>",
"item_number": "<string>",
"item_extra": "<string>",
"author": ["<string>"],
"item_tags": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
item_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
publisher_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
producer_id: '<string>',
item_title: '<string>',
item_subtitle: '<string>',
publication_date: '<string>',
item_image: '<string>',
item_url: '<string>',
item_summary: '<string>',
item_number: '<string>',
item_extra: '<string>',
author: ['<string>'],
item_tags: ['<string>']
})
};
fetch('https://platform.ai.gloo.com/engine/v2/item', 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://platform.ai.gloo.com/engine/v2/item",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'item_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'publisher_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'producer_id' => '<string>',
'item_title' => '<string>',
'item_subtitle' => '<string>',
'publication_date' => '<string>',
'item_image' => '<string>',
'item_url' => '<string>',
'item_summary' => '<string>',
'item_number' => '<string>',
'item_extra' => '<string>',
'author' => [
'<string>'
],
'item_tags' => [
'<string>'
]
]),
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://platform.ai.gloo.com/engine/v2/item"
payload := strings.NewReader("{\n \"item_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"publisher_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"producer_id\": \"<string>\",\n \"item_title\": \"<string>\",\n \"item_subtitle\": \"<string>\",\n \"publication_date\": \"<string>\",\n \"item_image\": \"<string>\",\n \"item_url\": \"<string>\",\n \"item_summary\": \"<string>\",\n \"item_number\": \"<string>\",\n \"item_extra\": \"<string>\",\n \"author\": [\n \"<string>\"\n ],\n \"item_tags\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://platform.ai.gloo.com/engine/v2/item")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"item_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"publisher_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"producer_id\": \"<string>\",\n \"item_title\": \"<string>\",\n \"item_subtitle\": \"<string>\",\n \"publication_date\": \"<string>\",\n \"item_image\": \"<string>\",\n \"item_url\": \"<string>\",\n \"item_summary\": \"<string>\",\n \"item_number\": \"<string>\",\n \"item_extra\": \"<string>\",\n \"author\": [\n \"<string>\"\n ],\n \"item_tags\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.ai.gloo.com/engine/v2/item")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"item_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"publisher_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"producer_id\": \"<string>\",\n \"item_title\": \"<string>\",\n \"item_subtitle\": \"<string>\",\n \"publication_date\": \"<string>\",\n \"item_image\": \"<string>\",\n \"item_url\": \"<string>\",\n \"item_summary\": \"<string>\",\n \"item_number\": \"<string>\",\n \"item_extra\": \"<string>\",\n \"author\": [\n \"<string>\"\n ],\n \"item_tags\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>"
}
