> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # Package: catalogV1 # Namespace: inventory # Webhook link: https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/inventory/inventory-variants-changed.md ## Introduction Triggered when inventory variants are changed. --- ## REST API ### Schema ``` Webhook: Inventory Variants Changed Description: Triggered when inventory variants are changed. Payload: InventoryVariantsChanged - name: inventoryItemId | type: string | description: Inventory item GUID. - name: productId | type: string | description: Product GUID. - name: variants | type: array | description: Information about changed variants. - name: id | type: string | description: Variant GUID. - name: oldValue | type: ChangedInventoryVariantData | description: Previous inventory variant data. - name: quantity | type: integer | description: Inventory variant quantity. - name: inStock | type: boolean | description: Whether the product variant is in stock. - name: availableForPreorder | type: boolean | description: Whether the variant is available for preorder. When `true`, the variant is out of stock and preorder is enabled on inventory level. - name: newValue | type: ChangedInventoryVariantData | description: Current inventory variant data. - name: updatedDate | type: string | description: Date and time the inventory variant item was last updated. ``` ### Examples ```curl { "inventoryItemId": "81b0fdc0-ac2d-8f25-cf44-ce99d4c3f6a0", "externalId": "7e4f023f-53d2-70da-30bb-31662b3c095f", "productId": "7e4f023f-53d2-70da-30bb-31662b3c095f", "variants": [ { "id": "00000000-0000-0001-0005-918e4641acb0", "oldValue": { "inStock": true }, "newValue": { "inStock": false } }, { "id": "00000000-0000-0003-0005-918e4641acb0", "oldValue": { "inStock": true }, "newValue": { "inStock": false } } ] } ``` --- ## JavaScript SDK ### Schema ``` Webhook: onInventoryVariantsChanged Description: Triggered when inventory variants are changed. Payload: InventoryVariantsChangedEnvelope - name: data | type: InventoryVariantsChanged | description: none - name: inventoryItemId | type: string | description: Inventory item GUID. - name: productId | type: string | description: Product GUID. - name: variants | type: array | description: Information about changed variants. - name: _id | type: string | description: Variant GUID. - name: oldValue | type: ChangedInventoryVariantData | description: Previous inventory variant data. - name: quantity | type: integer | description: Inventory variant quantity. - name: inStock | type: boolean | description: Whether the product variant is in stock. - name: availableForPreorder | type: boolean | description: Whether the variant is available for preorder. When `true`, the variant is out of stock and preorder is enabled on inventory level. - name: newValue | type: ChangedInventoryVariantData | description: Current inventory variant data. - name: _updatedDate | type: Date | description: Date and time the inventory variant item was last updated. - name: metadata | type: BaseEventMetadata | description: none - name: instanceId | type: string | description: App instance GUID. - name: eventType | type: string | description: Event type. - name: identity | type: IdentificationData | description: The identification type and identity data. - ONE-OF: - name: anonymousVisitorId | type: string | description: GUID of a site visitor that has not logged in to the site. - name: memberId | type: string | description: GUID of a site visitor that has logged in to the site. - name: wixUserId | type: string | description: GUID of a Wix user (site owner, contributor, etc.). - name: appId | type: string | description: GUID of an app. - name: identityType | type: WebhookIdentityType | description: - enum: UNKNOWN, ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP - name: accountInfo | type: AccountInfo | description: Details related to the account - name: accountId | type: string | description: GUID of the Wix account associated with the event. - name: parentAccountId | type: string | description: GUID of the parent Wix account. Only included when accountId belongs to a child account. - name: siteId | type: string | description: GUID of the Wix site associated with the event. Only included when the event is tied to a specific site. ``` ### Examples ```javascript import { inventory } from '@wix/stores'; inventory.onInventoryVariantsChanged((event) => { // handle your event here }); ``` ```javascript import { createClient, AppStrategy } from '@wix/sdk'; import { inventory } from '@wix/stores'; const wixClient = createClient({ auth: AppStrategy({ appId: 'MY-APP-ID', publicKey: 'YOUR_APP_PUBLIC_KEY', }), modules: { inventory, }, }); wixClient.inventory.onInventoryVariantsChanged((event) => { // handle your event here }); ``` ---