Products
Lists products with titles, status, variants, media, and publishing details.
Table-Specific Information
Select
The driver uses the Shopify API to process WHERE clause conditions built with the following columns and operators. The driver processes other filters client-side within the driver.
- Id supports the '=, IN' comparison operators.
- Title supports the '=, !=' comparison operators.
- Handle supports the '=, IN' comparison operators.
- Status supports the '=, !=' comparison operators.
- Vendor supports the '=, !=' comparison operators.
- TotalInventory supports the '=, !=, <, >, >=, <=' comparison operators.
- HasOnlyDefaultVariant supports the '=, !=' comparison operators.
- UpdatedAt supports the '=, !=, <, >, >=, <=' comparison operators.
- CreatedAt supports the '=, !=, <, >, >=, <=' comparison operators.
- ProductType supports the '=, !=' comparison operators.
- PublicationId supports the '=, IN' comparison operators.
- VariantId supports the '=, IN' comparison operators.
- VariantTitle supports the '=, IN' comparison operators.
- Namespace supports the '=, IN' comparison operators.
- Key supports the '=, IN' comparison operators.
- Value supports the '=, IN' comparison operators.
For example, the following queries are processed server-side:
SELECT * FROM Products WHERE Id = 'Val1'
SELECT * FROM Products WHERE Title = 'Val1'
SELECT * FROM Products WHERE Handle = 'Val1'
SELECT * FROM Products WHERE Status = 'Val1'
SELECT * FROM Products WHERE Vendor = 'Val1'
SELECT * FROM Products WHERE TotalInventory = 123
SELECT * FROM Products WHERE HasOnlyDefaultVariant = true
SELECT * FROM Products WHERE UpdatedAt = '2023-01-01 11:10:00'
SELECT * FROM Products WHERE CreatedAt = '2023-01-01 11:10:00'
SELECT * FROM Products WHERE ProductType = 'Val1'
SELECT * FROM Products WHERE PublicationId = 'Val1'
SELECT * FROM Products WHERE VariantId = 'Val1'
SELECT * FROM Products WHERE VariantTitle = 'Val1'
SELECT * FROM Products WHERE Namespace = 'Val1'
SELECT * FROM Products WHERE Key = 'Val1'
SELECT * FROM Products WHERE Value = 'Val1'
Insert
The following columns can be used to create a new record:
DescriptionHtml, Title, Handle, Tags, Status, Vendor, TemplateSuffix, GiftCardTemplateSuffix, IsGiftCard, ProductType, SeoTitle, SeoDescription, RequiresSellingPlan
The following pseudo-columns can be used to create a new record:
Metafields (references Metafields), BundleComponents (references ProductBundleComponents)
Metafields Temporary Table Columns
| Column Name | Type | Description |
| Id | String | The unique ID of the metafield. |
| Namespace | String | A container for a set of metafields. You need to define a custom namespace for your metafields to distinguish them from the metafields used by other apps. |
| Key | String | The name of the metafield. |
| Value | String | The information to be stored as metadata. |
| Type | String | The metafield's information type. |
ProductBundleComponents Temporary Table Columns
| Column Name | Type | Description |
| ComponentProductId | String | A globally-unique ID. |
| OptionSelections (references ProductBundleComponentOptionSelections) | String | The options in the parent and the component options they're connected to, along with the chosen option values that appear in the bundle. |
| Quantity | Int | The quantity of the component product set for this bundle line. It will be null if there's a quantityOption present. |
| QuantityOptionName | String | The name of the option value. |
| QuantityOptionValues | String | The quantity values of the option. |
ProductBundleComponentOptionSelections Temporary Table Columns
| Column Name | Type | Description |
| ParentOptionName | String | The product option’s name. |
| ComponentOptionId | String | A globally-unique ID. |
| Values | String | The component option values that are actively selected for this relationship. |
Update
The following columns can be updated:
DescriptionHtml, Title, Handle, Tags, Status, Vendor, TemplateSuffix, GiftCardTemplateSuffix, ProductType, SeoTitle, SeoDescription, RequiresSellingPlan
The following pseudo-columns can be used to update a record:
Metafields (references Metafields), BundleComponents (references ProductBundleComponents)
Metafields Temporary Table Columns
| Column Name | Type | Description |
| Id | String | The unique ID of the metafield. |
| Namespace | String | A container for a set of metafields. You need to define a custom namespace for your metafields to distinguish them from the metafields used by other apps. |
| Key | String | The name of the metafield. |
| Value | String | The information to be stored as metadata. |
| Type | String | The metafield's information type. |
ProductBundleComponents Temporary Table Columns
| Column Name | Type | Description |
| ComponentProductId | String | A globally-unique ID. |
| OptionSelections (references ProductBundleComponentOptionSelections) | String | The options in the parent and the component options they're connected to, along with the chosen option values that appear in the bundle. |
| Quantity | Int | The quantity of the component product set for this bundle line. It will be null if there's a quantityOption present. |
| QuantityOptionName | String | The name of the option value. |
| QuantityOptionValues | String | The quantity values of the option. |
ProductBundleComponentOptionSelections Temporary Table Columns
| Column Name | Type | Description |
| ParentOptionName | String | The product option’s name. |
| ComponentOptionId | String | A globally-unique ID. |
| Values | String | The component option values that are actively selected for this relationship. |
Delete
You can delete entries by specifying the following column:
Id
Columns
| Name | Type | ReadOnly | References | Description |
| Id [KEY] | String | True |
A globally unique Id of the product. | |
| LegacyResourceId | Long | True |
The Id of the corresponding resource in the REST Admin API. | |
| Description | String | True |
The description of the product, including HTML formatting. | |
| DescriptionHtml | String | False |
The description of the product, including HTML formatting. | |
| Title | String | False |
The title of the product. | |
| Handle | String | False |
A unique, human-friendly string based on the product's title. | |
| Tags | String | False |
A comma-separated list of tags associated with the product. Updating 'tags' overwrites existing tags. To add tags without overwriting, use a mutation. | |
| Status | String | False |
The product status, which controls visibility across all channels. | |
| Vendor | String | False |
The name of the product's vendor. | |
| OnlineStorePreviewUrl | String | True |
The preview URL of the product in the online store. | |
| OnlineStoreUrl | String | True |
The online store URL for the product. Contains null if the product isn't published to the Online Store channel. | |
| TracksInventory | Bool | True |
Indicates whether inventory tracking is enabled for the product. | |
| TotalInventory | Int | True |
The total quantity of inventory in stock. | |
| HasOnlyDefaultVariant | Bool | True |
Indicates whether the product has only a single variant with the default option and value. | |
| HasOutOfStockVariants | Bool | True |
Indicates whether the product has out-of-stock variants. | |
| HasVariantsThatRequiresComponents | Bool | True |
Indicates whether at least one product variant requires bundle components. | |
| VariantsCount | Int | True |
The total number of variants associated with the product. | |
| VariantsCountPrecision | String | True |
The precision of the variant count, indicating the exactness of the value. | |
| TemplateSuffix | String | False |
The theme template used when viewing the product in the store. | |
| GiftCardTemplateSuffix | String | False |
The theme template used when viewing the gift card in the store. | |
| IsGiftCard | Bool | True |
Indicates whether the product is a gift card. | |
| PublishedAt | Datetime | True |
The date and time when the product was published to the Online Store. | |
| UpdatedAt | Datetime | True |
The date and time when the product was last updated. This value can change for reasons such as inventory adjustments. | |
| CreatedAt | Datetime | True |
The date and time when the product was created. | |
| ProductType | String | False |
The product type specified by the merchant. | |
| CategoryId | String | True |
The globally unique Id of the taxonomy category. | |
| CategoryName | String | True |
The name of the taxonomy category. For example, Dog Beds. | |
| CategoryFullName | String | True |
The full taxonomy path of the category. For example, Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Beds. | |
| SeoTitle | String | False |
The search engine optimization (SEO) title of the product. | |
| SeoDescription | String | False |
The SEO description of the product. | |
| RequiresSellingPlan | Bool | False |
Indicates whether the product can only be purchased with a selling plan (subscription). | |
| SellingPlanGroupsCount | Int | True |
The total number of selling plan groups associated with the product. | |
| SellingPlanGroupsCountPrecision | String | True |
The precision of the selling plan group count, indicating the exactness of the value. | |
| PriceRangeMaxVariantPriceAmount | Decimal | True |
The maximum variant price of the product, expressed as a decimal money amount. | |
| PriceRangeMaxVariantPriceCurrencyCode | String | True |
The currency code of the maximum variant price. | |
| PriceRangeMinVariantPriceAmount | Decimal | True |
The minimum variant price of the product, expressed as a decimal money amount. | |
| PriceRangeMinVariantPriceCurrencyCode | String | True |
The currency code of the minimum variant price. | |
| CompareAtPriceRangeMaxVariantCompareAtPriceAmount | Decimal | True |
The maximum compare-at price of the product's variants, expressed as a decimal money amount. | |
| CompareAtPriceRangeMaxVariantCompareAtPriceCurrencyCode | String | True |
The currency code of the maximum compare-at price. | |
| CompareAtPriceRangeMinVariantCompareAtPriceAmount | Decimal | True |
The minimum compare-at price of the product's variants, expressed as a decimal money amount. | |
| CompareAtPriceRangeMinVariantCompareAtPriceCurrencyCode | String | True |
The currency code of the minimum compare-at price. | |
| MediaCount | Int | True |
The total number of media items belonging to the product. | |
| MediaCountPrecision | String | True |
The precision of the media count, indicating the exactness of the value. | |
| FeaturedMediaId | String | True |
A globally unique Id of the featured media. | |
| FeaturedMediaAlt | String | True |
Alternative text that describes the featured media. | |
| FeaturedMediaContentType | String | True |
The content type of the featured media. | |
| FeaturedMediaStatus | String | True |
The current status of the featured media. | |
| FeaturedMediaPreviewStatus | String | True |
The current status of the featured media's preview image. | |
| FeaturedMediaPreviewImageId | String | True |
The Id of the preview image. Contains null until status is READY. | |
| FeaturedMediaPreviewImageAltText | String | True |
Alternative text that describes the preview image. | |
| FeaturedMediaPreviewImageUrl | String | True |
The URL location of the preview image. | |
| FeaturedMediaPreviewImageWidth | Int | True |
The original width of the preview image in pixels. Contains null if the image isn't hosted by Shopify. | |
| FeaturedMediaPreviewImageHeight | Int | True |
The original height of the preview image in pixels. Contains null if the image isn't hosted by Shopify. | |
| AvailablePublicationsCount | Int | True |
The number of publications the resource is published to without feedback errors. | |
| AvailablePublicationsCountPrecision | String | True |
The precision of the publication count, indicating the exactness of the value. | |
| PublishedOnCurrentPublication | Bool | True |
Indicates whether the resource is published to the app's current publication (for example, the online store channel). | |
| ResourcePublicationOnCurrentPublicationAutoPublish | Bool | True |
Indicates whether new products are automatically published to this publication. | |
| ResourcePublicationOnCurrentPublicationIsPublished | Bool | True |
Indicates whether the resource publication is currently published. | |
| ResourcePublicationOnCurrentPublicationPublishDate | Datetime | True |
The date when the resource publication is published to the publication. | |
| ResourcePublicationOnCurrentPublicationPublicationId | String | True |
A globally unique Id of the publication. | |
| ResourcePublicationOnCurrentPublicationPublicationName | String | True |
The name of the publication. | |
| ResourcePublicationOnCurrentPublicationPublicationSupportsFuturePublishing | Bool | True |
Indicates whether the publication supports future publishing. | |
| ResourcePublicationsCount | Int | True |
The number of publications the resource is published to without feedback errors. | |
| ResourcePublicationsCountPrecision | String | True |
The precision of the publication count, indicating the exactness of the value. | |
| FeedbackSummary | String | True |
A summary of resource feedback related to the product. | |
| FeedbackDetails | String | True |
A list of AppFeedback entries detailing issues related to the product. | |
| PublicationId | String | True |
Filters by publication Ids associated with the product. | |
| VariantId | String | True |
Filters by the product variant Id. | |
| VariantTitle | String | True |
Filters by the product variant title. | |
| Namespace | String | True |
The container the metafield belongs to. If not specified, the app-reserved namespace is used. | |
| Key | String | True |
The key for the metafield. | |
| Value | String | True |
The value of the metafield. |
Pseudo-Columns
Pseudo-columns are fields that can only be used in the types of statements under which they are explicitly listed. They are not standard columns but instead provide additional functionality for specific operations.
| Name | Type | Description |
| Metafields | String |
Additional customizable metafields for the product. |
| BundleComponents | String |
The bundle components associated with the product. |