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.

OpenAPI Specification

walmart-marketplace-inventory-openapi-original.yml Raw ↑
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