Update Catalog Public
curl --request PUT \
--url https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>",
"auto_evolve_schema": true,
"strict_mode": true,
"catalog_md": "<string>"
}
'import requests
url = "https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}"
payload = {
"name": "<string>",
"description": "<string>",
"auto_evolve_schema": True,
"strict_mode": True,
"catalog_md": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
auto_evolve_schema: true,
strict_mode: true,
catalog_md: '<string>'
})
};
fetch('https://catalogapi.rastro.ai/api/public/catalogs/{catalog_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_URL => "https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>',
'auto_evolve_schema' => true,
'strict_mode' => true,
'catalog_md' => '<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://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"auto_evolve_schema\": true,\n \"strict_mode\": true,\n \"catalog_md\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", 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.put("https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"auto_evolve_schema\": true,\n \"strict_mode\": true,\n \"catalog_md\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"auto_evolve_schema\": true,\n \"strict_mode\": true,\n \"catalog_md\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"organization_id": "<string>",
"name": "<string>",
"current_schema_version": "<string>",
"unique_id_field": "<string>",
"auto_evolve_schema": true,
"strict_mode": true,
"product_enabled": true,
"item_count": 123,
"created_by_user_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"product_id_field": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"schema": {
"id": "<string>",
"catalog_id": "<string>",
"version": "<string>",
"schema_definition": {},
"backward_compatible": true,
"created_by": "<string>",
"change_reason": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"migration_rules": {},
"last_edited_by_workflow": "<string>",
"last_edited_at": "2023-11-07T05:31:56Z",
"fields_workflow_info": [],
"total_fields": 0,
"input_fields_count": 0,
"generated_fields_count": 0
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Catalogs
Update Catalog Public
Update catalog settings (API key or user token).
Only provided fields are updated; omitted fields remain unchanged.
PUT
/
public
/
catalogs
/
{catalog_id}
Update Catalog Public
curl --request PUT \
--url https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>",
"auto_evolve_schema": true,
"strict_mode": true,
"catalog_md": "<string>"
}
'import requests
url = "https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}"
payload = {
"name": "<string>",
"description": "<string>",
"auto_evolve_schema": True,
"strict_mode": True,
"catalog_md": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
auto_evolve_schema: true,
strict_mode: true,
catalog_md: '<string>'
})
};
fetch('https://catalogapi.rastro.ai/api/public/catalogs/{catalog_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_URL => "https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>',
'auto_evolve_schema' => true,
'strict_mode' => true,
'catalog_md' => '<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://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"auto_evolve_schema\": true,\n \"strict_mode\": true,\n \"catalog_md\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", 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.put("https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"auto_evolve_schema\": true,\n \"strict_mode\": true,\n \"catalog_md\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://catalogapi.rastro.ai/api/public/catalogs/{catalog_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"auto_evolve_schema\": true,\n \"strict_mode\": true,\n \"catalog_md\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"organization_id": "<string>",
"name": "<string>",
"current_schema_version": "<string>",
"unique_id_field": "<string>",
"auto_evolve_schema": true,
"strict_mode": true,
"product_enabled": true,
"item_count": 123,
"created_by_user_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"product_id_field": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"schema": {
"id": "<string>",
"catalog_id": "<string>",
"version": "<string>",
"schema_definition": {},
"backward_compatible": true,
"created_by": "<string>",
"change_reason": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"migration_rules": {},
"last_edited_by_workflow": "<string>",
"last_edited_at": "2023-11-07T05:31:56Z",
"fields_workflow_info": [],
"total_fields": 0,
"input_fields_count": 0,
"generated_fields_count": 0
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Path Parameters
Body
application/json
Request to update catalog settings
Updated catalog name
Required string length:
1 - 100Updated catalog description
Allow automatic schema evolution
Reject unknown fields
Markdown context injected into enrichment and mapping prompts
Response
Successful Response
Response model for catalog information
Response model for catalog schema
Show child attributes
Show child attributes
⌘I