Walmart Inventory API
Maintaining up-to-date inventory for your items on Walmart.com ensures a great experience for your customers and greater sales opportunities for you.
Maintaining up-to-date inventory for your items on Walmart.com ensures a great experience for your customers and greater sales opportunities for you.
openapi: 3.0.1
info:
title: Walmart Inventory Management
description: Maintaining up-to-date inventory for your items on Walmart.com ensures a great experience for your customers and greater sales opportunities for you.
servers:
- url: https://marketplace.walmartapis.com
description: Production URL
- url: https://sandbox.walmartapis.com
description: Sandbox URL
security:
- basicScheme: []
paths:
"/v3/inventory":
get:
tags:
- Inventory
summary: Walmart Inventory
description: You can use this API to get the inventory for a given item.
operationId: getInventory
parameters:
- name: sku
in: query
description: 'An arbitrary alphanumeric unique ID, specified by the seller, which identifies each item. This will be used by the seller in the XSD file to refer to each item. Special characters in the sku needing encoding are: '':'', ''/'', ''?'', ''#'', ''['', '']'', ''@'', ''!'', ''$'', ''&'', "''", ''('', '')'', ''*'', ''+'', '','', '';'', ''='', ‘ ’, ''{'', ''}'' as well as ''%'' itself if it''s a part of sku. Make sure to encode space with %20. Other characters don''t need to be encoded.'
required: true
schema:
type: string
- name: shipNode
in: query
description: The shipNode for which the inventory is requested
required: false
schema:
type: string
- in: header
name: WM_SEC.ACCESS_TOKEN
description: The access token retrieved in the Token API call
required: true
schema:
type: string
example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....
- in: header
name: WM_CONSUMER.CHANNEL.TYPE
description: A unique ID to track the consumer request by channel. Use the Consumer Channel Type received during onboarding
required: false
schema:
type: string
- in: header
name: WM_QOS.CORRELATION_ID
description: A unique ID which identifies each API call and used to track and debug issues; use a random generated GUID for this ID
required: true
schema:
type: string
example: b3261d2d-028a-4ef7-8602-633c23200af6
- in: header
name: WM_SVC.NAME
description: Walmart Service Name
required: true
schema:
type: string
example: Walmart Service Name
responses:
'200':
description: Successful Operation
content:
application/json:
schema:
required:
- quantity
- sku
type: object
properties:
sku:
type: string
description: A seller-provided Product ID. Response will have decoded value.
quantity:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
xml:
name: inventory
example:
sku: 97964_KFTest
quantity:
unit: EACH
amount: 10
application/xml:
schema:
required:
- quantity
- sku
type: object
properties:
sku:
type: string
description: A seller-provided Product ID. Response will have decoded value.
quantity:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
xml:
name: inventory
example: |-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<inventory xmlns="http://walmart.com/">
<sku>97964_KFTest</sku>
<quantity>
<unit>EACH</unit>
<amount>10</amount>
</quantity>
</inventory>
put:
tags:
- Inventory
summary: Walmart Update Inventory
description: Updates the inventory for a given item.
operationId: updateInventoryForAnItem
parameters:
- name: sku
in: query
description: 'An arbitrary alphanumeric unique ID, specified by the seller, which identifies each item. This will be used by the seller in the XSD file to refer to each item. Special characters in the sku needing encoding are: '':'', ''/'', ''?'', ''#'', ''['', '']'', ''@'', ''!'', ''$'', ''&'', "''", ''('', '')'', ''*'', ''+'', '','', '';'', ''='', ‘ ’, ''{'', ''}'' as well as ''%'' itself if it''s a part of sku. Make sure to encode space with %20. Other characters don''t need to be encoded.'
required: true
schema:
type: string
- name: shipNode
in: query
description: The shipNode for which the inventory is to be updated.
required: false
schema:
type: string
- in: header
name: WM_SEC.ACCESS_TOKEN
description: The access token retrieved in the Token API call
required: true
schema:
type: string
example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....
- in: header
name: WM_CONSUMER.CHANNEL.TYPE
description: A unique ID to track the consumer request by channel. Use the Consumer Channel Type received during onboarding
required: false
schema:
type: string
- in: header
name: WM_QOS.CORRELATION_ID
description: A unique ID which identifies each API call and used to track and debug issues; use a random generated GUID for this ID
required: true
schema:
type: string
example: b3261d2d-028a-4ef7-8602-633c23200af6
- in: header
name: WM_SVC.NAME
description: Walmart Service Name
required: true
schema:
type: string
example: Walmart Service Name
requestBody:
description: File fields
content:
application/json:
schema:
required:
- quantity
- sku
type: object
properties:
sku:
type: string
description: A seller-provided Product ID. Response will have decoded value.
quantity:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
xml:
name: inventory
example:
sku: 97964_KFTest
quantity:
unit: EACH
amount: 10
application/xml:
schema:
required:
- quantity
- sku
type: object
properties:
sku:
type: string
description: A seller-provided Product ID. Response will have decoded value.
quantity:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
xml:
name: inventory
example: |-
<?xml version="1.0" encoding="UTF-8"?>
<inventory xmlns="http://walmart.com/">
<sku>97964_KFTest</sku>
<quantity>
<unit>EACH</unit>
<amount>3</amount>
</quantity>
</inventory>
required: true
responses:
'200':
description: Successful Operation
content:
application/json:
schema:
required:
- quantity
- sku
type: object
properties:
sku:
type: string
description: A seller-provided Product ID. Response will have decoded value.
quantity:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
xml:
name: inventory
example:
sku: 97964_KFTest
quantity:
unit: EACH
amount: 10
application/xml:
schema:
required:
- quantity
- sku
type: object
properties:
sku:
type: string
description: A seller-provided Product ID. Response will have decoded value.
quantity:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
xml:
name: inventory
example: |-
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<inventory xmlns="http://walmart.com/">
<sku>97964_KFTest</sku>
<quantity>
<unit>EACH</unit>
<amount>3</amount>
</quantity>
</inventory>
"/v3/inventories/{sku}":
get:
tags:
- Inventory
summary: Walmart Single Item Inventory by Ship Node
description: This API will retrieve the inventory count for an item across all ship nodes or one specific ship node. You can specify the ship node for which you want to fetch the inventory
operationId: getMultiNodeInventoryForSkuAndAllShipnodes
parameters:
- name: sku
in: path
description: 'An arbitrary alphanumeric unique ID, specified by the seller, which identifies each item. This will be used by the seller in the XSD file to refer to each item. Special characters in the sku needing encoding are: '':'', ''/'', ''?'', ''#'', ''['', '']'', ''@'', ''!'', ''$'', ''&'', "''", ''('', '')'', ''*'', ''+'', '','', '';'', ''='', ‘ ’ as well as ''%'' itself if it''s a part of sku. Make sure to encode space with %20. Other characters don''t need to be encoded.'
required: true
schema:
type: string
- name: shipNode
in: query
description: ShipNode Id of the ship node for which the inventory is requested
required: false
schema:
type: string
- in: header
name: WM_SEC.ACCESS_TOKEN
description: The access token retrieved in the Token API call
required: true
schema:
type: string
example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....
- in: header
name: WM_CONSUMER.CHANNEL.TYPE
description: A unique ID to track the consumer request by channel. Use the Consumer Channel Type received during onboarding
required: false
schema:
type: string
- in: header
name: WM_QOS.CORRELATION_ID
description: A unique ID which identifies each API call and used to track and debug issues; use a random generated GUID for this ID
required: true
schema:
type: string
example: b3261d2d-028a-4ef7-8602-633c23200af6
- in: header
name: WM_SVC.NAME
description: Walmart Service Name
required: true
schema:
type: string
example: Walmart Service Name
responses:
'200':
description: Successful Operation
content:
application/json:
schema:
type: object
properties:
sku:
type: string
description: An arbitrary alphanumeric unique ID, specified by the seller, which identifies each item.
nodes:
type: array
items:
type: object
properties:
shipNode:
type: string
description: ShipNode Id of the ship node for which the inventory is requested
inputQty:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity of an item that is input by the seller
availToSellQty:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity of an item that is available to be allocated to orders
errors:
type: array
items:
required:
- code
type: object
properties:
code:
type: string
field:
type: string
description:
type: string
info:
type: string
severity:
type: string
enum:
- INFO
- WARN
- ERROR
category:
type: string
enum:
- APPLICATION
- SYSTEM
- REQUEST
- DATA
causes:
type: array
xml:
wrapped: true
items:
type: object
properties:
code:
type: string
field:
type: string
type:
type: string
description:
type: string
xml:
name: Cause
errorIdentifiers:
type: object
additionalProperties:
type: object
xml:
name: Error
reservedQty:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
example:
sku: AR-CTIX-0092
nodes:
- shipNode: '100009'
inputQty:
unit: EACH
amount: 5
availToSellQty:
unit: EACH
amount: 3
reservedQty:
unit: EACH
amount: 2
put:
tags:
- Inventory
summary: Walmart Update Item Inventory Per Ship Node
description: This API will update the inventory for an item across one or more fulfillment centers, known as ship nodes.
operationId: updateMultiNodeInventory
parameters:
- name: sku
in: path
description: 'An arbitrary alphanumeric unique ID, specified by the seller, which identifies each item. This will be used by the seller in the XSD file to refer to each item. Special characters in the sku needing encoding are: '':'', ''/'', ''?'', ''#'', ''['', '']'', ''@'', ''!'', ''$'', ''&'', "''", ''('', '')'', ''*'', ''+'', '','', '';'', ''='', ‘ ’ as well as ''%'' itself if it''s a part of sku. Make sure to encode space with %20. Other characters don''t need to be encoded.'
required: true
schema:
type: string
- in: header
name: WM_SEC.ACCESS_TOKEN
description: The access token retrieved in the Token API call
required: true
schema:
type: string
example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....
- in: header
name: WM_CONSUMER.CHANNEL.TYPE
description: A unique ID to track the consumer request by channel. Use the Consumer Channel Type received during onboarding
required: false
schema:
type: string
- in: header
name: WM_QOS.CORRELATION_ID
description: A unique ID which identifies each API call and used to track and debug issues; use a random generated GUID for this ID
required: true
schema:
type: string
example: b3261d2d-028a-4ef7-8602-633c23200af6
- in: header
name: WM_SVC.NAME
description: Walmart Service Name
required: true
schema:
type: string
example: Walmart Service Name
requestBody:
description: Request fields
content:
application/json:
schema:
required:
- inventories
type: object
properties:
inventories:
required:
- nodes
type: object
properties:
nodes:
type: array
items:
required:
- inputQty
- shipNode
type: object
properties:
shipNode:
type: string
description: ShipNode Id of the ship node for which the inventory is requested
inputQty:
required:
- amount
- unit
type: object
properties:
unit:
type: string
description: 'The unit of measurement. Example: ''EACH'''
enum:
- EACH
amount:
type: number
description: Inventory Count
description: Quantity that has been ordered by the customers but not yet shipped
example:
inventories:
nodes:
- shipNode: '1000005050'
inputQty:
unit: EACH
amount: 88
- shipNode: '79897837271126017'
inputQty:
unit: EACH
amount: 55
required: true
responses:
'200':
description: Successful Operation
content:
application/json:
schema:
type: object
properties:
sku:
type: string
description: An arbitrary alphanumeric unique ID, specified by the seller, which identifies each item.
nodes:
type: array
items:
type: object
properties:
shipNode:
type: string
description: ShipNode Id of the ship node for which the inventory is requested
status:
type: string
description: 'Node Update status. Example: ''Success'''
errors:
type: array
description: Node Update Error description.
items:
required:
- code
type: object
properties:
code:
type: string
field:
type: string
description:
type: string
info:
type: string
severity:
type: string
enum:
- INFO
- WARN
- ERROR
category:
type: string
enum:
- APPLICATION
- SYSTEM
- REQUEST
- DATA
causes:
type: array
xml:
wrapped: true
items:
type: object
properties:
code:
type: string
field:
type: string
type:
type: string
description:
type: string
xml:
name: Cause
errorIdentifiers:
type: object
additionalProperties:
type: object
xml:
name: Error
example:
sku: '00757642886669_test_01'
nodes:
- shipNode: '1000005050'
status: Success
- shipNode: '79897837271126017'
status: Success
"/v3/feeds":
post:
tags:
- Inventory
summary: Walmart Bulk Item Inventory Update
description: "Updates inventory for items in bulk. \nSeller Can either use feed type \"inventory\" or \"MP_INVENTORY\" \n* Inventory spec 1.4 feed type: inventory \n* Inventory spec 1.5 feed type: MP_INVENTORY \n\nPlease Note: Multi Node Inventory Update Feed (feedType=MP_INVENTORY) only supports JSON Request and Responses. Refer to \"MultiNode_Bulk_Inventory_Update_Request.json\" for the corresponding request sample \n \nRefer to the <a href=\"https://developer.walmart.com/doc/us/us-mp/us-mp-inventory/\">guide section</a> for more detailed guide around each of the feed types \n\n Refer to the throttling limits before uploading the Feed Files."
operationId: updateBulkInventory
parameters:
- name: feedType
in: query
description: The feed Type
required: true
schema:
type: string
enum:
- inventory
- MP_INVENTORY
- name: shipNode
in: query
description: The shipNode for which the inventory is to be updated. Not required in case of Multi Node Inventory Update Feed (feedType=MP_INVENTORY)
required: false
schema:
type: string
- in: header
name: WM_SEC.ACCESS_TOKEN
description: The access token retrieved in the Token API call
required: true
schema:
type: string
example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....
- in: header
name: WM_CONSUMER.CHANNEL.TYPE
description: A unique ID to track the consumer request by channel. Use the Consumer Channel Type received during onboarding
required: false
schema:
type: string
- in: header
name: WM_QOS.CORRELATION_ID
description: A unique ID which identifies each API call and used to track and debug issues; use a random generated GUID for this ID
required: true
schema:
type: string
example: b3261d2d-028a-4ef7-8602-633c23200af6
- in: header
name: WM_SVC.NAME
description: Walmart Service Name
required: true
schema:
type: string
example: Walmart Service Name
requestBody:
content:
multipart/form-data:
schema:
required:
- file
type: object
properties:
file:
type: string
description: Feed file to upload
format: binary
examples:
json1:
value:
InventoryHeader:
version: '1.4'
Inventory:
- sku: test1
quantity:
unit: EACH
amount: 10
- sku: '894728'
quantity:
unit: EACH
amount: 20
MultiNode_Bulk_Inventory_Update_Request:
value:
inventoryHeader:
version: '1.5'
inventory:
- sku: '190086893939'
shipNodes:
- shipNode: '10000003527'
quantity:
unit: EACH
amount: 100
- sku: 685387364107_SS4_01
shipNodes:
- shipNode: '10000003527'
quantity:
unit: EACH
amount: 21
- sku: 5700521553133_toolsnonwfs_2
shipNodes:
- shipNode: '10000003527'
quantity:
unit: EACH
amount: 13
- shipNode: '1000000352'
quantity:
unit: EACH
amount: 12
xml1:
value: |
<InventoryFeed xmlns="http://walmart.com/">
<InventoryHeader>
<version>1.5</version>
</InventoryHeader>
<inventory>
<sku>test1</sku>
<quantity>
<unit>EACH</unit>
<amount>10</amount>
</quantity>
</inventory>
<inventory>
<sku>894728</sku>
<quantity>
<unit>EACH</unit>
<amount>20</amount>
</quantity>
</inventory>
</InventoryFeed>
responses:
'200':
description: Successful Operation
content:
application/json:
schema:
type: object
properties:
feedId:
type: string
description: A unique ID, returned from the Bulk Upload API, used for tracking the feed file
additionalAttributes:
type: object
nullable: true
errors:
typ
# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/walmart/refs/heads/main/openapi/walmart-marketplace-inventory-openapi-original.yml