Products and Collections APIs
Access and manipulate a store's catalog using product and collection APIs.
In this section
Channel — A channel represents an app where you sell a group of products and collections. A channel can be a platform or marketplace such as Facebook or Pinterest, an online store, or POS.
Collection — Represents a collection of products.
CollectionDeleteInput — Specifies the collection to delete.
CollectionInput — Specifies the input fields required to create a collection.
CollectionPublication — Represents the publications where a collection is published.
CollectionPublicationInput — Specifies the publications to which a collection will be published.
CollectionPublishInput — Specifies a collection to publish and the sales channels to publish it to.
CollectionRule — Represents at rule that’s used to assign products to a collection.
CollectionRuleColumn — Specifies the property of a product being used to populate the smart collection.
CollectionRuleConditions — Collections may use rules to automatically include the matching products. This defines restrictions for a type of rule.
CollectionRuleInput — Specifies a rule to associate with a collection.
CollectionRuleRelation — Specifies the relationship between the
column
and the condition.CollectionRuleSet — The set of rules that are used to determine which products are included in the collection.
CollectionRuleSetInput — Specifies a rule set for the collection.
CollectionSortKeys — The set of valid sort keys for the Collection query.
CollectionSortOrder — Specifies the sort order for the products in the collection.
CollectionUnpublishInput — Specifies the collection to unpublish and the sales channels to remove it from.
CreateMediaInput — Specifies the input fields required to create a media object.
ExternalVideo — Represents a video hosted outside of Shopify.
FulfillmentOrderSortKeys — The set of valid sort keys for the FulfillmentOrder query.
Media — An auto-generated type for paginating through multiple Media.
MediaContentType — The possible content types for a media object.
MediaImage — Represents a Shopify hosted image.
MediaPreviewImage — Represents the preview image for a media.
MediaPreviewImageStatus — The possible statuses for a media preview image.
MediaStatus — The possible statuses for a media object.
Model3d — Represents a Shopify hosted 3D model.
Model3dSource — Represents a source for a Shopify hosted 3d model.
MoveInput — An individual move to perform of an object to a position.
OnlineStorePreviewable — Online Store preview URL of the object.
PriceReductionInput — Specifies the percentage value of a price reduction.
Product — Represents a product, including information about related collections and product variants.
ProductAppendImagesInput — Specifies product images to append.
ProductCollectionSortKeys — The set of valid sort keys for the ProductCollection query.
ProductDeleteInput — Specifies the product to delete.
ProductImageSortKeys — The set of valid sort keys for the ProductImage query.
ProductInput — Specifies the input fields required to create a product.
ProductMediaSortKeys — The set of valid sort keys for the ProductMedia query.
ProductOption — Product property names like 'Size', 'Color', and 'Material'. Variants are selected based on permutations of these options. 255 characters limit each.
ProductPriceRange — The price range of the product.
ProductPriceRangeV2 — The price range of the product.
ProductPublication — Represents the channels where a product is published.
ProductPublicationInput — Specifies a publication to which a product will be published.
ProductPublishInput — Specifies a product to publish and the channels to publish it to.
ProductSortKeys — The set of valid sort keys for the Product query.
ProductStatus — The possible product statuses.
ProductUnpublishInput — Specifies a product to unpublish from a channel and the sales channels to unpublish it from.
ProductVariant — Represents a product variant.
ProductVariantAppendMediaInput — Specifies the input fields required to append media to a single variant.
ProductVariantDetachMediaInput — Specifies the input fields required to detach media from a single variant.
ProductVariantInput — Specifies a product variant to create or update.
ProductVariantInventoryManagement — The method of inventory tracking for a product variant.
ProductVariantInventoryPolicy — The inventory policy for a product variant controls whether customers can continue to buy the variant when it is out of stock. When the value is
continue
, customers are able to buy the variant when it’s out of stock. When the value isdeny
, customers can’t buy the variant when it’s out of stock.ProductVariantPricePair — The compare-at price and price of a variant sharing a currency.
ProductVariantSortKeys — The set of valid sort keys for the ProductVariant query.
PublicationInput — Specifies the input fields required to publish a resource.
Publishable — Represents a resource that can be published to a channel. A publishable resource can be either a Product or Collection.
ResourcePublication — A resource publication represents that a resource has been published to a publication.
ResourcePublicationV2 — A resource publication represents that a resource either has been published or will be published to a publication.
SelectedOption — Properties used by customers to select a product variant. Products can have multiple options, like different sizes or colors.
SellingPlan — Represents a selling plan.
SellingPlanAnchor — Represents a selling plan policy anchor.
SellingPlanAnchorInput — Specifies the input fields required to create or update a selling plan anchor.
SellingPlanAnchorType — Represents the anchor type.
SellingPlanBillingPolicy — Represents the type of a selling plan billing policy.
SellingPlanBillingPolicyInput — Specifies the input fields required to create or update a billing policy type.
SellingPlanDeliveryPolicy — Represents the type of a selling plan delivery policy.
SellingPlanDeliveryPolicyInput — Specifies the input fields to create or update a delivery policy.
SellingPlanFixedPricingPolicy — Represents a fixed selling plan pricing policy.
SellingPlanFixedPricingPolicyInput — Specifies the input fields required to create or update a fixed selling plan pricing policy.
SellingPlanGroup — Represents a selling plan group.
SellingPlanGroupInput — Specifies the input fields required to create or update a selling plan group.
SellingPlanGroupResourceInput — Specifies resource association with a Selling Plan Group.
SellingPlanGroupSortKeys — The set of valid sort keys for the SellingPlanGroup query.
SellingPlanInput — Specifies the input fields to create or update a selling plan.
SellingPlanInterval — Represents valid selling plan interval.
SellingPlanPricingPolicy — Represents the type of a selling plan pricing policy.
SellingPlanPricingPolicyAdjustmentType — Represents a selling plan pricing policy adjustment type.
SellingPlanPricingPolicyAdjustmentValue — Represents a selling plan pricing policy adjustment value type.
SellingPlanPricingPolicyBase — Represents selling plan pricing policy common fields.
SellingPlanPricingPolicyInput — Specifies the input fields required to create or update a selling plan pricing policy.
SellingPlanPricingPolicyPercentageValue — Represents the percentage value of a selling plan pricing policy percentage type.
SellingPlanPricingPolicyValueInput — Specifies the input fields required to create or update a pricing policy adjustment value.
SellingPlanRecurringBillingPolicy — Represents a recurring selling plan billing policy.
SellingPlanRecurringBillingPolicyInput — Specifies the input fields required to create or update a recurring billing policy.
SellingPlanRecurringDeliveryPolicy — Represents a recurring selling plan delivery policy.
SellingPlanRecurringDeliveryPolicyInput — Specifies the input fields to create or update a recurring delivery policy.
SellingPlanRecurringDeliveryPolicyIntent — Possible intentions of a Delivery Policy.
SellingPlanRecurringDeliveryPolicyPreAnchorBehavior — Possible fulfillment or delivery behaviors of the first fulfillment when the orderis placed before the anchor.
SellingPlanRecurringPricingPolicy — Represents a recurring selling plan pricing policy.
SellingPlanRecurringPricingPolicyInput — Specifies the input fields required to create or update a recurring selling plan pricing policy.
StagedMediaUploadTarget — Staged media target information.
UpdateMediaInput — Specifies the input fields required to update a media object.
Video — Represents a Shopify hosted video.
VideoSource — Represents a source for a Shopify hosted video.
Weight — Represents weight unit and value.
WeightInput — Specifies the weight unit and value inputs.
WeightUnit — Units of measurement for weight.
collectionAddProducts — Adds products to a collection.
collectionCreate — Creates a collection.
collectionDelete — Deletes a collection.
collectionPublish — Publishes a collection to a channel.
collectionRemoveProducts — Removes a set of products from a given collection. It can take a long time to run. Instead of returning a collection it returns a job, which should be polled.
collectionReorderProducts — Asynchronously reorders a set of products from a given collection.
collectionUnpublish — Unpublishes a collection.
collectionUpdate — Updates a collection.
productAppendImages — Appends images to a product.
productBulkAddPriceReductions — Adds the price reduction to products in bulk.
productBulkRemovePriceReductions — Removes the price reduction of products in bulk.
productChangeStatus — Change status of a product.
productCreate — Creates a product. Products that are sold exclusively on subscription (
requiresSellingPlan: true
) can only be created on online stores.productCreateMedia — Creates media for a product.
productDelete — Deletes a product.
productDeleteImages — Removes a product images from the product.
productDeleteMedia — Deletes media for a product.
productDuplicate — Duplicates a product.
productImageUpdate — Updates an image of a product.
productJoinSellingPlanGroups — Adds multiple selling plan groups to a product.
productLeaveSellingPlanGroups — Removes multiple groups from a product.
productPublish — Publishes a product. Products that are sold exclusively on subscription (
requiresSellingPlan: true
) can only be published on online stores.productReorderImages — Asynchronously reorders a set of images for a given product.
productReorderMedia — Asynchronously Reoders the media attached to a product.
productUnpublish — Unpublishes a product.
productUpdate — Updates a product. Products that are sold exclusively on subscription (
requiresSellingPlan: true
) can be updated only on online stores. If you update a product to be sold only on a subscription, then the product is unpublished from all channels except the online store.productUpdateMedia — Updates media for a product.
productVariantAppendMedia — Appends media from a product to variants of the product.
productVariantCreate — Creates a product variant.
productVariantDelete — Deletes a product variant.
productVariantDetachMedia — Deletes media from product variants.
productVariantJoinSellingPlanGroups — Adds multiple selling plan groups to a product variant.
productVariantLeaveSellingPlanGroups — Remove multiple groups from a product variant.
productVariantUpdate — Updates a product variant.
publishablePublish — Publishes a resource to a channel. If the resource is a product, then its status must be active. Products that are sold exclusively on subscription (
requiresSellingPlan: true
) can be published only on online stores.publishablePublishToCurrentChannel — Publishes a resource to current channel. If the resource is a product, then its status must be active. Products that are sold exclusively on subscription (
requiresSellingPlan: true
) can be published only on online stores.publishableUnpublish — Unpublishes a resource from a channel. If the resource is a product, then its status must be active.
publishableUnpublishToCurrentChannel — Unpublishes a resource from the current channel. If the resource is a product, then its status must be active.
sellingPlanGroupAddProductVariants — Adds multiple product variants to a selling plan group.
sellingPlanGroupAddProducts — Adds multiple products to a selling plan group.
sellingPlanGroupCreate — Creates a Selling Plan Group.
sellingPlanGroupDelete — Delete a Selling Plan Group.
sellingPlanGroupRemoveProductVariants — Removes multiple product variants from a selling plan group.
sellingPlanGroupRemoveProducts — Removes multiple products from a selling plan group.
sellingPlanGroupUpdate — Update a Selling Plan Group.