Queries
product— Fetch a single product by its id.productFamilies— List product families.productFamily— Fetch a single product family by its id.products— List products, optionally filtered by product family.
Mutations
createProductFamily— Create a new product family.deleteProduct— Delete a product. Returns true if an owned product was deleted, false if none matched. Throws a 409 CONFLICT error (with an extension code of PRODUCT_SOURCE_MANAGED, PRODUCT_HAS_LISTING, or PRODUCT_HAS_INVENTORY) if the product is ineligible for deletion.deleteProductFamily— Delete a product family and all of its products. Returns true if an owned product family was deleted, false if none matched. Throws a 409 CONFLICT error (with an extension code of PRODUCT_SOURCE_MANAGED, PRODUCT_HAS_LISTING, or PRODUCT_HAS_INVENTORY) if the family or any product is ineligible for deletion.syncSalesChannelVariants— Resolve sales channel variant ids to products here, syncing any that do not exist yet. Returns one entry per requested variant id, in the order given; a variant the sales channel does not have resolves to NOT_FOUND rather than failing the request. Variants already present are returned without calling the sales channel. Throws a 400 error when a variant id is not in the sales channel’s id format (for Shopify, gid://shopify/ProductVariant/<numeric id>), and a 400 error (with an extension code of SALES_CHANNEL_NOT_CONNECTED) when the sales channel is not connected.
Objects
Attribute— A typed attribute defined by the merchant and attached to a product or product family.Dimensions— A product’s length, width, and height expressed in a single shared unit.Product— A specific sellable product (a variant under a product family).ProductFamily— A merchant catalog item — a group of related products (variants).ProductFamilyImage— An image attached to a product family.ProductFamilyOption— A variant option (e.g. Size, Color) for a product family, with its allowed values.ProductImage— An image attached to a specific product (variant).ProductOptionValue— A variant’s selected value for one of its family’s options (e.g. Size: M).SyncedVariant— The result of resolving one sales channel variant to a product here.Weight— A weight as a{ value, unit }pair, e.g.{ value: 1.5, unit: KILOGRAM }.
Input objects
CreateProductFamilyInput— The input for creating a new product family.CreateProductInput— A product (variant) to create under the new family.DimensionInput— A length as a{ value, unit }pair.ProductFamilyOptionInput— An option (e.g. Size) to create on the new family.ProductOptionValueInput— A variant’s selected value for one of the family’s options (e.g. Size: M).SyncSalesChannelVariantsInput— The sales channel variants to resolve to products, syncing any that are missing.WeightInput— A weight as a{ value, unit }pair.
Enums
AttributeType— The data type of a merchant-defined attribute. Determines the JSON shape of the attribute’svalue(documented on each enum value).DimensionUnit— A unit of length used to express a product’s dimensions.ProductFamilySortKey— A field this list can be ordered by; pass to the list’sorderByargument and pair withreverseto flip direction.ProductSortKey— A field this list can be ordered by; pass to the list’sorderByargument and pair withreverseto flip direction.SalesChannel— An external sales channel a product can be synced from on demand.VariantSyncOutcome— What happened to one requested sales channel variant.WeightUnit— A unit of mass used to express a product’s weight.