customer_cluster.create
Create a customer cluster: a named group of customers filled by a declarative rule, by pinned members, or by both. A promotion conditions on the cluster — this is how customer data reaches price without a custom field ever feeding a kernel calculation. INTERNAL: a cluster name never reaches the storefront.
- Scope:
customer.admin.write - System: no
- Reachable from:
POST /v1/commands/customer_cluster.create(tenant credential) · MCP toolcustomer_cluster.create· SDKclient.call('customer_cluster.create', …) - Events:
customer_cluster.created
Input (JSON Schema)
Section titled “Input (JSON Schema)”{ "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "match": { "enum": [ "all", "any" ], "type": "string" }, "name": { "minLength": 1, "type": "string" }, "rule": { "items": { "properties": { "attribute": { "minLength": 1, "type": "string" }, "operator": { "enum": [ "is", "starts_with", "contains", "eq", "gt", "lt", "between", "is_one_of", "before", "after", "more_than_days_ago", "less_than_days_ago" ], "type": "string" }, "value": {} }, "required": [ "attribute", "operator", "value" ], "type": "object" }, "type": "array" } }, "required": [ "name" ], "type": "object"}Result (200)
Section titled “Result (200)”{ "additionalProperties": false, "properties": { "cluster_id": { "type": "string" } }, "required": [ "cluster_id" ], "type": "object"}Errors
Section titled “Errors”validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)