Walmart Dropship Vendor Inventory API

Walmart's Inventory Management API provide drop ship vending (DSV) suppliers with mechanisms to update and view current item inventory levels at each ship node, also known as fulfillment centers. Suppliers assign each item they fulfill drop ship vending (DSV) through one or more ship nodes. Suppliers must accurately maintain the item's inventory level at each ship node to ensure availability for customer orders.

OpenAPI Specification

walmart-dropship-vendor-inventory-openapi-original.yml Raw ↑
openapi: 3.0.1
info:
  title: Walmart Inventory Management
  description: "Maintaining up-to-date inventory for items on Walmart.com ensures a great customer experience as well as greater sales opportunities. \n\nRequests in the Inventory Management API allow management of current or recently changed inventory supply.\n\n**May 2024**<br>Built: 05/15/2024, 17:18:37\n"
  version: '1.0'
servers:
  - url: https://api-gateway.walmart.com
    description: Production URL
  - url: https://sandbox.walmartapis.com
    description: Sandbox URL
paths:
  "/v3/inventory":
    get:
      tags:
        - Inventory
      operationId: getInventory
      summary: Walmart Retrieve Inventory Count for a Single Item at One Ship Node
      description: |
        <p style="color:red; font-size:larger">GET <walmartAuthServerUrl>/v3/inventory</p>

        This request retrieves the inventory count for a single item for one specific ship node.
      parameters:
        - in: query
          name: sku
          required: false
          schema:
            type: string
          description: |
            Specifies the stock keeping unit (SKU) item identifier.

            This value is an identifier that is specified by the drop ship vendor (DSV).
            It is used by the vendor in the specification file to refer to each item.

            Example(s):<br>
            RG-IRAE-79VD
          example: RG-IRAE-79VD
        - in: query
          name: gtin
          required: true
          schema:
            type: string
          description: |
            Specifies the global trade item number (GTIN) item identifier.

            The global trade item number is a 14-digit number, including the check digit, that is used worldwide and identifies the Each. If the user's number is less than 14 digits, add zeros at the beginning.

            Either the `sku` or `gtin` parameter will be required. The user can only submit one.

            Example(s):<br>
            00097531246801
          example: '00097531246801'
        - in: query
          name: shipNode
          required: true
          schema:
            type: string
          description: "Specifies the distribution facility distributor identifier.\n\nThis parameter identifies each facility from which the inventory is requested. \nThe identifier is autogenerated during drop ship vendor (DSV) account creation. \nEvery time users add or update a facility in Supplier Center, a new identifier is generated. \nEnsure this value is up to date.\n\nExample(s):<br>\n123456701\n"
          example: '123456701'
        - in: header
          name: Accept
          required: false
          schema:
            type: string
          description: |
            Specifies the data type expected in a response sent from the server.

            Valid values are:

            | Value | Meaning |
            | --- | --- |
            | application/xml | XML format for data returned in response. |
            | application/json | JSON format for data returned in response. |
          example: application/xml
        - in: header
          name: WM_CONSUMER.CHANNEL.TYPE
          required: false
          schema:
            type: string
          description: |
            Specifies an identifier that tracks the consumer request by channel.

            Use the consumer channel type received during onboarding.

            See the system administrator or developer management for the `WM_CONSUMER.CHANNEL.TYPE` value.
          example: 0f3e4dd4-0514-4346-b39d-…
        - in: header
          name: WM_QOS.CORRELATION_ID
          required: true
          schema:
            type: string
          description: |
            Specifies an identifier for each API call and is used to track and debug issues.

             This may be any value, but cannot be null or omitted.
          example: 6474-a253
        - in: header
          name: WM_SEC.ACCESS_TOKEN
          required: true
          schema:
            type: string
          description: |
            Specifies the access token retrieved in the <a href="https://developer.walmart.com/api/us/supplier/auth#operation/dsvTokenAPI">Create Access Token</a> request.

            This value is required for token-based authentication.
          example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM…
      responses:
        '200':
          description: Successful Operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  sku:
                    type: string
                    description: |
                      Indicates the stock keeping unit (SKU) item identifier.

                      This is a product identifier provided by the drop ship vendor (DSV) to identify each item.

                      Example(s):<br>
                      1487132332472
                    example: '1487132332472'
                  gtin:
                    type: string
                    description: |
                      Indicates the global trade item number (GTIN) item identifier.

                      Example(s):<br>
                      00012947218283
                    example: '00012947218283'
                  quantity:
                    type: object
                    description: 'Indicates an object for information about the quantity in inventory.

                      '
                    properties:
                      unit:
                        type: string
                        description: |
                          Indicates the quantity unit of measurement of an item.

                          Example(s):<br>
                          EACH
                        example: EACH
                      amount:
                        type: number
                        description: |
                          Indicates the value for quantity of an item.

                          Example(s):<br>
                          23
                        example: 23
    put:
      tags:
        - Inventory
      operationId: putUpdateInventory
      summary: Walmart Update Inventory Count for a Single Item
      description: |
        <p style="color:red; font-size:larger">PUT <walmartAuthServerUrl>/v3/inventory</p>

        This request updates the inventory for an item, with the item global trade item number (GTIN) as the primary item identifier. Use an availability code to identify how inventory quantity is managed for an item.

        The following are valid availability codes:

        | Code | Use |
        | --- | --- |
        | AC | Use for standard or normal inventory updates. |
        | AA | Use for an item with infinite or unlimited inventory. Quantity is not required when set to AA. |

        Drop ship vendors (DSV) send the `onHand` quantity in the amount field as one whole quantity (unit and value).
      parameters:
        - in: query
          name: shipNode
          required: true
          schema:
            type: string
          description: "Specifies the distribution facility distributor identifier.\n\nThis parameter identifies each facility from which the inventory is requested. \nThe identifier is autogenerated during drop ship vendor (DSV) account creation. \nEvery time users add or update a facility in Supplier Center, a new identifier is generated. \nEnsure this value is up to date.\n\nExample(s):<br>\n123456701\n"
          example: '123456701'
        - in: header
          name: Accept
          required: false
          schema:
            type: string
          description: |
            Specifies the data type expected in a response sent from the server.

            Valid values are:

            | Value | Meaning |
            | --- | --- |
            | application/xml | XML format for data returned in response. |
            | application/json | JSON format for data returned in response. |
          example: application/xml
        - in: header
          name: WM_CONSUMER.CHANNEL.TYPE
          required: false
          schema:
            type: string
          description: |
            Specifies an identifier that tracks the consumer request by channel.

            Use the consumer channel type received during onboarding.

            See the system administrator or developer management for the `WM_CONSUMER.CHANNEL.TYPE` value.
          example: 0f3e4dd4-0514-4346-b39d-…
        - in: header
          name: WM_QOS.CORRELATION_ID
          required: true
          schema:
            type: string
          description: "Specifies an identifier for each API call and is used to track and debug issues.\n\n This may be any value, but cannot be null or omitted. \n"
          example: 6474-a253
        - in: header
          name: WM_SEC.ACCESS_TOKEN
          required: true
          schema:
            type: string
          description: |
            Specifies the access token retrieved in the <a href="https://developer.walmart.com/api/us/supplier/auth#operation/dsvTokenAPI">Create Access Token</a> request.

            This value is required for token-based authentication.
          example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM…
      requestBody:
        description: Request fields
        content:
          applications/json:
            schema:
              type: object
              required:
                - gtin
                - availabilityCode
                - quantity
              properties:
                gtin:
                  type: string
                  description: |
                    Specifies the global trade item number (GTIN) item identifier.

                    The global trade item number is a 14-digit number, including the check digit, that is used worldwide and identifies the Each. If the user's number is less than 14 digits, add zeros at the beginning.

                    Either the `sku` or `gtin` parameter will be required. The user can only submit one.

                    Example(s):<br>
                    00097531246801
                  example: '00097531246801'
                availabilityCode:
                  type: string
                  description: "Specifies how to manage the inventory update.\n\nValid values are: \n\n| Value | Meaning |\n| --- | --- |\n| AC | The code used for standard inventory updates. Assign this code to an item with normal inventory. |\n| AA | The code used for an item with infinite inventory. If users set `AA` as the availability code, they do not need to provide inventory for the item. |\n\nExample(s):<br>\nAC<br>\nAA\n"
                  enum:
                    - AC
                    - AA
                  example: AC
                quantity:
                  type: object
                  description: 'Specifies an object for information about the quantity in inventory.

                    '
                  required:
                    - unit
                  properties:
                    unit:
                      type: string
                      description: |
                        Specifies the quantity unit of measurement of an item.

                        Example(s):<br>
                        EACH
                      example: EACH
                    amount:
                      type: number
                      description: |
                        Specifies the value for quantity of an item.

                        Example(s):<br>
                        23
                      example: 23
            examples:
              GTIN:
                value:
                  gtin: '00012947218283'
                  availabilityCode: AC
                  quantity:
                    unit: EACH
                    amount: 23
      responses:
        '200':
          description: Successful Operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  sku:
                    type: string
                    description: |
                      Indicates the stock keeping unit (SKU) item identifier.

                      This is a product identifier provided by the drop ship vendor (DSV) to identify each item.

                      Example(s):<br>
                      1487132332472
                    example: '1487132332472'
                  gtin:
                    type: string
                    description: |
                      Indicates the global trade item number (GTIN) item identifier.

                      Example(s):<br>
                      00012947218283
                    example: '00012947218283'
                  quantity:
                    type: object
                    description: 'Indicates an object for information about the quantity in inventory.

                      '
                    properties:
                      unit:
                        type: string
                        description: |
                          Indicates the quantity unit of measurement of an item.

                          Example(s):<br>
                          EACH
                        example: EACH
                      amount:
                        type: number
                        description: |
                          Indicates the value for quantity of an item.

                          Example(s):<br>
                          23
                        example: 23
  "/v3/feeds":
    post:
      tags:
        - Inventory
      operationId: postBulkUpdateInventory
      summary: Walmart Update Inventory Count for Items in Bulk
      description: |
        <p style="color:red; font-size:larger">POST <walmartAuthServerUrl>/v3/feeds</p>

        This request updates inventory for items in bulk for suppliers.

        `DSV_INVENTORY`: This feed type updates inventory across multiple ship nodes across multiple products. The `DSV_INVENTORY` feed type only supports JSON requests and responses.

        For more information about feed types, see the <a href="https://developer.walmart.com/doc/us/us-supplier/us-supplier-inventory/">DSV Inventory Guide</a>.
      parameters:
        - in: query
          name: feedType
          required: true
          schema:
            type: string
          description: "Specifies the feed type. \n\nValid values are: \n\n| Value | Meaning |\n| --- | --- |\n| DSV_INVENTORY | This feed type updates inventory across multiple ship nodes across multiple products. |\n\nExample(s):<br>\nDSV_INVENTORY\n"
          example: DSV_INVENTORY
        - in: header
          name: Accept
          required: false
          schema:
            type: string
          description: |
            Specifies the data type expected in a response sent from the server.

            Valid values are:

            | Value | Meaning |
            | --- | --- |
            | application/xml | XML format for data returned in response. |
            | application/json | JSON format for data returned in response. |
          example: application/xml
        - in: header
          name: WM_CONSUMER.CHANNEL.TYPE
          required: false
          schema:
            type: string
          description: |
            Specifies an identifier that tracks the consumer request by channel.

            Use the consumer channel type received during onboarding.

            See the system administrator or developer management for the `WM_CONSUMER.CHANNEL.TYPE` value.
          example: 0f3e4dd4-0514-4346-b39d-…
        - in: header
          name: WM_QOS.CORRELATION_ID
          required: true
          schema:
            type: string
          description: "Specifies an identifier for each API call and is used to track and debug issues.\n\n This may be any value, but cannot be null or omitted. \n"
          example: 6474-a253
        - in: header
          name: WM_SEC.ACCESS_TOKEN
          required: true
          schema:
            type: string
          description: |
            Specifies the access token retrieved in the <a href="https://developer.walmart.com/api/us/supplier/auth#operation/dsvTokenAPI">Create Access Token</a> request.

            This value is required for token-based authentication.
          example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM…
        - in: header
          name: Content-Type
          required: true
          schema:
            type: string
          description: "Specifies the format of request and response body data. \n\nIt specifies if the payload is JSON, XML, form data, or other data type. \nSetting `Content-Type` appropriately is essential when exchanging formatted data with APIs.\n\nValid values are:\n\n| Value | Meaning |\n| --- | --- |\n| application/json | JSON format for request and response body data. |\n| multipart/form-data | Multipart form data format for request and response body data. |\n"
          example: application/json
      requestBody:
        description: Request fields
        content:
          applications/json:
            schema:
              type: object
              required:
                - InventoryFeedHeader
                - Inventory
              properties:
                InventoryFeedHeader:
                  type: object
                  description: 'Specifies an object for inventory feed header information.

                    '
                  required:
                    - version
                    - feedType
                    - feedDate
                    - locale
                    - businessUnit
                  properties:
                    version:
                      type: string
                      description: |
                        Specifies the inventory feed header version.

                        Example(s):<br>
                        2.0.20220829-15_11_50-api
                      example: 2.0.20220829-15_11_50-api
                    feedType:
                      type: string
                      description: |
                        Specifies the feed type for inventory feed header information.

                        Valid values are:

                        | Value | Meaning |
                        | --- | --- |
                        | DSV_INVENTORY | This feed type updates inventory across multiple ship nodes across multiple products. There are two versions: v2.x and v1.5. |
                        | inventory | This feed type supports updating inventory across multiple ship nodes across multiple products. There is one version: v1.4. |

                        Example(s):<br>
                        DSV_INVENTORY
                      example: DSV_INVENTORY
                    feedDate:
                      type: string
                      format: date-time
                      description: |
                        Specifies the inventory feed header feed date, in ISO 8601 format.

                        Example(s):<br>
                        2023-03-13T13:03:33.000Z
                      example: '2023-03-13T13:03:33.000Z'
                    locale:
                      type: string
                      description: |
                        Specifies the inventory feed header locale.

                        Example(s):<br>
                        en
                      example: en
                    businessUnit:
                      type: string
                      description: |
                        Specifies the inventory feed header business unit.

                        Example(s):<br>
                        WALMART_US
                      example: WALMART_US
                Inventory:
                  type: array
                  description: 'Specifies an array of objects for inventory information.

                    '
                  items:
                    type: object
                    required:
                      - productId
                      - shipNode
                      - availabilityCode
                    properties:
                      productId:
                        type: string
                        description: |
                          Specifies the product identifier for the item.

                          This parameter can only be a global trade item number (GTIN).

                          The global trade item number (GTIN) is a 14-digit number, including the check digit, that is used worldwide and identifies the Each. If the user's number is less than 14 digits, add zeros at the beginning.

                          Example(s):<br>
                          00097531246801
                        example: '00097531246801'
                      shipNode:
                        type: string
                        description: "Specifies the distribution facility distributor identifier.\n\nThis parameter identifies each facility from which the inventory is requested. \nThe identifier is autogenerated during drop ship vendor (DSV) account creation. \nEvery time users add or update a facility in Supplier Center, a new identifier is generated. \nEnsure this value is up to date.\n\nExample(s):<br>\n123456701\n"
                        example: '123456701'
                      availabilityCode:
                        type: string
                        description: "Specifies how to manage the inventory update.\n\nValid values are: \n\n| Value | Meaning |\n| --- | --- |\n| AC | The code used for standard inventory updates. Assign this code to an item with normal inventory. |\n| AA | The code used for an item with infinite inventory. If users set `AA` as the availability code, they do not need to provide inventory for the item. |\n\nExample(s):<br>\nAC<br>\nAA\n"
                        enum:
                          - AC
                          - AA
                        example: AC
                      quantity:
                        type: integer
                        description: "Specifies the number of available units a drop ship vendor (DSV) supplier has onhand to sell. \n\nThis value includes the number of units in the process of being shipped.\n\nExample(s):<br>\n100\n"
                        example: 100
            examples:
              v2.X:
                value:
                  InventoryFeedHeader:
                    feedType: DSV_INVENTORY
                    version: 2.0.20220829-15_11_50-api
                    businessUnit: WALMART_US
                    locale: en
                    feedDate: '2023-03-13T13:03:33.000Z'
                  Inventory:
                    - quantity: 10
                      productId: '01234567891011'
                      shipNode: '123456701'
                      availabilityCode: AC
                    - quantity: 11
                      productId: '01234567891011'
                      shipNode: '123456702'
                      availabilityCode: AC
                    - quantity: 12
                      productId: '01234567891010'
                      shipNode: '123456701'
                      availabilityCode: AC
      responses:
        '200':
          description: Successful Operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  feedId:
                    type: string
                    description: "Indicates the identifier returned from the <a href=\"https://developer.walmart.com/api/us/supplier/items#operation/itemBulkUploads\">POST Bulk Item Upload request</a>, used for tracking the feed file. \n\nExample(s):<br>\n991B8779687C4D5DBC06DF18DB167192@AQkBAQA\n"
                    example: 991B8779687C4D5DBC06DF18DB167192@AQkBAQA
  "/v3/inventories/{id}":
    get:
      tags:
        - Inventory
      operationId: getSingleItemInventory
      summary: Walmart Retrieve Inventory Count for a Single Item at Specific Ship Nodes
      description: "<p style=\"color:red; font-size:larger\">POST <walmartAuthServerUrl>/v3/inventories/{id}</p>\n\nThis request retrieves the inventory count for an item across multiple ship nodes or for one specific ship node. \n\nUsers can specify the ship node(s) for which they want to fetch the inventory.\n"
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
          description: |
            Specifies the value of the stock keeping unit (SKU) or global trade item number (GTIN) item identifier.

            This value is provided by the drop ship vendor (DSV) to identify each item.

            Example(s):<br>
            1487132332472<br>
            00012947218283
          example: '00012947218283'
        - in: query
          name: shipNode
          required: false
          schema:
            type: string
          description: |
            Specifies the distribution facility distributor identifier.

            This parameter identifies each facility from which the inventory is requested.
            The identifier is autogenerated during drop ship vendor (DSV) account creation.
            Every time users add or update a facility in Supplier Center, a new identifier is generated.
            Ensure this value is up to date.

            Example(s):<br>
            123456701
          example: '123456701'
        - in: query
          name: productIdType
          required: true
          schema:
            type: string
          description: "Specifies the type of item identifier the user is searching.\n\nThe value defaults to `sku`.\n\nExample(s):<br>\ngtin<br>\nsku \n"
          example: sku
        - in: header
          name: Accept
          required: false
          schema:
            type: string
          description: |
            Specifies the data type expected in a response sent from the server.

            Valid values are:

            | Value | Meaning |
            | --- | --- |
            | application/json | JSON format for data returned in response. |
          example: application/json
        - in: header
          name: WM_CONSUMER.CHANNEL.TYPE
          required: false
          schema:
            type: string
          description: |
            Specifies an identifier that tracks the consumer request by channel.

            Use the consumer channel type received during onboarding.

            See the system administrator or developer management for the `WM_CONSUMER.CHANNEL.TYPE` value.
          example: 0f3e4dd4-0514-4346-b39d-…
        - in: header
          name: WM_QOS.CORRELATION_ID
          required: true
          schema:
            type: string
          description: "Specifies an identifier for each API call and is used to track and debug issues.\n\n This may be any value, but cannot be null or omitted. \n"
          example: 6474-a253
        - in: header
          name: WM_SEC.ACCESS_TOKEN
          required: true
          schema:
            type: string
          description: |
            Specifies the access token retrieved in the <a href="https://developer.walmart.com/api/us/supplier/auth#operation/dsvTokenAPI">Create Access Token</a> request.

            This value is required for token-based authentication.
          example: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM…
      responses:
        '200':
          description: Successful Operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  sku:
                    type: string
                    description: |
                      Indicates the stock keeping unit (SKU) item identifier.

                      This is a product identifier provided by the drop ship vendor (DSV) to identify each item.

                      Example(s):<br>
                      1487132332472
                    example: '1487132332472'
                  gtin:
                    type: string
                    description: |
                      Indicates the global trade item number (GTIN) item identifier.

                      Example(s):<br>
                      00012947218283
                    example: '00012947218283'
                  nodes:
                    type: array
                    description: 'Indicates an array for nodes, to include ship node and allocated quantity.

                      '
                    items:
                      type: object
                      properties:
                        shipNode:
                          type: string
                          description: |
                            Indicates the distribution facility distributor identifier for which the inventory is requested.

                            Example(s):<br>
                            123456701
                          example: '123456701'
                        inputQty:
                          type: object
                          description: "Indicates an object for the on-hand inventory quantity of an item that is provided by the supplier. \n\nInput or on-hand inventory is the total inventory, with the amount factoring in both `availToSellQty` and `reservedQty`.\n"
                          properties:
                            unit:
                              type: string
                              description: |
                                Indicates the unit of measurement the quantity of an item.

                                Example(s):<br>
                                EACH
                              example: EACH
                            amount:
                              type: number
                              description: |
                                Indicates the value for the quantity of an item.

                                Example(s):<br>
                                214
                              example: 214
                        availToSellQty:
                          type: object
                          description: 'Indicates an object for the quantity of an item that is available to be allocated to orders.

                            '
                          properties:
                            unit:
                              type: string
                              description: |
                                Indicates the unit of measurement the quantity of an item.

                                Example(s):<br>
                                EACH
                              example: EACH
                            amount:
                              type: number
                              description: |
                                Indicates the value for the quantity of an item.

                                Example(s):<br>
                                21
                              example: 21
                        reservedQty:
                          type: object
                          description: 'Indicates an object for the quantity that has been ordered by the customers, but not yet shipped.

                            '
                          properties:
                            unit:
                              type: string
                              description: |
                                Indicates the unit of measurement the quantity of an item.

                                Example(s):<br>
                                EACH
                              example: EACH
                            amount:
                              type: number
                              description: |
                                Indicates the value for the quantity of an item.

                                Example(s):<br>
                                24
                              example: 24
components:
  schemas:
    getInventory-200-response:
      type: object
      properties:
        sku:
          type: string
          description: |
            Indicates the stock keeping unit (SKU) item identifier.

            This is a product identifier provided by the drop ship vendor (DSV) to identify each item.

            Example(s):<br>
            1487132332472
          example: '1487132332472'
        gtin:
          type: string
          description: |
            Indicates the global trade item number (GTIN) item identifier.

            Example(s):<br>
            00012947218283
          example: '00012947218283'
        quantity:
          type: object
          description: 'Indicates an object for information about the quantity in inventory.

            '
          properties:
            unit:
              type: string
              description: |
                Indicates the quantity unit of measurement of an

# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/walmart/refs/heads/main/openapi/walmart-dropship-vendor-inventory-openapi-original.yml