Endpoint
catalog:submit scope. A submission carries an optional externalSubmissionId (your
own idempotency/correlation handle) and a list of items.
Submission item fields
Identity key used to match the proposal back to a product. Must resolve to exactly one product in
your organization, or the item comes back
UNMATCHED.Your certainty, 0–100. Optional but strongly recommended — it drives reviewer triage. Omit it
(or send
null) only when you genuinely have no signal.Proposed product name. Enrichable.
Proposed URL slug. Enrichable.
Proposed long-form description. Enrichable.
Proposed structured attributes. Align each to a template option via
option.optionId — see
Attribute templates. Each attribute is
{ "attribute": string, "detail": string, "option": { ... } | null }.Proposed document references (array of strings). Enrichable.
Only the enrichable fields above are honored. Include at least one non-empty enrichable field
per item — an item with nothing to propose is rejected as
REJECTED_FIELDS.Confidence: help reviewers triage
Confidence isn’t just a number we store — it’s how the merchant decides what to review first.- 80–100 — high confidence. Strong source signal, schema-aligned values. Reviewers can batch these and accept quickly.
- 50–79 — moderate. Worth a glance; usually a spot-check.
- 0–49 — low. Flag for careful review; you’re proposing despite weak signal.
Response
You get one result per submitted item, in order. Thesku echoes your identity so you can correlate
even when an item is unmatched.
Result status
A pending revision was created (
revisionId) on product productId. It’s now in the merchant’s
review queue.No product matched the supplied identity — or the match was ambiguous. Nothing was created. Check
the SKU.
The item carried no whitelisted, non-empty enrichable fields, so there was nothing to propose.
Fields you sent that were dropped because they aren’t enrichable or were empty. A useful signal
that your payload includes data the API won’t act on.
Limits & errors
| Condition | Response |
|---|---|
| More than 1000 items | 400 Bad Request — “Submission exceeds the maximum of 1000 items” |
Empty or missing items | 400 Bad Request — “Submission must contain at least one item” |
Missing catalog:submit scope | 403 Forbidden |
externalSubmissionId
per batch so you can reconcile results against what you sent.