> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usenash.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create or update inventory

> Create or update inventory levels for products at specific store locations. Links products to store locations with quantity and availability information.



## OpenAPI

````yaml post /v1/inventory
openapi: 3.1.0
info:
  title: Nash API
  version: 1.0.0
servers:
  - url: https://api.sandbox.usenash.com
    description: Sandbox API
  - url: https://api.sandbox.ap-southeast-2.usenash.com
    description: Sandbox API (Australia)
  - url: https://api.usenash.com
    description: Production API
  - url: https://api.ap-southeast-2.usenash.com
    description: Production API (Australia)
security: []
tags:
  - name: Notifications
    description: Notifications
    x-nash-topic: config
  - name: Annotate
    description: Annotate
    x-nash-topic: wismo
  - name: Notifications — Send
    description: One-off notification send without a NotificationTrigger.
    x-nash-topic: notifications
  - name: Shipping
    description: Shipping operations
    x-nash-topic: shipping
  - name: Workflow
    description: Workflow automation management
    x-nash-topic: scheduling
  - name: Workflow Execution
    description: Workflow execution history and monitoring
    x-nash-topic: scheduling
  - name: Optimization Strategies
    description: Create, read, update, and delete route optimization strategies.
    x-nash-topic: scheduling
  - name: AI Agents
    description: AI agent management — create, read, update, and delete agents
    x-nash-topic: config
  - name: AI Functions
    description: LLM-backed domain tools
    x-nash-topic: ai
  - name: Webhooks
    description: Webhook delivery inspection
    x-nash-topic: webhooks
  - name: Fleet Simulator
    description: Simulate delivery status transitions in dev and sandbox environments.
    x-nash-topic: testing
  - name: Miscellaneous
    description: Miscellaneous
  - name: Job
    description: Job
    x-nash-topic: wismo
  - name: Batch Job
    description: Batch Job
    x-nash-topic: wismo
  - name: Order
    description: Order
    x-nash-topic: wismo
  - name: Route
    description: Route
    x-nash-topic: scheduling
  - name: Provider
    description: Provider
    x-nash-topic: provider
  - name: Dispatch Strategies
    description: Dispatch Strategies
    x-nash-topic: scheduling
  - name: Store Locations
    description: Store Locations
    x-nash-topic: config
  - name: Vehicles
    description: Vehicles
    x-nash-topic: provider
  - name: Couriers
    description: Couriers
    x-nash-topic: provider
  - name: Shifts
    description: Shifts
    x-nash-topic: provider
  - name: Delivery Windows
    description: Delivery Windows
    x-nash-topic: config
  - name: Templates
    description: Templates
    x-nash-topic: config
  - name: Zones
    description: Zones
    x-nash-topic: config
  - name: Feedback
    description: Feedback
    x-nash-topic: reporting
  - name: Organizations
    description: Organizations
    x-nash-topic: config
  - name: Store Catalog
    description: Store Catalog
    x-nash-topic: config
  - name: Messaging
    description: Messaging
    x-nash-topic: config
  - name: Contracts
    description: Provider contract pricing and version listings
    x-nash-topic: provider
  - name: Event Timeline
    description: Entity-scoped event timeline + outbound provider traffic for one entity.
    x-nash-topic: internal
  - name: Fleet
    description: Inbound endpoints fleets call to update in-flight deliveries.
    x-nash-topic: delivery
  - name: Route Restrictions
    description: Org-scoped geographic areas the route optimizer must avoid traversing.
    x-nash-topic: config
  - name: Users
    description: User, role, and organization-membership management.
    x-nash-topic: config
