Tools
Translation editing
Alongside the extended get_master_translations_v1 read (now with source values and per-store locale coverage): the bounded bulk read behind the translations grid (read), creating a missing locale/store translation (write), and copying a product's translations between stores (publish, because the interface publishes the copies). Edit translations with update_projection_attributes_v1 or bulk_patch_v1; publish the translated item with publish_master_v1.
bulk_read_translations_v1
bulk_read_translations_v1pim:readFor one store and up to 500 products or collections, read each item's source version on that store and its translations grouped by locale — each with the translation item id and the translation's per-store version (null where the cell does not exist yet: create it with create_translation_v1 before editing). Also lists the translatable fields. The bulk-edit translations grid's read.
| Argument | Type | Description |
|---|---|---|
channel_id | string, required | The store id. |
parent_master_ids | array of string, required | The product or collection ids (at most 500, one type per call). |
create_translation_v1
create_translation_v1pim:writeCreate the missing translation of a product, collection, or metaobject entry for one locale on one store (get-or-create: an existing one is returned unchanged with 200, a new one with 201), optionally seeding translated values (non-translatable keys are ignored). Edit it afterwards with update_projection_attributes_v1 on the returned translation_projection_id, and publish the translated ITEM with publish_master_v1.
| Argument | Type | Description |
|---|---|---|
channel_id | string, required | The store id. |
locale | string, required | The target locale (one of the store's published locales other than its primary). |
parent_master_id | string, required | The translated item's id. |
changes | object | Optional translated values, field key → value. |
- Drafts only. Changes land in Peak PIM; nothing reaches Shopify until a publish.
copy_translations_v1
copy_translations_v1pim:publishCopy every translation of one product from a source store to the selected target stores, locale by locale, keeping only the locales each target store has published (unsupported locales are reported as skipped). Like the interface's copy dialog the copies are PUBLISHED to the target stores as part of the call — this reaches Shopify — and the result reports per-store copied/skipped/failed locales plus the publish outcome. Products only.
| Argument | Type | Description |
|---|---|---|
id | string, required | The product id. |
source_channel_id | string, required | The store to copy from. |
target_channel_ids | array of string, required | The stores to copy to (at least one). |
- Extended timeout. 120 s per call — the operation runs server-side orchestration or a live Shopify read.
- Reaches your stores. Annotated open-world and destructive; the in-app assistant always asks for confirmation before running it.