Shopify
shopifyShopify is an e-commerce platform. This toolkit is GraphQL-first for new Admin API automations while retaining legacy REST compatibility actions for older workflows and numeric-ID interoperability
Acciones disponibles (28)
Cada acción es una operación que el agente puede ejecutar contra este conector. Haz clic en una acción para ver sus parámetros.
Add product to custom collectionSHOPIFY_ADD_PRODUCT_TO_COLLECTIONAcciónAdds a product to an existing *custom collection*, optionally specifying its `position` if the collection is manually sorted.
SHOPIFY_ADD_PRODUCT_TO_COLLECTIONAcciónAdds a product to an existing *custom collection*, optionally specifying its `position` if the collection is manually sorted.
Parámetros de entrada
positionintegerOptional 1-based position if the custom collection is manually sorted; product is added to the end if unspecified or collection isn't manually sorted.
product_idintegerObligatorioIdentifier of the product to add.
collection_idintegerObligatorioIdentifier of the *custom collection*.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Count product imagesSHOPIFY_COUNT_PRODUCT_IMAGESAcciónRetrieves the total count of images for a shopify product, useful for inventory management or display logic; the provided `product id` must exist in the store.
SHOPIFY_COUNT_PRODUCT_IMAGESAcciónRetrieves the total count of images for a shopify product, useful for inventory management or display logic; the provided `product id` must exist in the store.
Parámetros de entrada
product_idstringObligatorioThe unique identifier for the Shopify product whose images are to be counted.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Create a custom collectionSHOPIFY_CREATE_CUSTOM_COLLECTIONAcciónCreates a new custom collection in a shopify store, requiring a unique title for manually curated product groupings (e.g., 'new arrivals', 'seasonal specials').
SHOPIFY_CREATE_CUSTOM_COLLECTIONAcciónCreates a new custom collection in a shopify store, requiring a unique title for manually curated product groupings (e.g., 'new arrivals', 'seasonal specials').
Parámetros de entrada
titlestringObligatorioUnique title for the custom collection, visible to customers and used for product organization.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Create CustomerSHOPIFY_CREATE_CUSTOMERAcciónTool to create a new customer in shopify. use when you need to add a new customer record to the store.
SHOPIFY_CREATE_CUSTOMERAcciónTool to create a new customer in shopify. use when you need to add a new customer record to the store.
Parámetros de entrada
notestringAn optional note about the customer.
tagsstringA comma-separated string of tags to associate with the customer.
emailstringObligatorioemailThe customer's unique email address.
phonestringThe customer's phone number (E.164 format recommended).
passwordstringThe customer's password. If provided, password_confirmation is also required.
addressesobject[]A list of addresses for the customer.
last_namestringThe customer's last name.
first_namestringThe customer's first name.
verified_emailbooleanWhether the customer has verified their email address.
send_email_invitebooleanIf true, sends the customer an email invite to create an account.
send_email_welcomebooleanWhether to send the customer a welcome email. Defaults to true. If send_email_invite is true, this can be set to false.
password_confirmationstringConfirmation of the customer's password. Required if password is provided.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Create an orderSHOPIFY_CREATE_ORDERAcciónCreates a new order in shopify, typically requiring line items; if `customer id` is provided, it must correspond to an existing customer.
SHOPIFY_CREATE_ORDERAcciónCreates a new order in shopify, typically requiring line items; if `customer id` is provided, it must correspond to an existing customer.
Parámetros de entrada
currencystringThe three-letter ISO 4217 currency code for the amounts in the order (e.g., USD, CAD, EUR).
total_taxnumberThe total amount of tax for the order. This should be a numeric value representing the sum of all taxes.
line_itemsobject[]ObligatorioA list of line item objects, each representing an item in the order. Each object should specify at least a `variant_id` (or `product_id`) and `quantity`. Other common fields include `price` and `title`. At least one line item is required.
customer_idstringThe unique identifier of the customer associated with this order. If provided, the order will be linked to this customer. This field is optional.
transactionsobject[]A list of transaction objects associated with the order, typically representing payment information. Each object usually includes `kind` (e.g., 'sale', 'authorization'), `amount`, `status`, and `gateway`.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Create a productSHOPIFY_CREATE_PRODUCTAcciónCreates a new product in a shopify store; a product title is generally required.
SHOPIFY_CREATE_PRODUCTAcciónCreates a new product in a shopify store; a product title is generally required.
Parámetros de entrada
titlestringThe title of the product, typically required by Shopify.
vendorstringThe name of the product's vendor or manufacturer.
variantsobject[]Product variants. Common keys include 'price', 'sku', 'option1', 'option2', 'inventory_quantity'. At least one variant is typically required; if not provided, Shopify might create a default one.
body_htmlstringA detailed description of the product, which can include HTML formatting for rich text.
product_typestringA category for the product, used for filtering and organizing products in Shopify.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Create Product ImageSHOPIFY_CREATE_PRODUCT_IMAGEAcciónTool to create a new product image for a given product. use when you need to add an image to a product by providing the image source url or attachment.
SHOPIFY_CREATE_PRODUCT_IMAGEAcciónTool to create a new product image for a given product. use when you need to add an image to a product by providing the image source url or attachment.
Parámetros de entrada
imageobjectObligatorioAn object containing the image details.
product_idstringObligatorioThe ID of the product to associate the image with.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Delete custom collectionSHOPIFY_DELETE_CUSTOM_COLLECTIONAcciónPermanently deletes a custom collection from a shopify store using its `collection id`; this action is irreversible and requires a valid, existing `collection id`.
SHOPIFY_DELETE_CUSTOM_COLLECTIONAcciónPermanently deletes a custom collection from a shopify store using its `collection id`; this action is irreversible and requires a valid, existing `collection id`.
Parámetros de entrada
collection_idstringObligatorioThe unique identifier for the custom collection that needs to be deleted. This ID is a numerical string assigned by Shopify when the collection is created.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Delete a productSHOPIFY_DELETE_PRODUCTAcciónDeletes a specific, existing product from a shopify store using its unique product id; this action is irreversible.
SHOPIFY_DELETE_PRODUCTAcciónDeletes a specific, existing product from a shopify store using its unique product id; this action is irreversible.
Parámetros de entrada
idstringThe unique identifier of the Shopify product to be deleted. This ID is essential for targeting the correct product for removal.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Delete product imageSHOPIFY_DELETE_PRODUCT_IMAGEAcciónDeletes a specific image from a product in shopify, requiring the `product id` of an existing product and the `image id` of an image currently associated with that product.
SHOPIFY_DELETE_PRODUCT_IMAGEAcciónDeletes a specific image from a product in shopify, requiring the `product id` of an existing product and the `image id` of an image currently associated with that product.
Parámetros de entrada
image_idstringObligatorioThe unique identifier of the specific product image to be deleted.
product_idstringObligatorioThe unique identifier of the product from which the image is to be deleted.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get All CustomersSHOPIFY_GET_ALL_CUSTOMERSAcciónRetrieves customer records from a shopify store, with options for filtering, selecting specific fields, and paginating through the results.
SHOPIFY_GET_ALL_CUSTOMERSAcciónRetrieves customer records from a shopify store, with options for filtering, selecting specific fields, and paginating through the results.
Parámetros de entrada
idsstring[]A list of specific customer IDs to retrieve. If empty, all customers (matching other filters) will be retrieved.
limitintegerThe maximum number of customers to retrieve. Defaults to 50, with a maximum value of 250.
fieldsstringA comma-separated list of customer fields to include in the response (e.g., 'id,email,first_name'). By default, all fields are returned.
since_idstringRetrieve only customers with an ID greater than this specified ID. This is used for paginating through results.
created_at_maxstringFilter customers created before or on this date. Format: YYYY-MM-DD or ISO 8601 datetime string (e.g., '2023-10-26T10:00:00-05:00').
created_at_minstringFilter customers created after or on this date. Format: YYYY-MM-DD or ISO 8601 datetime string (e.g., '2023-10-26T10:00:00-05:00').
updated_at_maxstringFilter customers last updated before or on this date. Format: YYYY-MM-DD or ISO 8601 datetime string.
updated_at_minstringFilter customers last updated after or on this date. Format: YYYY-MM-DD or ISO 8601 datetime string.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get collection by IDSHOPIFY_GET_COLLECTION_BY_IDAcciónRetrieves a specific shopify collection by its `collection id`, optionally filtering returned data to specified `fields`.
SHOPIFY_GET_COLLECTION_BY_IDAcciónRetrieves a specific shopify collection by its `collection id`, optionally filtering returned data to specified `fields`.
Parámetros de entrada
fieldsstringComma-separated list of fields to retrieve; if omitted, all fields are returned. E.g., 'id,title,handle'.
collection_idstringObligatorioThe unique identifier of the Shopify collection to retrieve.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get collectsSHOPIFY_GET_COLLECTSAcciónRetrieves a list of collects from a shopify store, where a collect links a product to a custom collection.
SHOPIFY_GET_COLLECTSAcciónRetrieves a list of collects from a shopify store, where a collect links a product to a custom collection.
Parámetros de entrada
limitintegerMaximum number of collects to retrieve (1-250).
fieldsstringComma-separated list of fields to retrieve (e.g., `id,collection_id,product_id`); if unspecified, all fields are returned.
since_idintegerRetrieve only collects created after this ID, for pagination.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get collects countSHOPIFY_GET_COLLECTS_COUNTAcciónRetrieves the total count of collects (product-to-collection associations) in a shopify store.
SHOPIFY_GET_COLLECTS_COUNTAcciónRetrieves the total count of collects (product-to-collection associations) in a shopify store.
Parámetros de entrada
Sin parámetros.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get custom collectionsSHOPIFY_GET_CUSTOM_COLLECTIONSAcciónRetrieves a list of custom collections from a shopify store, optionally filtered by ids, product id, or handle.
SHOPIFY_GET_CUSTOM_COLLECTIONSAcciónRetrieves a list of custom collections from a shopify store, optionally filtered by ids, product id, or handle.
Parámetros de entrada
idsstringA comma-separated string of custom collection IDs to retrieve.
limitintegerThe maximum number of custom collections to return (between 1 and 250).
handlestringFilter results by the custom collection's unique, human-readable string identifier (e.g., 'summer-specials').
product_idintegerFilter results to custom collections that contain a specific product ID.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get custom collections countSHOPIFY_GET_CUSTOM_COLLECTIONS_COUNTAcciónRetrieves the total number of custom collections in a shopify store.
SHOPIFY_GET_CUSTOM_COLLECTIONS_COUNTAcciónRetrieves the total number of custom collections in a shopify store.
Parámetros de entrada
Sin parámetros.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get CustomerSHOPIFY_GET_CUSTOMERAcciónRetrieves detailed information for a specific customer from a shopify store, provided their valid and existing `customer id`.
SHOPIFY_GET_CUSTOMERAcciónRetrieves detailed information for a specific customer from a shopify store, provided their valid and existing `customer id`.
Parámetros de entrada
customer_idstringObligatorioThe unique identifier for the customer in Shopify.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get customer ordersSHOPIFY_GET_CUSTOMER_ORDERSAcciónRetrieves all orders for a specific, existing customer in shopify using their unique customer id.
SHOPIFY_GET_CUSTOMER_ORDERSAcciónRetrieves all orders for a specific, existing customer in shopify using their unique customer id.
Parámetros de entrada
customer_idstringObligatorioUnique identifier for the customer whose orders are to be retrieved.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get order listSHOPIFY_GET_ORDER_LISTAcciónRetrieves a list of orders from shopify using default api settings and filters.
SHOPIFY_GET_ORDER_LISTAcciónRetrieves a list of orders from shopify using default api settings and filters.
Parámetros de entrada
Sin parámetros.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get order by idSHOPIFY_GET_ORDERSBY_IDAcciónRetrieves a specific shopify order by its unique id, which must correspond to an existing order.
SHOPIFY_GET_ORDERSBY_IDAcciónRetrieves a specific shopify order by its unique id, which must correspond to an existing order.
Parámetros de entrada
fieldsstringComma-separated list of fields to include in the response (e.g., 'id,line_items').
order_idstringObligatorioThe unique identifier of the Shopify order to retrieve.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get productSHOPIFY_GET_PRODUCTAcciónRetrieves details for an existing shopify product using its unique product id.
SHOPIFY_GET_PRODUCTAcciónRetrieves details for an existing shopify product using its unique product id.
Parámetros de entrada
product_idstringObligatorioThe unique identifier of the Shopify product to be retrieved.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get product imageSHOPIFY_GET_PRODUCT_IMAGEAcciónRetrieves detailed information for a specific product image, identified by its id and its associated product id, from a shopify store.
SHOPIFY_GET_PRODUCT_IMAGEAcciónRetrieves detailed information for a specific product image, identified by its id and its associated product id, from a shopify store.
Parámetros de entrada
image_idstringObligatorioThe unique numerical identifier of the image associated with the product.
product_idstringObligatorioThe unique numerical identifier of the Shopify product.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get Product ImagesSHOPIFY_GET_PRODUCT_IMAGESAcciónRetrieves all images for a shopify product, specified by its `product id` which must correspond to an existing product.
SHOPIFY_GET_PRODUCT_IMAGESAcciónRetrieves all images for a shopify product, specified by its `product id` which must correspond to an existing product.
Parámetros de entrada
fieldsstringA comma-separated list of fields to include in the response. Available fields include: id, product_id, position, created_at, updated_at, alt, width, height, src.
since_idstringRestricts the results to product images created after the specified image ID. Useful for pagination.
product_idstringObligatorioThe unique identifier of the Shopify product for which to retrieve images.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get productsSHOPIFY_GET_PRODUCTSAcciónRetrieves a list of products from a shopify store.
SHOPIFY_GET_PRODUCTSAcciónRetrieves a list of products from a shopify store.
Parámetros de entrada
idsstringA comma-separated string of product IDs to retrieve. If this field is not provided (i.e., defaults to `None`), all products will be fetched.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get products countSHOPIFY_GET_PRODUCTS_COUNTAcciónRetrieves the total, unfiltered count of all products in a shopify store.
SHOPIFY_GET_PRODUCTS_COUNTAcciónRetrieves the total, unfiltered count of all products in a shopify store.
Parámetros de entrada
Sin parámetros.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get products in collectionSHOPIFY_GET_PRODUCTS_IN_COLLECTIONAcciónRetrieves all products within a specified shopify collection, requiring a valid `collection id`.
SHOPIFY_GET_PRODUCTS_IN_COLLECTIONAcciónRetrieves all products within a specified shopify collection, requiring a valid `collection id`.
Parámetros de entrada
limitintegerMaximum number of products to retrieve.
collection_idstringObligatorioIdentifier for the Shopify collection. Often found in the collection's Shopify admin URL.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Get Shop DetailsSHOPIFY_GET_SHOP_DETAILSAcciónRetrieves comprehensive administrative information about the authenticated shopify store, as defined by the shopify api.
SHOPIFY_GET_SHOP_DETAILSAcciónRetrieves comprehensive administrative information about the authenticated shopify store, as defined by the shopify api.
Parámetros de entrada
Sin parámetros.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Update OrderSHOPIFY_UPDATE_ORDERAcciónUpdates the phone number for an existing shopify order, identified by its id; pass `phone=none` to remove the current phone number.
SHOPIFY_UPDATE_ORDERAcciónUpdates the phone number for an existing shopify order, identified by its id; pass `phone=none` to remove the current phone number.
Parámetros de entrada
idintegerObligatorioThe unique identifier of the Shopify order whose phone number is to be updated.
phonestringThe new phone number for the order. E.164 format (e.g., '+15551234567') is recommended for international numbers. An empty string `''` may also be used to clear it, depending on Shopify API behavior.
Parámetros de salida
dataobjectObligatorioData from the action execution
errorstringError if any occurred during the execution of the action
successfulbooleanObligatorioWhether or not the action execution was successful or not
Triggers (45)
Los triggers son eventos externos que pueden iniciar un flujo en tus agentes (ej: nuevo email, mensaje recibido, registro creado).
Bulk Operation FinishedSHOPIFY_BULK_OPERATION_FINISHEDTriggerTriggers when a bulk operation started by this app finishes, whether it completed,
failed, was canceled or expired. Shopify sends no result URL on this event; read
`currentBulkOperation` to get one.
SHOPIFY_BULK_OPERATION_FINISHEDTriggerTriggers when a bulk operation started by this app finishes, whether it completed, failed, was canceled or expired. Shopify sends no result URL on this event; read `currentBulkOperation` to get one.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringGraphQL global id of the bulk operation, e.g. `gid://shopify/BulkOperation/8318582423710`.
completed_atstringWhen the operation finished, ISO 8601.
created_atstringWhen the operation was started, ISO 8601.
error_codestringWhy the operation failed, e.g. `ACCESS_DENIED`, `INTERNAL_SERVER_ERROR`, `TIMEOUT`. Null when it succeeded.
statusstringHow the operation ended: `completed`, `failed`, `canceled` or `expired`.
typestringWhat the operation did: `query` for a bulk read, `mutation` for a bulk write.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Collection CreatedSHOPIFY_COLLECTION_CREATEDTriggerTriggers when a collection is created. Automated collections carry `rules` and
`disjunctive`; manual ones omit both.
SHOPIFY_COLLECTION_CREATEDTriggerTriggers when a collection is created. Automated collections carry `rules` and `disjunctive`; manual ones omit both.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe collection's GraphQL global id, e.g. `gid://shopify/Collection/349572300958`.
body_htmlstringThe collection description, as HTML.
disjunctivebooleanFor an automated collection, whether a product needs to match any rule (`true`) or every rule (`false`). Absent on manual collections.
handlestringURL slug for the collection, unique within the store.
idintegerObligatorioShopify's numeric id for the collection.
published_atstringWhen the collection was published to its sales channels, ISO 8601.
published_scopestringWhere the collection is published: `web` for the online store only, `global` for every channel.
rulesobject[]Conditions selecting the collection's products. Present only on automated collections; absent when the merchant curates by hand.
sort_orderstringHow products are ordered inside the collection, e.g. `most-relevant`, `best-selling`, `manual`.
template_suffixstringSuffix of the theme template rendering this collection. Null when the default template is used.
titlestringThe collection's name.
updated_atstringWhen the collection was last modified, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Collection DeletedSHOPIFY_COLLECTION_DELETEDTriggerTriggers when a collection is deleted. Shopify sends only the collection's ids and
publication scope, not its title, rules or products.
SHOPIFY_COLLECTION_DELETEDTriggerTriggers when a collection is deleted. Shopify sends only the collection's ids and publication scope, not its title, rules or products.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe deleted collection's GraphQL global id.
idintegerObligatorioNumeric id of the deleted collection.
published_scopestringWhere the collection had been published: `web` for the online store only, `global` for every channel.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Collection UpdatedSHOPIFY_COLLECTION_UPDATEDTriggerTriggers when a collection's own fields change, and also when a product is added to
or removed from a manual collection. The body never lists the collection's products
— read them with `SHOPIFY_LIST_COLLECTION_PRODUCTS`.
SHOPIFY_COLLECTION_UPDATEDTriggerTriggers when a collection's own fields change, and also when a product is added to or removed from a manual collection. The body never lists the collection's products — read them with `SHOPIFY_LIST_COLLECTION_PRODUCTS`.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe collection's GraphQL global id, e.g. `gid://shopify/Collection/349572300958`.
body_htmlstringThe collection description, as HTML.
disjunctivebooleanFor an automated collection, whether a product needs to match any rule (`true`) or every rule (`false`). Absent on manual collections.
handlestringURL slug for the collection, unique within the store.
idintegerObligatorioShopify's numeric id for the collection.
published_atstringWhen the collection was published to its sales channels, ISO 8601.
published_scopestringWhere the collection is published: `web` for the online store only, `global` for every channel.
rulesobject[]Conditions selecting the collection's products. Present only on automated collections; absent when the merchant curates by hand.
sort_orderstringHow products are ordered inside the collection, e.g. `most-relevant`, `best-selling`, `manual`.
template_suffixstringSuffix of the theme template rendering this collection. Null when the default template is used.
titlestringThe collection's name.
updated_atstringWhen the collection was last modified, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Customer Segment CreatedSHOPIFY_CUSTOMER_SEGMENT_CREATEDTriggerTriggers when a customer segment is created. The body carries the segment's query,
not the customers it selects.
SHOPIFY_CUSTOMER_SEGMENT_CREATEDTriggerTriggers when a customer segment is created. The body carries the segment's query, not the customers it selects.
Configuración
Sin parámetros.
Payload del evento
creationDatestringWhen the segment was created, ISO 8601.
idintegerObligatorioShopify's numeric id for the segment.
lastEditDatestringWhen the segment was last edited, ISO 8601.
namestringName the merchant gave the segment.
querystringThe segment's membership rule in Shopify's segment query language, e.g. `customer_account_status = 'DISABLED'`.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Customer Segment DeletedSHOPIFY_CUSTOMER_SEGMENT_DELETEDTriggerTriggers when a customer segment is deleted. Shopify sends only the segment id.
SHOPIFY_CUSTOMER_SEGMENT_DELETEDTriggerTriggers when a customer segment is deleted. Shopify sends only the segment id.
Configuración
Sin parámetros.
Payload del evento
idintegerObligatorioNumeric id of the deleted customer segment.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Customer Segment UpdatedSHOPIFY_CUSTOMER_SEGMENT_UPDATEDTriggerTriggers when a customer segment is renamed or its query is edited. Customers
entering or leaving a segment as they meet the query are not reported.
SHOPIFY_CUSTOMER_SEGMENT_UPDATEDTriggerTriggers when a customer segment is renamed or its query is edited. Customers entering or leaving a segment as they meet the query are not reported.
Configuración
Sin parámetros.
Payload del evento
creationDatestringWhen the segment was created, ISO 8601.
idintegerObligatorioShopify's numeric id for the segment.
lastEditDatestringWhen the segment was last edited, ISO 8601.
namestringName the merchant gave the segment.
querystringThe segment's membership rule in Shopify's segment query language, e.g. `customer_account_status = 'DISABLED'`.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Discount Code AddedSHOPIFY_DISCOUNT_CODE_ADDEDTriggerTriggers when a redeemable code is added to a discount, once per code. Discount
Updated fires alongside it, because the discount's own record changes too.
SHOPIFY_DISCOUNT_CODE_ADDEDTriggerTriggers when a redeemable code is added to a discount, once per code. Discount Updated fires alongside it, because the discount's own record changes too.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringGraphQL global id of the discount the code belongs to.
redeem_codeobjectOne redeemable code belonging to a discount.
updated_atstringWhen the discount's code list changed, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Discount Code RemovedSHOPIFY_DISCOUNT_CODE_REMOVEDTriggerTriggers when a redeemable code is removed from a discount, once per code. The code
stops working immediately; the discount itself survives.
SHOPIFY_DISCOUNT_CODE_REMOVEDTriggerTriggers when a redeemable code is removed from a discount, once per code. The code stops working immediately; the discount itself survives.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringGraphQL global id of the discount the code belongs to.
redeem_codeobjectOne redeemable code belonging to a discount.
updated_atstringWhen the discount's code list changed, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Discount CreatedSHOPIFY_DISCOUNT_CREATEDTriggerTriggers when a discount is created, whether it applies automatically or through a
code. The body is a summary — read the discount's value and conditions with
`SHOPIFY_GRAPH_QL_DISCOUNTS`.
SHOPIFY_DISCOUNT_CREATEDTriggerTriggers when a discount is created, whether it applies automatically or through a code. The body is a summary — read the discount's value and conditions with `SHOPIFY_GRAPH_QL_DISCOUNTS`.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe discount's GraphQL global id, e.g. `gid://shopify/DiscountCodeNode/1577218769054`. Discounts have no numeric id on this topic, so this is the identifier to use with the Admin GraphQL API.
created_atstringWhen the discount was created, ISO 8601.
statusstringWhere the discount is in its schedule: `ACTIVE`, `SCHEDULED` or `EXPIRED`. Arrives upper-cased.
titlestringName of the discount as the merchant sees it.
updated_atstringWhen the discount was last modified, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Discount DeletedSHOPIFY_DISCOUNT_DELETEDTriggerTriggers when a discount is deleted. Its codes stop working at the same moment and
are not reported separately.
SHOPIFY_DISCOUNT_DELETEDTriggerTriggers when a discount is deleted. Its codes stop working at the same moment and are not reported separately.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringGraphQL global id of the deleted discount. Discounts have no numeric id on this topic, so this is the only handle on it.
deleted_atstringWhen the discount was deleted, ISO 8601. Shopify leaves this null in practice; use the delivery's own arrival time instead.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Discount UpdatedSHOPIFY_DISCOUNT_UPDATEDTriggerTriggers when a discount is edited, and when it reaches its scheduled start or end
and `status` changes. Adding or removing a code fires this as well as the dedicated
code triggers.
SHOPIFY_DISCOUNT_UPDATEDTriggerTriggers when a discount is edited, and when it reaches its scheduled start or end and `status` changes. Adding or removing a code fires this as well as the dedicated code triggers.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe discount's GraphQL global id, e.g. `gid://shopify/DiscountCodeNode/1577218769054`. Discounts have no numeric id on this topic, so this is the identifier to use with the Admin GraphQL API.
created_atstringWhen the discount was created, ISO 8601.
statusstringWhere the discount is in its schedule: `ACTIVE`, `SCHEDULED` or `EXPIRED`. Arrives upper-cased.
titlestringName of the discount as the merchant sees it.
updated_atstringWhen the discount was last modified, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Item CreatedSHOPIFY_INVENTORY_ITEM_CREATEDTriggerTriggers when an inventory item is created, which Shopify does once per new product
variant. It carries the variant's stock-keeping fields — SKU, cost, weight, customs
— but no quantities.
SHOPIFY_INVENTORY_ITEM_CREATEDTriggerTriggers when an inventory item is created, which Shopify does once per new product variant. It carries the variant's stock-keeping fields — SKU, cost, weight, customs — but no quantities.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe inventory item's GraphQL global id, e.g. `gid://shopify/InventoryItem/50334998462622`.
coststringUnit cost the merchant records for margin reporting, as a decimal string in the shop's currency.
country_code_of_originstringISO 3166-1 alpha-2 country the item was made in.
country_harmonized_system_codesobject[]HS tariff codes that override `harmonized_system_code` for particular destination countries.
created_atstringWhen the inventory item was created, ISO 8601.
harmonized_system_codestringHS tariff code used to calculate customs duty.
idintegerObligatorioShopify's numeric id for the inventory item.
province_code_of_originstringProvince or state the item was made in, where recorded.
requires_shippingbooleanWhether the item is physical and has to be shipped.
skustringStock keeping unit shared with the variant.
trackedbooleanWhether Shopify counts stock for this item. Untracked items never fire the inventory-level topics.
updated_atstringWhen the inventory item was last modified, ISO 8601.
weight_unitstringUnit `weight_value` is expressed in, e.g. `lb`, `kg`.
weight_valuenumberShipping weight of the item, in `weight_unit`.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Item DeletedSHOPIFY_INVENTORY_ITEM_DELETEDTriggerTriggers when an inventory item is deleted, which happens for each variant of a
deleted product. Shopify sends the item's ids and customs fields only, not its SKU
or cost.
SHOPIFY_INVENTORY_ITEM_DELETEDTriggerTriggers when an inventory item is deleted, which happens for each variant of a deleted product. Shopify sends the item's ids and customs fields only, not its SKU or cost.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe deleted inventory item's GraphQL global id.
country_code_of_originstringISO 3166-1 alpha-2 country the item was made in.
country_harmonized_system_codesobject[]HS tariff codes that had overridden `harmonized_system_code` for particular destination countries.
harmonized_system_codestringHS tariff code that had been set for customs.
idintegerObligatorioNumeric id of the deleted inventory item.
province_code_of_originstringProvince or state the item was made in, where recorded.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Item UpdatedSHOPIFY_INVENTORY_ITEM_UPDATEDTriggerTriggers when an inventory item's stock-keeping fields change, such as its SKU,
unit cost, weight or customs codes. Quantity changes are not here; those come
through Inventory Level Updated.
SHOPIFY_INVENTORY_ITEM_UPDATEDTriggerTriggers when an inventory item's stock-keeping fields change, such as its SKU, unit cost, weight or customs codes. Quantity changes are not here; those come through Inventory Level Updated.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe inventory item's GraphQL global id, e.g. `gid://shopify/InventoryItem/50334998462622`.
coststringUnit cost the merchant records for margin reporting, as a decimal string in the shop's currency.
country_code_of_originstringISO 3166-1 alpha-2 country the item was made in.
country_harmonized_system_codesobject[]HS tariff codes that override `harmonized_system_code` for particular destination countries.
created_atstringWhen the inventory item was created, ISO 8601.
harmonized_system_codestringHS tariff code used to calculate customs duty.
idintegerObligatorioShopify's numeric id for the inventory item.
province_code_of_originstringProvince or state the item was made in, where recorded.
requires_shippingbooleanWhether the item is physical and has to be shipped.
skustringStock keeping unit shared with the variant.
trackedbooleanWhether Shopify counts stock for this item. Untracked items never fire the inventory-level topics.
updated_atstringWhen the inventory item was last modified, ISO 8601.
weight_unitstringUnit `weight_value` is expressed in, e.g. `lb`, `kg`.
weight_valuenumberShipping weight of the item, in `weight_unit`.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Level UpdatedSHOPIFY_INVENTORY_LEVEL_UPDATEDTriggerTriggers when the quantity of an inventory item changes at a location, in either
direction, once per location affected. Shopify sends the new `available` count but
no delta.
SHOPIFY_INVENTORY_LEVEL_UPDATEDTriggerTriggers when the quantity of an inventory item changes at a location, in either direction, once per location affected. Shopify sends the new `available` count but no delta.
Configuración
location_idintegerOnly deliver events for this Shopify location, as its numeric id. Use `SHOPIFY_LIST_LOCATIONS` to find location ids. Leave unset to deliver every location.
Payload del evento
admin_graphql_api_idstringThe inventory level's GraphQL global id, which carries the inventory item id as a query parameter.
availableintegerUnits available to sell at this location after the change. Null while Shopify is still settling the count.
inventory_item_idintegerNumeric id of the inventory item. Join it to a variant's `inventory_item_id` to find the product.
location_idintegerNumeric id of the location holding the stock.
updated_atstringWhen the level was last changed, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Shipment CreatedSHOPIFY_INVENTORY_SHIPMENT_CREATEDTriggerTriggers when a shipment is created against a stock transfer, once per consignment.
It starts as `DRAFT` and moves on through Inventory Shipment In Transit and
Inventory Shipment Items Received.
SHOPIFY_INVENTORY_SHIPMENT_CREATEDTriggerTriggers when a shipment is created against a stock transfer, once per consignment. It starts as `DRAFT` and moves on through Inventory Shipment In Transit and Inventory Shipment Items Received.
Configuración
Sin parámetros.
Payload del evento
happened_atstringWhen the shipment was created, ISO 8601.
idstringObligatorioGraphQL global id of the shipment, e.g. `gid://shopify/InventoryShipment/3256352926`. Shipments have no numeric id on this topic.
line_itemsobject[]The shipment's lines and the units each one carries.
statusstringWhere the shipment stands, `DRAFT` when it is first created. Arrives upper-cased.
trackingobjectCarrier tracking recorded against an inventory shipment.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Shipment In TransitSHOPIFY_INVENTORY_SHIPMENT_IN_TRANSITTriggerTriggers when a stock shipment is marked in transit. Shopify sends the status
change only, with no lines and no tracking.
SHOPIFY_INVENTORY_SHIPMENT_IN_TRANSITTriggerTriggers when a stock shipment is marked in transit. Shopify sends the status change only, with no lines and no tracking.
Configuración
Sin parámetros.
Payload del evento
happened_atstringWhen the shipment was marked in transit, ISO 8601.
idstringObligatorioGraphQL global id of the shipment now in transit.
statusstringWhere the shipment stands, `IN_TRANSIT` on this event. Arrives upper-cased.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Shipment Items ReceivedSHOPIFY_INVENTORY_SHIPMENT_ITEMS_RECEIVEDTriggerTriggers when items from a stock shipment are received, once per receiving step.
`status` reads `PARTIALLY_RECEIVED` until the last step, and each line carries its
accepted and rejected counts before and after.
SHOPIFY_INVENTORY_SHIPMENT_ITEMS_RECEIVEDTriggerTriggers when items from a stock shipment are received, once per receiving step. `status` reads `PARTIALLY_RECEIVED` until the last step, and each line carries its accepted and rejected counts before and after.
Configuración
Sin parámetros.
Payload del evento
happened_atstringWhen the items were received, ISO 8601.
idstringObligatorioGraphQL global id of the shipment being received.
items_receivedobject[]The lines touched by this receipt, each with its counts before and after and what is still outstanding.
statusstringWhere the shipment stands after this step, e.g. `PARTIALLY_RECEIVED`, `RECEIVED`. Arrives upper-cased.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Shipment Tracking UpdatedSHOPIFY_INVENTORY_SHIPMENT_TRACKING_UPDATEDTriggerTriggers when the carrier tracking on a stock shipment is set or changed. The body
carries the tracking as it now stands, not what it replaced.
SHOPIFY_INVENTORY_SHIPMENT_TRACKING_UPDATEDTriggerTriggers when the carrier tracking on a stock shipment is set or changed. The body carries the tracking as it now stands, not what it replaced.
Configuración
Sin parámetros.
Payload del evento
happened_atstringWhen the tracking was changed, ISO 8601.
shipment_idstringGraphQL global id of the shipment. This topic names the shipment as `shipment_id`, unlike the other shipment topics which use `id`.
updated_trackingobjectCarrier tracking recorded against an inventory shipment.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Stocked At LocationSHOPIFY_INVENTORY_STOCKED_AT_LOCATIONTriggerTriggers when an inventory item starts being stocked at a location. This is the
item being activated there, not its quantity changing — later quantity changes come
through Inventory Level Updated.
SHOPIFY_INVENTORY_STOCKED_AT_LOCATIONTriggerTriggers when an inventory item starts being stocked at a location. This is the item being activated there, not its quantity changing — later quantity changes come through Inventory Level Updated.
Configuración
location_idintegerOnly deliver events for this Shopify location, as its numeric id. Use `SHOPIFY_LIST_LOCATIONS` to find location ids. Leave unset to deliver every location.
Payload del evento
admin_graphql_api_idstringThe inventory level's GraphQL global id, which carries the inventory item id as a query parameter.
availableintegerUnits available to sell at this location after the change. Null while Shopify is still settling the count.
inventory_item_idintegerNumeric id of the inventory item. Join it to a variant's `inventory_item_id` to find the product.
location_idintegerNumeric id of the location holding the stock.
updated_atstringWhen the level was last changed, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Transfer Ready To ShipSHOPIFY_INVENTORY_TRANSFER_READY_TO_SHIPTriggerTriggers when a stock transfer between the merchant's locations is marked ready to
ship, before any shipment exists against it. Its lines name transfer-line ids
rather than products.
SHOPIFY_INVENTORY_TRANSFER_READY_TO_SHIPTriggerTriggers when a stock transfer between the merchant's locations is marked ready to ship, before any shipment exists against it. Its lines name transfer-line ids rather than products.
Configuración
Sin parámetros.
Payload del evento
happened_atstringWhen the transfer was marked ready to ship, ISO 8601.
idstringObligatorioGraphQL global id of the transfer, e.g. `gid://shopify/InventoryTransfer/6167298206`. Transfers have no numeric id on this topic.
line_itemsobject[]The transfer's lines and the units each one moves.
statusstringWhere the transfer stands, `READY_TO_SHIP` on this event. Arrives upper-cased.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Inventory Unstocked At LocationSHOPIFY_INVENTORY_UNSTOCKED_AT_LOCATIONTriggerTriggers when an inventory item stops being stocked at a location, either because
the merchant deactivated it there or because the product was deleted. The body is
just the item and location ids.
SHOPIFY_INVENTORY_UNSTOCKED_AT_LOCATIONTriggerTriggers when an inventory item stops being stocked at a location, either because the merchant deactivated it there or because the product was deleted. The body is just the item and location ids.
Configuración
location_idintegerOnly deliver events for this Shopify location, as its numeric id. Use `SHOPIFY_LIST_LOCATIONS` to find location ids. Leave unset to deliver every location.
Payload del evento
inventory_item_idintegerNumeric id of the inventory item that is no longer stocked here. Join it to a variant's `inventory_item_id` to find the product.
location_idintegerNumeric id of the location that stopped stocking the item.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Location ActivatedSHOPIFY_LOCATION_ACTIVATEDTriggerTriggers when a location is activated and can hold stock and fulfil orders again.
Its previous stock is not restored; that arrives as Inventory Stocked At Location.
SHOPIFY_LOCATION_ACTIVATEDTriggerTriggers when a location is activated and can hold stock and fulfil orders again. Its previous stock is not restored; that arrives as Inventory Stocked At Location.
Configuración
Sin parámetros.
Payload del evento
activebooleanWhether the location can hold stock and fulfil orders. Deactivating one leaves it on the store, unusable.
address1stringFirst line of the address.
address2stringSecond line of the address.
admin_graphql_api_idstringThe location's GraphQL global id, e.g. `gid://shopify/Location/89748275358`.
citystringCity of the address.
countrystringISO 3166-1 alpha-2 country code, e.g. `CA`.
country_codestringISO 3166-1 alpha-2 country code, same as `country`.
country_namestringCountry name in full, e.g. `Canada`.
created_atstringWhen the location was created, ISO 8601.
idintegerObligatorioShopify's numeric id for the location.
legacybooleanWhether this is the implicit location Shopify created before multi-location inventory, rather than one the merchant added.
namestringName the merchant gave the location.
phonestringContact phone number for the location.
provincestringProvince or state name, e.g. `Ontario`.
province_codestringShort province or state code, e.g. `ON`.
updated_atstringWhen the location was last modified, ISO 8601.
zipstringPostal or ZIP code.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Location CreatedSHOPIFY_LOCATION_CREATEDTriggerTriggers when a location is added to the store. A new location can hold inventory
straight away, so this is the first sight of a `location_id` that will appear on
the inventory triggers.
SHOPIFY_LOCATION_CREATEDTriggerTriggers when a location is added to the store. A new location can hold inventory straight away, so this is the first sight of a `location_id` that will appear on the inventory triggers.
Configuración
Sin parámetros.
Payload del evento
activebooleanWhether the location can hold stock and fulfil orders. Deactivating one leaves it on the store, unusable.
address1stringFirst line of the address.
address2stringSecond line of the address.
admin_graphql_api_idstringThe location's GraphQL global id, e.g. `gid://shopify/Location/89748275358`.
citystringCity of the address.
countrystringISO 3166-1 alpha-2 country code, e.g. `CA`.
country_codestringISO 3166-1 alpha-2 country code, same as `country`.
country_namestringCountry name in full, e.g. `Canada`.
created_atstringWhen the location was created, ISO 8601.
idintegerObligatorioShopify's numeric id for the location.
legacybooleanWhether this is the implicit location Shopify created before multi-location inventory, rather than one the merchant added.
namestringName the merchant gave the location.
phonestringContact phone number for the location.
provincestringProvince or state name, e.g. `Ontario`.
province_codestringShort province or state code, e.g. `ON`.
updated_atstringWhen the location was last modified, ISO 8601.
zipstringPostal or ZIP code.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Location DeactivatedSHOPIFY_LOCATION_DEACTIVATEDTriggerTriggers when a location is deactivated. It stays on the store with `active`
reading `false`, but can no longer hold stock or fulfil orders.
SHOPIFY_LOCATION_DEACTIVATEDTriggerTriggers when a location is deactivated. It stays on the store with `active` reading `false`, but can no longer hold stock or fulfil orders.
Configuración
Sin parámetros.
Payload del evento
activebooleanWhether the location can hold stock and fulfil orders. Deactivating one leaves it on the store, unusable.
address1stringFirst line of the address.
address2stringSecond line of the address.
admin_graphql_api_idstringThe location's GraphQL global id, e.g. `gid://shopify/Location/89748275358`.
citystringCity of the address.
countrystringISO 3166-1 alpha-2 country code, e.g. `CA`.
country_codestringISO 3166-1 alpha-2 country code, same as `country`.
country_namestringCountry name in full, e.g. `Canada`.
created_atstringWhen the location was created, ISO 8601.
idintegerObligatorioShopify's numeric id for the location.
legacybooleanWhether this is the implicit location Shopify created before multi-location inventory, rather than one the merchant added.
namestringName the merchant gave the location.
phonestringContact phone number for the location.
provincestringProvince or state name, e.g. `Ontario`.
province_codestringShort province or state code, e.g. `ON`.
updated_atstringWhen the location was last modified, ISO 8601.
zipstringPostal or ZIP code.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Location DeletedSHOPIFY_LOCATION_DELETEDTriggerTriggers when a location is deleted. Shopify sends only the location id, and a
location must be deactivated first, so Location Deactivated normally arrives before
it.
SHOPIFY_LOCATION_DELETEDTriggerTriggers when a location is deleted. Shopify sends only the location id, and a location must be deactivated first, so Location Deactivated normally arrives before it.
Configuración
Sin parámetros.
Payload del evento
idintegerObligatorioNumeric id of the deleted location. This is the same id the inventory topics carry as `location_id`.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Location UpdatedSHOPIFY_LOCATION_UPDATEDTriggerTriggers when a location's own details change, such as its name, address or
fulfilment settings. Activation and deactivation have their own triggers and are
not reported here.
SHOPIFY_LOCATION_UPDATEDTriggerTriggers when a location's own details change, such as its name, address or fulfilment settings. Activation and deactivation have their own triggers and are not reported here.
Configuración
Sin parámetros.
Payload del evento
activebooleanWhether the location can hold stock and fulfil orders. Deactivating one leaves it on the store, unusable.
address1stringFirst line of the address.
address2stringSecond line of the address.
admin_graphql_api_idstringThe location's GraphQL global id, e.g. `gid://shopify/Location/89748275358`.
citystringCity of the address.
countrystringISO 3166-1 alpha-2 country code, e.g. `CA`.
country_codestringISO 3166-1 alpha-2 country code, same as `country`.
country_namestringCountry name in full, e.g. `Canada`.
created_atstringWhen the location was created, ISO 8601.
idintegerObligatorioShopify's numeric id for the location.
legacybooleanWhether this is the implicit location Shopify created before multi-location inventory, rather than one the merchant added.
namestringName the merchant gave the location.
phonestringContact phone number for the location.
provincestringProvince or state name, e.g. `Ontario`.
province_codestringShort province or state code, e.g. `ON`.
updated_atstringWhen the location was last modified, ISO 8601.
zipstringPostal or ZIP code.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Market CreatedSHOPIFY_MARKET_CREATEDTriggerTriggers when a market is created. New markets start as `draft` and sell nothing
until they are activated, which arrives as Market Updated.
SHOPIFY_MARKET_CREATEDTriggerTriggers when a market is created. New markets start as `draft` and sell nothing until they are activated, which arrives as Market Updated.
Configuración
Sin parámetros.
Payload del evento
idintegerObligatorioShopify's numeric id for the market.
namestringName the merchant gave the market.
statusstringWhether the market is live: `active` sells to it, `draft` does not.
typestringWhat the market is scoped by, e.g. `region`, `none` for a market with no regions assigned yet.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Market UpdatedSHOPIFY_MARKET_UPDATEDTriggerTriggers when a market is renamed, activated or otherwise changed. The body is a
summary; the market's regions, currencies, domains and price lists are not
included.
SHOPIFY_MARKET_UPDATEDTriggerTriggers when a market is renamed, activated or otherwise changed. The body is a summary; the market's regions, currencies, domains and price lists are not included.
Configuración
Sin parámetros.
Payload del evento
idintegerObligatorioShopify's numeric id for the market.
namestringName the merchant gave the market.
statusstringWhether the market is live: `active` sells to it, `draft` does not.
typestringWhat the market is scoped by, e.g. `region`, `none` for a market with no regions assigned yet.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Metafield Definition CreatedSHOPIFY_METAFIELD_DEFINITION_CREATEDTriggerTriggers when a metafield definition is created, i.e. the schema for one custom
field on a resource. Shopify follows every creation with a Metafield Definition
Updated for the same definition moments later.
SHOPIFY_METAFIELD_DEFINITION_CREATEDTriggerTriggers when a metafield definition is created, i.e. the schema for one custom field on a resource. Shopify follows every creation with a Metafield Definition Updated for the same definition moments later.
Configuración
Sin parámetros.
Payload del evento
access_onlybooleanWhether the definition only grants access to metafields another owner defined, rather than defining them itself.
admin_filter_statusstringFilterability as a status string, e.g. `not_filterable`. Shopify sends this alongside `admin_filterable_status`.
admin_filterablebooleanWhether staff can filter admin lists by this field.
admin_filterable_statusstringWhy the field is or is not filterable in the admin.
app_config_managedbooleanWhether an app owns the definition through its configuration, in which case staff cannot edit it.
created_atstringWhen the definition was created, ISO 8601.
customer_accessstringWhat customer-account surfaces may read the metafield, e.g. `none`, `read`.
deletingbooleanWhether Shopify is removing the definition and its metafields in the background.
descriptionstringHelp text shown to staff under the field.
idintegerObligatorioShopify's numeric id for the definition.
keystringKey of the metafield within its namespace.
merchant_writeablebooleanWhether staff can edit the metafield in the admin.
namestringLabel shown to staff in the Shopify admin.
namespacestringNamespace grouping the definition's metafields, e.g. `custom`. Namespace and key together identify a metafield on a resource.
option_linkablebooleanWhether product option values can be linked to this field's metaobject entries.
optionsobject[]Validation rules the definition enforces on values written against it, such as a minimum or a regular expression.
owner_typestringResource the definition applies to, title-cased on this topic — `Product`, `Collection`, `Shop` — not the GraphQL enum casing.
pinned_positionintegerPosition of the field among those pinned to the top of the admin editor. `0` when it is not pinned.
smart_collection_conditionbooleanWhether the field can be used as a rule in an automated collection.
standard_template_idstringId of the Shopify standard definition this was created from, if the merchant picked one instead of defining their own.
storefront_readablebooleanWhether the Storefront API exposes the metafield.
type_namestringMetafield type the definition enforces, e.g. `single_line_text_field`, `number_integer`.
unique_valuesbooleanWhether Shopify rejects a value already used on another resource.
updated_atstringWhen the definition was last modified, ISO 8601.
use_as_collection_conditionbooleanWhether the merchant has turned the field on as an automated collection rule.
validation_statusstringWhether existing metafields satisfy the definition's validations: `all_valid`, `in_progress` or `some_invalid`.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Metafield Definition DeletedSHOPIFY_METAFIELD_DEFINITION_DELETEDTriggerTriggers when a metafield definition is deleted. Shopify sends only its id, type
class and creating app — no namespace, key or owner resource — so this trigger
cannot offer the filters its create and update siblings do.
SHOPIFY_METAFIELD_DEFINITION_DELETEDTriggerTriggers when a metafield definition is deleted. Shopify sends only its id, type class and creating app — no namespace, key or owner resource — so this trigger cannot offer the filters its create and update siblings do.
Configuración
Sin parámetros.
Payload del evento
idstringObligatorioGraphQL global id of the deleted definition, e.g. `gid://shopify/MetafieldDefinition/254184521886`. The create and update topics send a numeric id instead; the digits at the end of this one are that same id.
typestringInternal class name of the metafield type the definition used, e.g. `ShopifyMetafields::Types::SingleLineTextFieldType`. Not the `type_name` the create and update topics send.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Metafield Definition UpdatedSHOPIFY_METAFIELD_DEFINITION_UPDATEDTriggerTriggers when a metafield definition's name, description, validations, pinning or
storefront access change. Values written into the metafields it defines are not
reported.
SHOPIFY_METAFIELD_DEFINITION_UPDATEDTriggerTriggers when a metafield definition's name, description, validations, pinning or storefront access change. Values written into the metafields it defines are not reported.
Configuración
Sin parámetros.
Payload del evento
access_onlybooleanWhether the definition only grants access to metafields another owner defined, rather than defining them itself.
admin_filter_statusstringFilterability as a status string, e.g. `not_filterable`. Shopify sends this alongside `admin_filterable_status`.
admin_filterablebooleanWhether staff can filter admin lists by this field.
admin_filterable_statusstringWhy the field is or is not filterable in the admin.
app_config_managedbooleanWhether an app owns the definition through its configuration, in which case staff cannot edit it.
created_atstringWhen the definition was created, ISO 8601.
customer_accessstringWhat customer-account surfaces may read the metafield, e.g. `none`, `read`.
deletingbooleanWhether Shopify is removing the definition and its metafields in the background.
descriptionstringHelp text shown to staff under the field.
idintegerObligatorioShopify's numeric id for the definition.
keystringKey of the metafield within its namespace.
merchant_writeablebooleanWhether staff can edit the metafield in the admin.
namestringLabel shown to staff in the Shopify admin.
namespacestringNamespace grouping the definition's metafields, e.g. `custom`. Namespace and key together identify a metafield on a resource.
option_linkablebooleanWhether product option values can be linked to this field's metaobject entries.
optionsobject[]Validation rules the definition enforces on values written against it, such as a minimum or a regular expression.
owner_typestringResource the definition applies to, title-cased on this topic — `Product`, `Collection`, `Shop` — not the GraphQL enum casing.
pinned_positionintegerPosition of the field among those pinned to the top of the admin editor. `0` when it is not pinned.
smart_collection_conditionbooleanWhether the field can be used as a rule in an automated collection.
standard_template_idstringId of the Shopify standard definition this was created from, if the merchant picked one instead of defining their own.
storefront_readablebooleanWhether the Storefront API exposes the metafield.
type_namestringMetafield type the definition enforces, e.g. `single_line_text_field`, `number_integer`.
unique_valuesbooleanWhether Shopify rejects a value already used on another resource.
updated_atstringWhen the definition was last modified, ISO 8601.
use_as_collection_conditionbooleanWhether the merchant has turned the field on as an automated collection rule.
validation_statusstringWhether existing metafields satisfy the definition's validations: `all_valid`, `in_progress` or `some_invalid`.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Product CreatedSHOPIFY_PRODUCT_CREATEDTriggerTriggers when a product is created, from the admin, the API, an import or an app. A
product with tracked inventory also fires Inventory Item Created and Inventory
Stocked At Location.
SHOPIFY_PRODUCT_CREATEDTriggerTriggers when a product is created, from the admin, the API, an import or an app. A product with tracked inventory also fires Inventory Item Created and Inventory Stocked At Location.
Configuración
product_typestringOnly deliver products carrying this product type, as set on the product. Leave unset to deliver every type.
statusstringOnly deliver products in this state: `active`, `draft` or `archived`. Leave unset to deliver every state.
Payload del evento
admin_graphql_api_idstringThe product's GraphQL global id, e.g. `gid://shopify/Product/8860969205918`.
body_htmlstringThe product description, as HTML.
categoryobjectA product's node in Shopify's standard product taxonomy.
created_atstringWhen the product was created, ISO 8601 with the shop's UTC offset.
handlestringURL slug for the product, unique within the store, e.g. `merino-crew-neck`.
has_variants_that_requires_componentsbooleanWhether any variant is a bundle assembled from other products, which cannot be stocked directly.
idintegerObligatorioShopify's numeric id for the product.
imageobjectOne image on a product.
imagesobject[]Product images, in the order they appear on the product.
mediaobject[]Images, videos and 3D models attached to the product.
optionsobject[]The axes the variants vary along, such as Size or Colour.
product_typestringThe merchant's own product-type label, a free-text field.
published_atstringWhen the product was published to its sales channels, ISO 8601. Null while it is unpublished.
published_scopestringWhere the product is published: `web` for the online store only, `global` for every channel.
statusstringWhether the product is `active`, `draft` or `archived`. Only `active` products can be sold.
tagsstringThe product's tags as one comma-separated string, e.g. `new, sale`. Shopify sends this as text, not an array.
template_suffixstringSuffix of the theme template rendering this product, e.g. `bold` for `product.bold.liquid`. Null when the default template is used.
titlestringThe product's name.
updated_atstringWhen the product was last modified, ISO 8601.
variant_gidsobject[]The same variants as GraphQL ids with their modification times — Shopify's own index for spotting which variant changed.
variantsobject[]Every purchasable variant of the product.
vendorstringVendor or brand recorded on the product.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Product DeletedSHOPIFY_PRODUCT_DELETEDTriggerTriggers when a product is deleted. Shopify sends only the product id, and a
product with tracked inventory also fires Inventory Unstocked At Location and
Inventory Item Deleted per variant.
SHOPIFY_PRODUCT_DELETEDTriggerTriggers when a product is deleted. Shopify sends only the product id, and a product with tracked inventory also fires Inventory Unstocked At Location and Inventory Item Deleted per variant.
Configuración
Sin parámetros.
Payload del evento
idintegerObligatorioNumeric id of the deleted product. The record is already gone, so this is the only handle on it — match it against your own copy.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Product UpdatedSHOPIFY_PRODUCT_UPDATEDTriggerTriggers when any field of a product changes, as one delivery per edit rather than
one per field. It also fires when a variant's inventory quantity changes and when a
metafield is written on the product, which makes it the highest-volume product
trigger.
SHOPIFY_PRODUCT_UPDATEDTriggerTriggers when any field of a product changes, as one delivery per edit rather than one per field. It also fires when a variant's inventory quantity changes and when a metafield is written on the product, which makes it the highest-volume product trigger.
Configuración
product_typestringOnly deliver products carrying this product type, as set on the product. Leave unset to deliver every type.
statusstringOnly deliver products in this state: `active`, `draft` or `archived`. Leave unset to deliver every state.
Payload del evento
admin_graphql_api_idstringThe product's GraphQL global id, e.g. `gid://shopify/Product/8860969205918`.
body_htmlstringThe product description, as HTML.
categoryobjectA product's node in Shopify's standard product taxonomy.
created_atstringWhen the product was created, ISO 8601 with the shop's UTC offset.
handlestringURL slug for the product, unique within the store, e.g. `merino-crew-neck`.
has_variants_that_requires_componentsbooleanWhether any variant is a bundle assembled from other products, which cannot be stocked directly.
idintegerObligatorioShopify's numeric id for the product.
imageobjectOne image on a product.
imagesobject[]Product images, in the order they appear on the product.
mediaobject[]Images, videos and 3D models attached to the product.
optionsobject[]The axes the variants vary along, such as Size or Colour.
product_typestringThe merchant's own product-type label, a free-text field.
published_atstringWhen the product was published to its sales channels, ISO 8601. Null while it is unpublished.
published_scopestringWhere the product is published: `web` for the online store only, `global` for every channel.
statusstringWhether the product is `active`, `draft` or `archived`. Only `active` products can be sold.
tagsstringThe product's tags as one comma-separated string, e.g. `new, sale`. Shopify sends this as text, not an array.
template_suffixstringSuffix of the theme template rendering this product, e.g. `bold` for `product.bold.liquid`. Null when the default template is used.
titlestringThe product's name.
updated_atstringWhen the product was last modified, ISO 8601.
variant_gidsobject[]The same variants as GraphQL ids with their modification times — Shopify's own index for spotting which variant changed.
variantsobject[]Every purchasable variant of the product.
vendorstringVendor or brand recorded on the product.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Product Variant Back In StockSHOPIFY_PRODUCT_VARIANT_BACK_IN_STOCKTriggerTriggers when a variant's stock crosses back above zero across every location, not
on every restock. It arrives a few seconds after the inventory change that caused
it, so it is not ordered against Inventory Level Updated.
SHOPIFY_PRODUCT_VARIANT_BACK_IN_STOCKTriggerTriggers when a variant's stock crosses back above zero across every location, not on every restock. It arrives a few seconds after the inventory change that caused it, so it is not ordered against Inventory Level Updated.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe variant's GraphQL global id, e.g. `gid://shopify/ProductVariant/48209618862238`. This is the id form the Admin GraphQL API takes.
barcodestringBarcode, UPC, ISBN or GTIN recorded on the variant.
compare_at_pricestringPrice the variant is compared against to show a markdown, as a decimal string. Null when the variant is not on sale.
created_atstringWhen the variant was created, ISO 8601 with the shop's UTC offset.
idintegerObligatorioShopify's numeric id for the variant.
image_idintegerNumeric id of the product image assigned to this variant.
inventory_item_idintegerNumeric id of the inventory item that holds this variant's stock. The join key to the inventory topics, which name the item rather than the variant.
inventory_policystringWhat Shopify does once stock reaches zero: `deny` stops the sale, `continue` allows overselling.
inventory_quantityintegerUnits available across every location, after the event.
old_inventory_quantityintegerUnits available across every location before the event.
option1stringValue for the product's first option, e.g. `Small` when option one is `Size`.
option2stringValue for the product's second option, if it has one.
option3stringValue for the product's third option, if it has one.
positioninteger1-based order of the variant within its product.
pricestringCurrent price in the shop's currency, as a decimal string, e.g. `9.99`. Shopify sends money as strings to avoid float rounding.
product_idintegerNumeric id of the product this variant belongs to.
skustringThe merchant's stock keeping unit for the variant.
taxablebooleanWhether tax is charged when the variant is sold.
titlestringThe variant's name, built from its option values, e.g. `Small / Blue`. Single-variant products get `Default Title`.
updated_atstringWhen the variant was last modified, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Product Variant Out Of StockSHOPIFY_PRODUCT_VARIANT_OUT_OF_STOCKTriggerTriggers when a variant's stock crosses to zero across every location, not on every
sale. It arrives a few seconds after the inventory change that caused it, so it is
not ordered against Inventory Level Updated.
SHOPIFY_PRODUCT_VARIANT_OUT_OF_STOCKTriggerTriggers when a variant's stock crosses to zero across every location, not on every sale. It arrives a few seconds after the inventory change that caused it, so it is not ordered against Inventory Level Updated.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe variant's GraphQL global id, e.g. `gid://shopify/ProductVariant/48209618862238`. This is the id form the Admin GraphQL API takes.
barcodestringBarcode, UPC, ISBN or GTIN recorded on the variant.
compare_at_pricestringPrice the variant is compared against to show a markdown, as a decimal string. Null when the variant is not on sale.
created_atstringWhen the variant was created, ISO 8601 with the shop's UTC offset.
idintegerObligatorioShopify's numeric id for the variant.
image_idintegerNumeric id of the product image assigned to this variant.
inventory_item_idintegerNumeric id of the inventory item that holds this variant's stock. The join key to the inventory topics, which name the item rather than the variant.
inventory_policystringWhat Shopify does once stock reaches zero: `deny` stops the sale, `continue` allows overselling.
inventory_quantityintegerUnits available across every location, after the event.
old_inventory_quantityintegerUnits available across every location before the event.
option1stringValue for the product's first option, e.g. `Small` when option one is `Size`.
option2stringValue for the product's second option, if it has one.
option3stringValue for the product's third option, if it has one.
positioninteger1-based order of the variant within its product.
pricestringCurrent price in the shop's currency, as a decimal string, e.g. `9.99`. Shopify sends money as strings to avoid float rounding.
product_idintegerNumeric id of the product this variant belongs to.
skustringThe merchant's stock keeping unit for the variant.
taxablebooleanWhether tax is charged when the variant is sold.
titlestringThe variant's name, built from its option values, e.g. `Small / Blue`. Single-variant products get `Default Title`.
updated_atstringWhen the variant was last modified, ISO 8601.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Shipping Profile CreatedSHOPIFY_SHIPPING_PROFILE_CREATEDTriggerTriggers when a shipping profile is created. The body is a summary; the profile's
zones, rates and products are not included.
SHOPIFY_SHIPPING_PROFILE_CREATEDTriggerTriggers when a shipping profile is created. The body is a summary; the profile's zones, rates and products are not included.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe profile's GraphQL global id, e.g. `gid://shopify/DeliveryProfile/109752320158`.
defaultbooleanWhether this is the store's General profile, which covers every product no custom profile claims.
idintegerObligatorioShopify's numeric id for the shipping profile.
namestringName the merchant gave the profile.
profile_typestringWhat the profile governs, e.g. `shipping`.
versionintegerRevision counter Shopify increments on every edit to the profile.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Shipping Profile DeletedSHOPIFY_SHIPPING_PROFILE_DELETEDTriggerTriggers when a shipping profile is deleted. Unusually for a Shopify delete event
the body is the whole profile, and the products it covered fall back to the store's
General profile.
SHOPIFY_SHIPPING_PROFILE_DELETEDTriggerTriggers when a shipping profile is deleted. Unusually for a Shopify delete event the body is the whole profile, and the products it covered fall back to the store's General profile.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe profile's GraphQL global id, e.g. `gid://shopify/DeliveryProfile/109752320158`.
defaultbooleanWhether this is the store's General profile, which covers every product no custom profile claims.
idintegerObligatorioShopify's numeric id for the shipping profile.
namestringName the merchant gave the profile.
profile_typestringWhat the profile governs, e.g. `shipping`.
versionintegerRevision counter Shopify increments on every edit to the profile.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Shipping Profile UpdatedSHOPIFY_SHIPPING_PROFILE_UPDATEDTriggerTriggers when a shipping profile is renamed, or its zones, rates or product
assignments change. Which of those changed is not reported, only that `version`
advanced.
SHOPIFY_SHIPPING_PROFILE_UPDATEDTriggerTriggers when a shipping profile is renamed, or its zones, rates or product assignments change. Which of those changed is not reported, only that `version` advanced.
Configuración
Sin parámetros.
Payload del evento
admin_graphql_api_idstringThe profile's GraphQL global id, e.g. `gid://shopify/DeliveryProfile/109752320158`.
defaultbooleanWhether this is the store's General profile, which covers every product no custom profile claims.
idintegerObligatorioShopify's numeric id for the shipping profile.
namestringName the merchant gave the profile.
profile_typestringWhat the profile governs, e.g. `shipping`.
versionintegerRevision counter Shopify increments on every edit to the profile.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Shop Settings UpdatedSHOPIFY_SHOP_SETTINGS_UPDATEDTriggerTriggers when the store's own record changes — its address, currency, timezone,
plan, tax or checkout settings. It also fires when a metafield on the store is
written or deleted, with none of these fields moving.
SHOPIFY_SHOP_SETTINGS_UPDATEDTriggerTriggers when the store's own record changes — its address, currency, timezone, plan, tax or checkout settings. It also fires when a metafield on the store is written or deleted, with none of these fields moving.
Configuración
Sin parámetros.
Payload del evento
address1stringFirst line of the store's business address.
address2stringSecond line of the store's business address.
auto_configure_tax_inclusivitybooleanWhether Shopify decides tax inclusivity per market rather than using one setting for the store.
checkout_api_supportedbooleanWhether the store may use the Checkout API.
citystringCity of the business address.
countrystringISO 3166-1 alpha-2 country code, e.g. `US`.
country_codestringISO 3166-1 alpha-2 country code, same as `country`.
country_namestringCountry name in full, e.g. `United States`.
county_taxesbooleanWhether county tax rates are applied on top of state rates.
created_atstringWhen the store was created, ISO 8601.
currencystringISO 4217 code of the currency the store prices in, e.g. `USD`.
customer_emailstringAddress shoppers see as the sender and reply-to on store email.
domainstringThe store's primary customer-facing domain, which is the custom one once the merchant has connected it.
eligible_for_paymentsbooleanWhether the store may use Shopify Payments.
emailstringThe merchant's own contact address for account matters.
enabled_presentment_currenciesstring[]Every currency shoppers may be shown prices in.
financesbooleanWhether financial data is available for the store.
google_apps_domainstringGoogle Workspace domain linked to the store, where one is.
google_apps_login_enabledbooleanWhether staff sign in with that Google Workspace domain.
has_discountsbooleanWhether the store has ever created a discount.
has_gift_cardsbooleanWhether the store has ever issued a gift card.
has_storefrontbooleanWhether the store has an online storefront at all.
iana_timezonestringThe same timezone as an IANA name, e.g. `America/New_York`. Use this one for date arithmetic.
idintegerObligatorioShopify's numeric id for the store.
latitudenumberLatitude Shopify geocoded from the business address.
longitudenumberLongitude Shopify geocoded from the business address.
marketing_email_consent_enabled_at_checkoutbooleanWhether checkout offers shoppers email marketing consent.
marketing_sms_consent_enabled_at_checkoutbooleanWhether checkout offers shoppers SMS marketing consent.
money_formatstringLiquid template the storefront renders prices with, e.g. `${{amount}}`.
money_in_emails_formatstringPrice template used in the store's email notifications.
money_with_currency_formatstringPrice template including the currency code.
money_with_currency_in_emails_formatstringEmail price template including the currency code.
multi_location_enabledbooleanWhether the store can stock inventory at more than one location.
myshopify_domainstringThe store's permanent `*.myshopify.com` domain. This never changes, unlike `domain`.
namestringThe store's name.
password_enabledbooleanWhether the storefront is behind a password page and closed to the public.
phonestringThe store's contact phone number.
plan_display_namestringThe plan's name as the merchant sees it, e.g. `Shopify`.
plan_namestringInternal handle of the store's Shopify plan, e.g. `professional`.
pre_launch_enabledbooleanWhether the store is still in its pre-launch state.
primary_localestringISO code of the store's default language, e.g. `en`.
primary_location_idintegerNumeric id of the location Shopify fulfils from by default. Joins to the `location_id` on the inventory topics.
provincestringProvince or state name of the business address.
province_codestringShort province or state code, e.g. `ON`.
requires_extra_payments_agreementbooleanWhether Shopify needs an extra payments agreement before the store can take payments.
setup_requiredbooleanWhether Shopify still requires setup steps before selling.
shop_ownerstringName of the account owner.
sourcestringHow the store was signed up, where Shopify recorded it.
tax_shippingbooleanWhether tax is charged on shipping.
taxes_includedbooleanWhether product prices already include tax.
timezonestringThe store's timezone as Shopify displays it, e.g. `(GMT-05:00) Eastern Time (US & Canada)`.
transactional_sms_disabledbooleanWhether the store has turned off transactional SMS to shoppers.
updated_atstringWhen the store's record was last modified, ISO 8601.
weight_unitstringDefault unit for product weights, e.g. `lb`, `kg`.
zipstringPostal or ZIP code.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Store Language AddedSHOPIFY_STORE_LANGUAGE_ADDEDTriggerTriggers when a language is added to the store. It is normally added unpublished,
so `published` reads `false` until the merchant makes it visible, which arrives as
Store Language Updated.
SHOPIFY_STORE_LANGUAGE_ADDEDTriggerTriggers when a language is added to the store. It is normally added unpublished, so `published` reads `false` until the merchant makes it visible, which arrives as Store Language Updated.
Configuración
Sin parámetros.
Payload del evento
localestringISO language code for the language, e.g. `fr` or `pt-BR`. This is the identifier Shopify uses for the store's locales.
publishedbooleanWhether shoppers can browse the storefront in this language. A language can be added unpublished while translations are prepared.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Store Language RemovedSHOPIFY_STORE_LANGUAGE_REMOVEDTriggerTriggers when a language is removed from the store, taking its stored translations
with it. `published` describes the language as it stood at removal.
SHOPIFY_STORE_LANGUAGE_REMOVEDTriggerTriggers when a language is removed from the store, taking its stored translations with it. `published` describes the language as it stood at removal.
Configuración
Sin parámetros.
Payload del evento
localestringISO language code for the language, e.g. `fr` or `pt-BR`. This is the identifier Shopify uses for the store's locales.
publishedbooleanWhether shoppers can browse the storefront in this language. A language can be added unpublished while translations are prepared.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.
Store Language UpdatedSHOPIFY_STORE_LANGUAGE_UPDATEDTriggerTriggers when a store language is published or unpublished. `published` is what
changes; the language stays on the store either way.
SHOPIFY_STORE_LANGUAGE_UPDATEDTriggerTriggers when a store language is published or unpublished. `published` is what changes; the language stays on the store either way.
Configuración
Sin parámetros.
Payload del evento
localestringISO language code for the language, e.g. `fr` or `pt-BR`. This is the identifier Shopify uses for the store's locales.
publishedbooleanWhether shoppers can browse the storefront in this language. A language can be added unpublished while translations are prepared.
Instrucciones
- Connect Shopify through OAuth. Shopify signs every delivery with the app's client secret, which only an OAuth auth config holds. - The connected account needs the access scope the topic requires, granted when the store installs the app. - Deleting the trigger in Composio does not remove the subscription from Shopify. To stop delivery, remove the app in the Shopify admin under Settings -> Apps and sales channels. - Sample deliveries from `shopify app webhook trigger` name the placeholder store `shop.myshopify.com`, so they reach no trigger. Test with a real change in the store.