Skip to content
v0.3

catalog.product.update

Update a product (partial; omitted fields keep their value).

  • Scope: catalog.product.write
  • System: no
  • Reachable from: POST /v1/commands/catalog.product.update (tenant credential) · MCP tool catalog.product.update · SDK client.call('catalog.product.update', …)
  • Events: catalog.product.updated
{
"properties": {
"brand_id": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
]
},
"content_sections": {
"items": {
"properties": {
"body": {
"maxLength": 20000,
"type": "string"
},
"title": {
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"title",
"body"
],
"type": "object"
},
"maxItems": 20,
"type": "array"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"handle": {
"minLength": 1,
"type": "string"
},
"meta_description": {
"anyOf": [
{
"maxLength": 500,
"type": "string"
},
{
"type": "null"
}
]
},
"meta_title": {
"anyOf": [
{
"maxLength": 200,
"type": "string"
},
{
"type": "null"
}
]
},
"metadata": {
"additionalProperties": {},
"propertyNames": {
"type": "string"
},
"type": "object"
},
"product_id": {
"minLength": 1,
"type": "string"
},
"status": {
"enum": [
"draft",
"active",
"archived"
],
"type": "string"
},
"title": {
"minLength": 1,
"type": "string"
}
},
"required": [
"product_id"
],
"type": "object"
}

Open (unknown) — this command does not declare an output schema.

validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)