paths:
  /v1/inventory:
    post:
      tags:
        - Store Catalog
      summary: Create or update inventory
      description: >-
        Create or update inventory levels for products at specific store
        locations. Links products to store locations with quantity and
        availability information.
      operationId: upsert_inventory_v1_inventory_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StoreInventoryListInputSerializer'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreInventoryListOutputSerializer'
        '422':
          description: Unprocessable Content
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NashValidationError'
components:
  schemas:
    StoreInventoryListInputSerializer:
      title: StoreInventoryListInputSerializer
      required:
        - inventory
      type: object
      properties:
        inventory:
          title: Inventory
          type: array
          items:
            $ref: '#/components/schemas/StoreInventoryInputSerializer'
          description: List of store inventory to create or update
    StoreInventoryListOutputSerializer:
      title: StoreInventoryListOutputSerializer
      type: array
      items:
        $ref: '#/components/schemas/StoreInventoryOutputSerializer'
      description: >-
        Expected output when listing products, it will return an array of
        StoreInventoryOutputSerializer.
    NashValidationError:
      title: NashValidationError
      required:
        - error
        - response_status
        - RequestID
      type: object
      properties:
        error:
          $ref: '#/components/schemas/NashErrorDetails'
        response_status:
          title: Response Status
          type: string
        RequestID:
          title: Requestid
          type: string
    StoreInventoryInputSerializer:
      title: StoreInventoryInputSerializer
      required:
        - available
      type: object
      properties:
        externalProductId:
          title: Externalproductid
          anyOf:
            - type: string
            - type: 'null'
          description: The external product ID from an external system
          default: null
          example: ext_001
        externalStoreLocationId:
          title: Externalstorelocationid
          anyOf:
            - type: string
            - type: 'null'
          description: The external store ID from an external system
          default: null
          example: store_001
        quantity:
          title: Quantity
          anyOf:
            - type: integer
            - type: 'null'
          description: The quantity of the product in stock
          default: null
          example: 50
        valueCents:
          title: Valuecents
          anyOf:
            - type: integer
            - type: 'null'
          description: The price of the product in cents
          default: null
          example: 299
        currency:
          title: Currency
          anyOf:
            - type: string
            - type: 'null'
          description: The currency code for the product price
          default: null
          example: USD
        available:
          title: Available
          type: boolean
          description: Whether the product is available for purchase
          example: true
        location:
          anyOf:
            - $ref: '#/components/schemas/LocationDataInputSerializer'
            - type: 'null'
          description: The location data for the product in the store
          default: null
          example:
            aisle: Produce
            bay: Fruits
            shelf: Bananas
        details:
          anyOf:
            - $ref: '#/components/schemas/StoreInventoryDetailsInputSerializer'
            - type: 'null'
          description: Additional inventory details
          default: null
          example:
            weightedItemInfo:
              valueCentsPerMeasurementUnit: 120
        providerConfigs:
          title: Providerconfigs
          anyOf:
            - type: array
              items:
                $ref: '#/components/schemas/InventoryProviderConfigInputSerializer'
            - type: 'null'
          description: Provider-specific configurations for this inventory item
          default: null
          example:
            - currency: USD
              details:
                weightedItemInfo:
                  valueCentsPerMeasurementUnit: 135
              discount:
                endTime: '2025-12-17T00:00:00Z'
                startTime: '2025-12-10T00:00:00Z'
                valueCents: 270
              provider: X
              serviceType: pick_and_deliver
              valueCents: 299
    StoreInventoryOutputSerializer:
      title: StoreInventoryOutputSerializer
      required:
        - id
        - productId
        - storeLocationId
        - quantity
        - available
      type: object
      properties:
        id:
          title: Id
          type: string
        productId:
          title: Productid
          type: string
          description: The product ID associated with this inventory item
          example: prod_123
        externalProductId:
          title: Externalproductid
          anyOf:
            - type: string
            - type: 'null'
          description: The external product ID from an external system
          default: null
          example: ext_001
        storeLocationId:
          title: Storelocationid
          type: string
          description: The store location ID where this inventory is located
          example: store_001
        externalStoreLocationId:
          title: Externalstorelocationid
          anyOf:
            - type: string
            - type: 'null'
          description: The external store ID from an external system
          default: null
          example: ext_store_002
        quantity:
          title: Quantity
          type: integer
          description: The quantity of the product in stock
          example: 50
        valueCents:
          title: Valuecents
          anyOf:
            - type: integer
            - type: 'null'
          description: The price of the product in cents
          default: null
          example: 299
        currency:
          title: Currency
          anyOf:
            - type: string
            - type: 'null'
          description: The currency code for the product price
          default: null
          example: USD
        available:
          title: Available
          type: boolean
          description: Whether the product is available for purchase
          example: true
        location:
          anyOf:
            - $ref: '#/components/schemas/LocationDataOutputSerializer'
            - type: 'null'
          description: The location data for the product in the store
          default: null
          example:
            aisle: Produce
            bay: Fruits
            shelf: Bananas
        details:
          anyOf:
            - $ref: '#/components/schemas/StoreInventoryDetailsOutputSerializer'
            - type: 'null'
          description: Additional inventory details
          default: null
          example:
            weightedItemInfo:
              valueCentsPerMeasurementUnit: 120
        providerConfigs:
          title: Providerconfigs
          anyOf:
            - type: array
              items:
                $ref: '#/components/schemas/InventoryProviderConfigOutputSerializer'
            - type: 'null'
          description: Provider-specific configurations for this inventory item
          default: null
          example:
            - currency: USD
              details:
                weightedItemInfo:
                  valueCentsPerMeasurementUnit: 135
              discount:
                endTime: '2025-12-17T00:00:00Z'
                startTime: '2025-12-10T00:00:00Z'
                valueCents: 270
              provider: X
              serviceType: pick_and_deliver
              valueCents: 299
    NashErrorDetails:
      title: NashErrorDetails
      required:
        - code
        - message
      type: object
      properties:
        code:
          title: Code
          type: string
        message:
          title: Message
          type: string
        details:
          title: Details
          anyOf:
            - type: object
              additionalProperties: true
            - type: 'null'
          default: null
    LocationDataInputSerializer:
      title: LocationDataInputSerializer
      type: object
      properties:
        aisle:
          title: Aisle
          anyOf:
            - type: string
            - type: 'null'
          description: The aisle location of the product in the store
          default: null
          example: Aisle 5
        bay:
          title: Bay
          anyOf:
            - type: string
            - type: 'null'
          description: The bay location of the product in the store
          default: null
          example: Bay 3
        shelf:
          title: Shelf
          anyOf:
            - type: string
            - type: 'null'
          description: The shelf location of the product in the store
          default: null
          example: Shelf 2
    StoreInventoryDetailsInputSerializer:
      title: StoreInventoryDetailsInputSerializer
      type: object
      properties:
        weightedItemInfo:
          anyOf:
            - $ref: >-
                #/components/schemas/StoreInventoryWeightedItemInfoInputSerializer
            - type: 'null'
          description: Weight information per inventory item
          default: null
        taxPercentage:
          title: Taxpercentage
          anyOf:
            - type: number
            - type: 'null'
          description: Tax rate as a decimal (e.g., 0.1 for 10%)
          default: null
          example: 0.1
    InventoryProviderConfigInputSerializer:
      title: InventoryProviderConfigInputSerializer
      required:
        - provider
        - serviceType
        - valueCents
        - currency
      type: object
      properties:
        provider:
          title: Provider
          type: string
          description: Provider name
          example: X
        serviceType:
          title: Servicetype
          type: string
          description: Service type (e.g., pick_and_deliver, marketplace)
          example: pick_and_deliver
        valueCents:
          title: Valuecents
          type: integer
          description: The price of the product in cents for this provider
          example: 299
        currency:
          title: Currency
          type: string
          description: The currency code for the product price
          example: USD
        details:
          anyOf:
            - $ref: '#/components/schemas/StoreInventoryDetailsInputSerializer'
            - type: 'null'
          description: Additional pricing details for this provider
          default: null
        available:
          title: Available
          anyOf:
            - type: boolean
            - type: 'null'
          description: Whether this provider config is available
          default: null
          example: true
        discount:
          anyOf:
            - $ref: '#/components/schemas/InventoryDiscountInputSerializer'
            - type: 'null'
          description: Optional discount pricing for this provider config
          default: null
          example:
            endTime: '2025-12-17T00:00:00Z'
            startTime: '2025-12-10T00:00:00Z'
            valueCents: 270
        taxPercentage:
          title: Taxpercentage
          anyOf:
            - type: number
            - type: 'null'
          description: Tax rate as a decimal (e.g., 0.1 for 10%)
          default: null
          example: 0.1
    LocationDataOutputSerializer:
      title: LocationDataOutputSerializer
      type: object
      properties:
        aisle:
          title: Aisle
          anyOf:
            - type: string
            - type: 'null'
          description: The aisle location of the product in the store
          default: null
          example: Aisle 5
        bay:
          title: Bay
          anyOf:
            - type: string
            - type: 'null'
          description: The bay location of the product in the store
          default: null
          example: Bay 3
        shelf:
          title: Shelf
          anyOf:
            - type: string
            - type: 'null'
          description: The shelf location of the product in the store
          default: null
          example: Shelf 2
    StoreInventoryDetailsOutputSerializer:
      title: StoreInventoryDetailsOutputSerializer
      type: object
      properties:
        weightedItemInfo:
          anyOf:
            - $ref: >-
                #/components/schemas/StoreInventoryWeightedItemInfoOutputSerializer
            - type: 'null'
          description: Weight information per inventory item
          default: null
        taxPercentage:
          title: Taxpercentage
          anyOf:
            - type: number
            - type: 'null'
          description: Tax rate as a decimal (e.g., 0.1 for 10%)
          default: null
          example: 0.1
    InventoryProviderConfigOutputSerializer:
      title: InventoryProviderConfigOutputSerializer
      required:
        - provider
        - serviceType
        - valueCents
        - currency
      type: object
      properties:
        provider:
          title: Provider
          type: string
          description: Provider name
          example: X
        serviceType:
          title: Servicetype
          type: string
          description: Service type (e.g., pick_and_deliver, marketplace)
          example: pick_and_deliver
        valueCents:
          title: Valuecents
          type: integer
          description: The price of the product in cents for this provider
          example: 299
        currency:
          title: Currency
          type: string
          description: The currency code for the product price
          example: USD
        details:
          anyOf:
            - $ref: '#/components/schemas/StoreInventoryDetailsOutputSerializer'
            - type: 'null'
          description: Additional pricing details for this provider
          default: null
        available:
          title: Available
          anyOf:
            - type: boolean
            - type: 'null'
          description: Whether this provider config is available
          default: null
          example: true
        discount:
          anyOf:
            - $ref: '#/components/schemas/InventoryDiscountOutputSerializer'
            - type: 'null'
          description: Optional discount pricing for this provider config
          default: null
          example:
            endTime: '2025-12-17T00:00:00Z'
            startTime: '2025-12-10T00:00:00Z'
            valueCents: 270
        taxPercentage:
          title: Taxpercentage
          anyOf:
            - type: number
            - type: 'null'
          description: Tax rate as a decimal (e.g., 0.1 for 10%)
          default: null
          example: 0.1
    StoreInventoryWeightedItemInfoInputSerializer:
      title: StoreInventoryWeightedItemInfoInputSerializer
      type: object
      properties:
        valueCentsPerMeasurementUnit:
          title: Valuecentspermeasurementunit
          anyOf:
            - type: integer
            - type: 'null'
          description: The price per cents per measurement unit
          default: null
          example: 120
    InventoryDiscountInputSerializer:
      title: InventoryDiscountInputSerializer
      required:
        - valueCents
        - startTime
        - endTime
      type: object
      properties:
        valueCents:
          title: Valuecents
          type: integer
          description: The discounted price in cents
          example: 270
        startTime:
          title: Starttime
          type: string
          description: The start time of the discount period in ISO 8601 format
          example: '2025-12-10T00:00:00Z'
        endTime:
          title: Endtime
          type: string
          description: The end time of the discount period in ISO 8601 format
          example: '2025-12-17T00:00:00Z'
    StoreInventoryWeightedItemInfoOutputSerializer:
      title: StoreInventoryWeightedItemInfoOutputSerializer
      type: object
      properties:
        valueCentsPerMeasurementUnit:
          title: Valuecentspermeasurementunit
          anyOf:
            - type: integer
            - type: 'null'
          description: The price per cents per measurement unit
          default: null
          example: 120
    InventoryDiscountOutputSerializer:
      title: InventoryDiscountOutputSerializer
      required:
        - valueCents
        - startTime
        - endTime
      type: object
      properties:
        valueCents:
          title: Valuecents
          type: integer
          description: The discounted price in cents
          example: 270
        startTime:
          title: Starttime
          type: string
          description: The start time of the discount period in ISO 8601 format
          example: '2025-12-10T00:00:00Z'
        endTime:
          title: Endtime
          type: string
          description: The end time of the discount period in ISO 8601 format
          example: '2025-12-17T00:00:00Z'

````