---
title: "Select Quote"
method: POST
path: "/v1/select_quote"
tags: ["Job"]
---

# Select Quote

`POST /v1/select_quote`

## Request

- Base URL: `https://api.sandbox.usenash.com`
- URL: `https://api.sandbox.usenash.com/v1/select_quote`
- Auth: none declared

Select a delivery quote to dispatch the job to a provider. Selecting a quote creates a delivery and begins the fulfillment process with the chosen provider.

## Request body

- SelectQuoteInputSerializer: Expected input for selecting a quote.
  - `quoteId` string, required: Unique reference number for the quote that should be selected to create a job and start a delivery

## Response `200`

OK

- SelectQuoteOutputSerializer: Expected output when selecting a quote for a task, batch , order.
  - `job` union, required
    - ReturnedJobMixin: A Nash Job.
      - `id` string, required: Job ID
      - `createdAt` string, required: Created at
      - `portalUrl` string, required: Portal URL
      - `externalIdentifier` string, nullable: External identifier
      - `jobMetadata` object, nullable: Job metadata
      - `isActive` boolean, required: Is the job active
      - `isBatch` boolean, required: Is the job a batch
      - `jobConfigurations` JobConfigurationsSerializer[], required: Job configurations
        - `id` string, required: Job Configuration ID
        - `orderId` string, nullable: Canonical Nash order ID for this job configuration
        - `package` PackageSerializer, required: Generic serializer for packages used in many endpoints; Used for output.
          - `id` string, required: Package ID
          - `description` string, nullable: Description
          - `requirements` string[], required: Requirements
          - `tags` string[], nullable: Tags
          - `packageDeliveryMode` string, nullable: Package delivery mode
          - `pickupStartTime` string, nullable: Pickup start time
          - `pickupEndTime` string, nullable: Pickup end time
          - `pickupBarcodes` string[], nullable
          - `dropoffStartTime` string, nullable: Dropoff start time
          - `dropoffEndTime` string, nullable: Dropoff end time
          - `dropoffBarcodes` string[], nullable
          - `valueCents` integer, required
          - `dueAmountCents` integer, nullable: Cash the driver must collect from the recipient on delivery, in cents. Null when the order did not specify one (treated as prepaid).
          - `taxCents` integer, nullable: Tax in cents
          - `serviceFeeCents` integer, nullable: Service fee in cents
          - `itemsCount` union, required: Items count
            - integer
            - number
          - `externalIdentifier` string, nullable: External identifier
          - `minimumVehicleSize` 'any' | 'bike' | 'motorbike' | 'cargobike' | 'cargo_bike' | 'sedan' | 'car' | 'suv' | 'pickup_truck' | 'pickup' | 'van' | 'large_van' | 'extra_large_van' | 'truck', nullable: Minimum vehicle size required for the package. Allowed values: ['any', 'bike', 'motorbike', 'cargobike', 'cargo_bike', 'sedan', 'car', 'suv', 'pickup_truck', 'pickup', 'van', 'large_van', 'extra_large_van', 'truck']
          - `pickupLocation` LocationSerializer, required: Generic serializer for location used in many endpoints.
            - `id` string, required: Location ID
            - `address` string, required: Address
            - `formattedAddress` string, required: Formatted address
            - `addressNumber` string, nullable: Address number
            - `addressFormattedStreet` string, nullable: Address formatted street
            - `addressCity` string, required: Address city
            - `addressCounty` string, nullable: Address county
            - `addressState` string, nullable: Address state
            - `addressZip` string, nullable: Address zip
            - `addressCountry` string, required: Address country
            - `timezoneId` string, required: Timezone ID
            - `timezoneName` string, required: Timezone name
            - `instructions` string, nullable: Instructions
            - `businessName` string, nullable: Business name
            - `firstName` string, nullable: First name
            - `lastName` string, nullable: Last name
            - `phoneNumber` string, nullable: Phone number
            - `email` string, nullable: Email
            - `lat` number, nullable: Latitude
            - `lng` number, nullable: Longitude
          - `pickupStoreLocationId` string, nullable: Pickup store location ID
          - `pickupStoreLocationExternalId` string, nullable: Pickup store location external ID
          - `dropoffLocation` LocationSerializer, required: Generic serializer for location used in many endpoints.
            - `id` string, required: Location ID
            - `address` string, required: Address
            - `formattedAddress` string, required: Formatted address
            - `addressNumber` string, nullable: Address number
            - `addressFormattedStreet` string, nullable: Address formatted street
            - `addressCity` string, required: Address city
            - `addressCounty` string, nullable: Address county
            - `addressState` string, nullable: Address state
            - `addressZip` string, nullable: Address zip
            - `addressCountry` string, required: Address country
            - `timezoneId` string, required: Timezone ID
            - `timezoneName` string, required: Timezone name
            - `instructions` string, nullable: Instructions
            - `businessName` string, nullable: Business name
            - `firstName` string, nullable: First name
            - `lastName` string, nullable: Last name
            - `phoneNumber` string, nullable: Phone number
            - `email` string, nullable: Email
            - `lat` number, nullable: Latitude
            - `lng` number, nullable: Longitude
          - `dropoffStoreLocationId` string, nullable: Dropoff store location ID
          - `drivingMetrics` object, nullable: Driving metrics (distance in meters, duration in seconds)
          - `value` number, nullable: Value
          - `tax` union: Tax
            - integer
            - number
          - `serviceFee` union: Service fee
            - integer
            - number
          - `tipAmountCents` integer, nullable
          - `weight` union: Weight
            - integer
            - number
          - `dimensions` object, nullable: Dimensions
          - `items` ItemOutput[], nullable: Items
            - `id` string, nullable: The merchant ID of the item
            - `description` string, nullable: The description of the item
            - `count` integer, nullable: The quantity of the item
            - `dimensions` Dimensions
              - …
            - `weight` union: The weight of the item in kilograms (kg)
              - …
            - `valueCents` integer, nullable: The value of the item in cents
            - `requirements` string[], nullable: List of requirements for this item
            - `category` string, nullable: The category of the item
            - `barcode` string, nullable: Barcode value for this item.
            - `metadata` object, nullable: Key-value data to attach to this item.
            - `subItems` SubItemOutput[], nullable: The nested sub-items
              - …
          - `referenceId` string, nullable: Reference ID
          - `packageMetadata` object, nullable: Package metadata
        - `tasks` TaskSerializer[], required: Tasks
          - `id` string, required: Task ID
          - `createdAt` string, required: Created at
          - `status` string, required: Status
          - `pickupStartTime` string, nullable: Pickup start time
          - `pickupEndTime` string, nullable: Pickup end time
          - `dropoffStartTime` string, nullable: Dropoff start time
          - `dropoffEndTime` string, nullable: Dropoff end time
          - `providerId` string, nullable: Provider ID
          - `providerIsInternal` boolean, nullable: Provider is internal
          - `tipAmountCents` integer, nullable: Tip amount in cents
          - `winnerQuote` object, nullable: Winner quote
          - `quotes` QuoteSerializer[], nullable: Quotes
            - `id` string, required: Quote ID
            - `type` string, nullable: Quote type
            - `providerId` string, required: Provider ID
            - `providerName` string, required: Provider name
            - `providerLogo` string, nullable: Provider logo
            - `providerIsInternal` boolean, nullable: Is the provider internal
            - `createdTime` string, required: Created time
            - `expireTime` string, nullable: Expire time
            - `priceCents` integer, required: Price in cents
            - `taxAmountCents` integer, nullable: Tax amount in cents
            - `tollFeeCents` integer, nullable: Toll fee in cents
            - `nashFeeCents` integer, nullable: Nash fee in cents
            - `insuranceFeeCents` integer, nullable: Insurance fee in cents
            - `currency` string, nullable: Currency
            - `pickupWindow` string, nullable: Pickup window
            - `dropoffEta` string, nullable: Dropoff ETA
            - `tags` string[], nullable: Tags
            - `costSplitCustomerCents` integer, nullable: Cost split customer in cents
            - `costSplitBusinessCents` integer, nullable: Cost split business in cents
            - `totalPriceBreakdown` object, nullable: Total price breakdown
            - `totalPriceCents` integer, nullable: Total price in cents
            - `rank` integer, nullable: Quote rank for preferred provider ordering
            - `price` number, nullable: Price
            - `isSuccessful` boolean, nullable: Is successful
            - `errorMessage` string, nullable: Error message
            - `errorCode` string, nullable: Machine-readable quote failure code
            - `errorDetails` object, nullable: Structured quote failure details
          - `failedQuotes` object[], nullable: Failed quotes
          - `quoteFailure` object, nullable: Summary when every provider rejects the package requirements
          - `delivery` DeliverySerializer: Generic serializer for deliveries used in many endpoints. Some endpoints won't return all fields, so they are optional. This means that they will return field names with null values.
            - `id` string, required: Delivery ID
            - `type` string, nullable
            - `status` string, required: Delivery status
            - `statusHistory` object[], nullable: Delivery status history. `location` is the carrier's scan location, null when none was reported. `injected` marks skipped-status injection only; ETA/GPS-inferred arrivals may be null.
              - …
            - `isActive` boolean, required: Is the delivery active
            - `pickupEta` string, nullable: Pickup ETA
            - `dropoffEta` string, nullable: Dropoff ETA
            - `dropoffDeadline` string, nullable: Dropoff deadline
            - `priceCents` integer, required: Price in cents
            - `currency` string, required: Currency
            - `documents` DocumentSerializer[], nullable: Documents
              - …
            - `nashFeeCents` integer, nullable: Nash fee in cents
            - `courierName` string, nullable: Courier name
            - `courierPhoneNumber` string, nullable: Courier phone number
            - `courierPickupPhoneNumber` string, nullable: Courier pickup phone number
            - `courierDropoffPhoneNumber` string, nullable: Courier dropoff phone number
            - `courierLocation` object, nullable: Courier location
            - `courierVehicle` object, nullable: Courier vehicle
            - `courierProfileImage` string, nullable: Courier profile image
            - `proofOfDelivery` object[], nullable: Proof of delivery. When file links are enabled, Nash-hosted photo items include secure_url alongside url. Authenticate with Nash to open secure_url; it redirects to a temporary download URL. Store secure_url, not the redirect target, and do not forward your API key to that target.
              - …
            - `providerDeliveryId` string, nullable: Provider delivery id
            - `providerBatchId` string, nullable: Provider batch id
            - `price` number, nullable: Price
            - `taxAmountCents` integer, nullable: Tax amount in cents
            - `tollFeeCents` integer, nullable: Toll fee in cents
            - `waitFeeCents` integer, nullable: Wait fee in cents
            - `waitTimeMinutes` integer, nullable: Wait time in minutes
            - `cancellationFeeCents` integer, nullable: Cancellation fee in cents
            - `returnFeeCents` integer, nullable: Return fee in cents
            - `bonusPayCents` integer, nullable: Bonus pay in cents
            - `otherProviderFees` object, nullable: Other provider fees
            - `insuranceFeeCents` integer, nullable: Insurance fee in cents
            - `totalPriceBreakdown` object, nullable: Total price breakdown
            - `totalPriceCents` integer, nullable: Total price in cents
            - `pickedItems` PickedItemsSerializer[], nullable: Picked items
              - …
          - `tipAmountUsd` number, nullable: Tip amount in USD
          - `failureCode` string, nullable: Normalized delivery failure code
          - `failureReason` string, nullable: Failure reason
          - `taskNotes` NoteSerializer[], nullable: Task notes
            - `id` string, required: Note ID
            - `createdAt` string, required: Created at
            - `note` string, required: Note
            - `user` BasicUserSerializer, required: Generic serializer for basic users used in many endpoints.
              - …
        - `advancedTask` union: Advanced task
          - TaskSerializer: Generic serializer for tasks used in many endpoints.
            - `id` string, required: Task ID
            - `createdAt` string, required: Created at
            - `status` string, required: Status
            - `pickupStartTime` string, nullable: Pickup start time
            - `pickupEndTime` string, nullable: Pickup end time
            - `dropoffStartTime` string, nullable: Dropoff start time
            - `dropoffEndTime` string, nullable: Dropoff end time
            - `providerId` string, nullable: Provider ID
            - `providerIsInternal` boolean, nullable: Provider is internal
            - `tipAmountCents` integer, nullable: Tip amount in cents
            - `winnerQuote` object, nullable: Winner quote
            - `quotes` QuoteSerializer[], nullable: Quotes
              - …
            - `failedQuotes` object[], nullable: Failed quotes
              - …
            - `quoteFailure` object, nullable: Summary when every provider rejects the package requirements
            - `delivery` DeliverySerializer: Generic serializer for deliveries used in many endpoints. Some endpoints won't return all fields, so they are optional. This means that they will return field names with null values.
              - …
            - `tipAmountUsd` number, nullable: Tip amount in USD
            - `failureCode` string, nullable: Normalized delivery failure code
            - `failureReason` string, nullable: Failure reason
            - `taskNotes` NoteSerializer[], nullable: Task notes
              - …
          - CompressedAdvancedTaskSerializer: Generic serializer for tasks used in many endpoints.
            - `id` string, required: Task ID
        - `delivery` DeliverySerializer: Generic serializer for deliveries used in many endpoints. Some endpoints won't return all fields, so they are optional. This means that they will return field names with null values.
          - `id` string, required: Delivery ID
          - `type` string, nullable
          - `status` string, required: Delivery status
          - `statusHistory` object[], nullable: Delivery status history. `location` is the carrier's scan location, null when none was reported. `injected` marks skipped-status injection only; ETA/GPS-inferred arrivals may be null.
          - `isActive` boolean, required: Is the delivery active
          - `pickupEta` string, nullable: Pickup ETA
          - `dropoffEta` string, nullable: Dropoff ETA
          - `dropoffDeadline` string, nullable: Dropoff deadline
          - `priceCents` integer, required: Price in cents
          - `currency` string, required: Currency
          - `documents` DocumentSerializer[], nullable: Documents
            - `createdAt` string, required
            - `id` string, required
            - `type` string, required
            - `url` string, nullable
            - `data` string, binary, nullable
            - `contentType` string, required
            - `documentMetadata` object, nullable
          - `nashFeeCents` integer, nullable: Nash fee in cents
          - `courierName` string, nullable: Courier name
          - `courierPhoneNumber` string, nullable: Courier phone number
          - `courierPickupPhoneNumber` string, nullable: Courier pickup phone number
          - `courierDropoffPhoneNumber` string, nullable: Courier dropoff phone number
          - `courierLocation` object, nullable: Courier location
          - `courierVehicle` object, nullable: Courier vehicle
          - `courierProfileImage` string, nullable: Courier profile image
          - `proofOfDelivery` object[], nullable: Proof of delivery. When file links are enabled, Nash-hosted photo items include secure_url alongside url. Authenticate with Nash to open secure_url; it redirects to a temporary download URL. Store secure_url, not the redirect target, and do not forward your API key to that target.
          - `providerDeliveryId` string, nullable: Provider delivery id
          - `providerBatchId` string, nullable: Provider batch id
          - `price` number, nullable: Price
          - `taxAmountCents` integer, nullable: Tax amount in cents
          - `tollFeeCents` integer, nullable: Toll fee in cents
          - `waitFeeCents` integer, nullable: Wait fee in cents
          - `waitTimeMinutes` integer, nullable: Wait time in minutes
          - `cancellationFeeCents` integer, nullable: Cancellation fee in cents
          - `returnFeeCents` integer, nullable: Return fee in cents
          - `bonusPayCents` integer, nullable: Bonus pay in cents
          - `otherProviderFees` object, nullable: Other provider fees
          - `insuranceFeeCents` integer, nullable: Insurance fee in cents
          - `totalPriceBreakdown` object, nullable: Total price breakdown
          - `totalPriceCents` integer, nullable: Total price in cents
          - `pickedItems` PickedItemsSerializer[], nullable: Picked items
            - `sku` string, nullable
            - `requestedSku` string, nullable
            - `id` string, nullable
            - `requestedId` string, nullable
            - `quantity` integer, nullable
            - `requestedQuantity` integer, nullable
            - `scannedBarcode` string, nullable
            - `weight` number, nullable
            - `priceCents` integer, nullable
            - `status` string, nullable: Per-item fulfillment outcome at pick time. One of: `picked`, `partially_picked`, `not_picked`, `substituted`.
            - `name` string, nullable
            - `scans` ItemScanSerializer[], nullable
              - …
        - `publicTrackingUrl` string, nullable: Public tracking URL
      - `optionsGroup` OptionsGroupSerializer: Generic serializer for options groups used in many endpoints.
        - `id` string, required: Dispatch Strategy ID
        - `label` string, required: Dispatch Strategy Label
        - `allowedProviders` string[], nullable: Allowed providers
        - `enableAutoDispatch` boolean, nullable: Enable auto dispatch
        - `providerSelectionStrategy` string, nullable: Provider selection strategy
        - `reassignOnFailure` boolean, nullable: Reassign on failure
        - `enableMaxDeliveryFee` boolean, nullable: Enable max delivery fee
        - `maxDeliveryFeeCents` integer, nullable: Max delivery fee in cents
        - `preventReassignmentPriceIncrease` boolean, nullable: Prevent a reassignment from increasing the selected delivery fee
        - `costSplitMaxFixedPriceCents` integer, nullable: Cost split max fixed price in cents
        - `costSplitMaxPercentage` number, nullable: Cost split max percentage
        - `costSplitStrategy` string, nullable: Cost split strategy
        - `smartReassignment` boolean, nullable: Smart reassignment
      - `shortReferenceCode` string, nullable: 7-digit non-unique human-readable reference code for the job.
      - `selectedConfiguration` object, nullable: Selected configuration
      - `jobSpecification` object, nullable: Job specification
      - `route` RouteSerializer: Represents a planned sequence of stops for a delivery or batch.
        - `id` string, required: Unique identifier for the route.
        - `externalId` string, nullable: External Route ID.
        - `portalUrl` string, required: Portal URL of the route.
        - `name` string, nullable: Name of the route.
        - `type` string, required: Type of the route, indicating the pickup/dropoff structure.
        - `courierId` string, nullable: Courier ID of the driver assigned to the route.
        - `vehicleId` string, nullable: Vehicle ID of the vehicle assigned to the route.
        - `courier` CourierSerializer: Courier details for a route.
          - `id` string, nullable
          - `firstName` string, nullable
          - `lastName` string, nullable
          - `phoneNumber` string, nullable
        - `driverGroup` DriverGroupSerializer: Driver group details for a route.
          - `id` string, nullable
          - `externalId` string, nullable
        - `courierPosition` CourierPositionSerializer: Current GPS position of a courier.
          - `lat` number, required: Latitude coordinate.
          - `lng` number, required: Longitude coordinate.
          - `updatedAt` string, nullable: Timestamp when the position was last updated on the server.
          - `capturedAt` string, nullable: Timestamp when the GPS position was captured on driver's device.
          - `accuracy` number, nullable: Estimated horizontal accuracy radius in meters.
          - `heading` number, nullable: Heading in degrees relative to true north.
          - `speed` number, nullable: Speed in meters per second.
          - `altitude` number, nullable: Altitude in meters above sea level.
          - `altitudeAccuracy` number, nullable: Estimated altitude accuracy in meters.
          - `batteryLevel` number, nullable: Battery level from 0.0 to 1.0, if provided by device.
          - `batteryIsCharging` boolean, nullable: Whether the device is currently charging.
          - `isMoving` boolean, nullable: Whether the device is currently detected as moving.
        - `vehicle` VehicleSerializer: Vehicle details for a route.
          - `licensePlate` string, nullable
          - `make` string, nullable
          - `model` string, nullable
          - `color` string, nullable
          - `year` integer, nullable
          - `type` string, nullable
        - `providerName` string, nullable: Name of the delivery provider assigned to this route.
        - `shiftId` string, nullable: Shift ID of the shift assigned to the route.
        - `stops` RouteStopSerializer[], required: Ordered list of stops included in the route.
          - `stopType` string, required: Type of the stop.
          - `objectIds` string[], required: List of object IDs (e.g., order IDs, store location IDs) associated with this stop.
          - `arrivalTime` string, nullable: Estimated arrival time at the stop (UTC).
          - `departTime` string, nullable: Estimated departure time from the stop (UTC).
          - `plannedArrivalTime` string, nullable: Snapshot of arrival_time captured pre-dispatch (UTC). Mirrors arrival_time while the route is undispatched, then freezes at dispatch — gives consumers the planned ETA at dispatch even after real-time tracking updates arrival_time.
          - `serviceTime` integer, nullable: Estimated service time spent at the stop (in seconds).
          - `distanceFromPrevious` integer, nullable: Distance traveled from the previous stop (in meters).
          - `durationFromPrevious` integer, nullable: Travel duration from the previous stop (in seconds).
          - `location` LatLngSerializer, required: Latitude/longitude coordinates.
            - `lat` number, required: Latitude coordinate.
            - `lng` number, required: Longitude coordinate.
          - `status` string, nullable: Current status of the stop.
          - `statusDescription` string, nullable: Detailed description of the current status of the stop.
          - `statusHistory` object[], nullable: History of status changes for the stop.
          - `metadata` object, nullable: Additional metadata for this stop.
          - `startedAt` string, nullable: Timestamp when the stop entered IN_PROGRESS status (UTC).
          - `breakDuration` integer, nullable: Duration in seconds of the break at this stop (for DRIVER_BREAK stops).
          - `orders` StopOrderSerializer[], nullable: Orders associated with this stop, including tracking URLs and delivery details.
            - `id` string, required: Order ID.
            - `externalId` string, nullable: External identifier for the order.
            - `publicTrackingUrl` string, nullable: Public tracking URL for the order.
            - `pod` ProofOfDeliverySerializer[], nullable: Proof of delivery data (photos, signature, etc.) if captured.
              - …
            - `orderItems` OrderItemSerializer[], nullable: Items with lifecycle status tracking (picked, delivered, failed, etc.).
              - …
        - `isDispatched` boolean: Whether the route is dispatched.
        - `jobId` string, nullable: Dispatched Job ID of this route
        - `routeMetadata` object, nullable: Additional metadata for the route.
        - `validationErrors` object, nullable: Validation errors for the route.
        - `encodedPolyline` string, nullable: Encoded polyline representing the route geometry.
        - `status` string, nullable: Current status of the route.
        - `statusHistory` object[], nullable: History of status changes for the route.
    - ReturnedBatchJobMixin: The format for a returned batch job used in many endpoints.
      - `id` string, required: Job ID
      - `createdAt` string, required: Created at
      - `portalUrl` string, required: Portal URL
      - `externalIdentifier` string, nullable: External identifier
      - `jobMetadata` object, nullable: Job metadata
      - `isActive` boolean, required: Is the job active
      - `isBatch` boolean, required: Is the job a batch
      - `batch` BatchSerializer, required: Generic serializer for batches used in many endpoints.
        - `id` string, required
        - `type` string, required
        - `objectSequence` string[], required
        - `stopTypes` BatchStopTypes[], required
        - `providerId` string, nullable
        - `providerIsInternal` boolean, nullable
        - `winnerQuote` object, nullable
        - `quotes` QuoteSerializer[], required
          - `id` string, required: Quote ID
          - `type` string, nullable: Quote type
          - `providerId` string, required: Provider ID
          - `providerName` string, required: Provider name
          - `providerLogo` string, nullable: Provider logo
          - `providerIsInternal` boolean, nullable: Is the provider internal
          - `createdTime` string, required: Created time
          - `expireTime` string, nullable: Expire time
          - `priceCents` integer, required: Price in cents
          - `taxAmountCents` integer, nullable: Tax amount in cents
          - `tollFeeCents` integer, nullable: Toll fee in cents
          - `nashFeeCents` integer, nullable: Nash fee in cents
          - `insuranceFeeCents` integer, nullable: Insurance fee in cents
          - `currency` string, nullable: Currency
          - `pickupWindow` string, nullable: Pickup window
          - `dropoffEta` string, nullable: Dropoff ETA
          - `tags` string[], nullable: Tags
          - `costSplitCustomerCents` integer, nullable: Cost split customer in cents
          - `costSplitBusinessCents` integer, nullable: Cost split business in cents
          - `totalPriceBreakdown` object, nullable: Total price breakdown
          - `totalPriceCents` integer, nullable: Total price in cents
          - `rank` integer, nullable: Quote rank for preferred provider ordering
          - `price` number, nullable: Price
          - `isSuccessful` boolean, nullable: Is successful
          - `errorMessage` string, nullable: Error message
          - `errorCode` string, nullable: Machine-readable quote failure code
          - `errorDetails` object, nullable: Structured quote failure details
        - `failedQuotes` object[], nullable
        - `quoteFailure` object, nullable
      - `route` RouteSerializer, required: Represents a planned sequence of stops for a delivery or batch.
        - `id` string, required: Unique identifier for the route.
        - `externalId` string, nullable: External Route ID.
        - `portalUrl` string, required: Portal URL of the route.
        - `name` string, nullable: Name of the route.
        - `type` string, required: Type of the route, indicating the pickup/dropoff structure.
        - `courierId` string, nullable: Courier ID of the driver assigned to the route.
        - `vehicleId` string, nullable: Vehicle ID of the vehicle assigned to the route.
        - `courier` CourierSerializer: Courier details for a route.
          - `id` string, nullable
          - `firstName` string, nullable
          - `lastName` string, nullable
          - `phoneNumber` string, nullable
        - `driverGroup` DriverGroupSerializer: Driver group details for a route.
          - `id` string, nullable
          - `externalId` string, nullable
        - `courierPosition` CourierPositionSerializer: Current GPS position of a courier.
          - `lat` number, required: Latitude coordinate.
          - `lng` number, required: Longitude coordinate.
          - `updatedAt` string, nullable: Timestamp when the position was last updated on the server.
          - `capturedAt` string, nullable: Timestamp when the GPS position was captured on driver's device.
          - `accuracy` number, nullable: Estimated horizontal accuracy radius in meters.
          - `heading` number, nullable: Heading in degrees relative to true north.
          - `speed` number, nullable: Speed in meters per second.
          - `altitude` number, nullable: Altitude in meters above sea level.
          - `altitudeAccuracy` number, nullable: Estimated altitude accuracy in meters.
          - `batteryLevel` number, nullable: Battery level from 0.0 to 1.0, if provided by device.
          - `batteryIsCharging` boolean, nullable: Whether the device is currently charging.
          - `isMoving` boolean, nullable: Whether the device is currently detected as moving.
        - `vehicle` VehicleSerializer: Vehicle details for a route.
          - `licensePlate` string, nullable
          - `make` string, nullable
          - `model` string, nullable
          - `color` string, nullable
          - `year` integer, nullable
          - `type` string, nullable
        - `providerName` string, nullable: Name of the delivery provider assigned to this route.
        - `shiftId` string, nullable: Shift ID of the shift assigned to the route.
        - `stops` RouteStopSerializer[], required: Ordered list of stops included in the route.
          - `stopType` string, required: Type of the stop.
          - `objectIds` string[], required: List of object IDs (e.g., order IDs, store location IDs) associated with this stop.
          - `arrivalTime` string, nullable: Estimated arrival time at the stop (UTC).
          - `departTime` string, nullable: Estimated departure time from the stop (UTC).
          - `plannedArrivalTime` string, nullable: Snapshot of arrival_time captured pre-dispatch (UTC). Mirrors arrival_time while the route is undispatched, then freezes at dispatch — gives consumers the planned ETA at dispatch even after real-time tracking updates arrival_time.
          - `serviceTime` integer, nullable: Estimated service time spent at the stop (in seconds).
          - `distanceFromPrevious` integer, nullable: Distance traveled from the previous stop (in meters).
          - `durationFromPrevious` integer, nullable: Travel duration from the previous stop (in seconds).
          - `location` LatLngSerializer, required: Latitude/longitude coordinates.
            - `lat` number, required: Latitude coordinate.
            - `lng` number, required: Longitude coordinate.
          - `status` string, nullable: Current status of the stop.
          - `statusDescription` string, nullable: Detailed description of the current status of the stop.
          - `statusHistory` object[], nullable: History of status changes for the stop.
          - `metadata` object, nullable: Additional metadata for this stop.
          - `startedAt` string, nullable: Timestamp when the stop entered IN_PROGRESS status (UTC).
          - `breakDuration` integer, nullable: Duration in seconds of the break at this stop (for DRIVER_BREAK stops).
          - `orders` StopOrderSerializer[], nullable: Orders associated with this stop, including tracking URLs and delivery details.
            - `id` string, required: Order ID.
            - `externalId` string, nullable: External identifier for the order.
            - `publicTrackingUrl` string, nullable: Public tracking URL for the order.
            - `pod` ProofOfDeliverySerializer[], nullable: Proof of delivery data (photos, signature, etc.) if captured.
              - …
            - `orderItems` OrderItemSerializer[], nullable: Items with lifecycle status tracking (picked, delivered, failed, etc.).
              - …
        - `isDispatched` boolean: Whether the route is dispatched.
        - `jobId` string, nullable: Dispatched Job ID of this route
        - `routeMetadata` object, nullable: Additional metadata for the route.
        - `validationErrors` object, nullable: Validation errors for the route.
        - `encodedPolyline` string, nullable: Encoded polyline representing the route geometry.
        - `status` string, nullable: Current status of the route.
        - `statusHistory` object[], nullable: History of status changes for the route.
      - `jobConfigurations` JobConfigurationsSerializer[], required: Job configurations
        - `id` string, required: Job Configuration ID
        - `orderId` string, nullable: Canonical Nash order ID for this job configuration
        - `package` PackageSerializer, required: Generic serializer for packages used in many endpoints; Used for output.
          - `id` string, required: Package ID
          - `description` string, nullable: Description
          - `requirements` string[], required: Requirements
          - `tags` string[], nullable: Tags
          - `packageDeliveryMode` string, nullable: Package delivery mode
          - `pickupStartTime` string, nullable: Pickup start time
          - `pickupEndTime` string, nullable: Pickup end time
          - `pickupBarcodes` string[], nullable
          - `dropoffStartTime` string, nullable: Dropoff start time
          - `dropoffEndTime` string, nullable: Dropoff end time
          - `dropoffBarcodes` string[], nullable
          - `valueCents` integer, required
          - `dueAmountCents` integer, nullable: Cash the driver must collect from the recipient on delivery, in cents. Null when the order did not specify one (treated as prepaid).
          - `taxCents` integer, nullable: Tax in cents
          - `serviceFeeCents` integer, nullable: Service fee in cents
          - `itemsCount` union, required: Items count
            - integer
            - number
          - `externalIdentifier` string, nullable: External identifier
          - `minimumVehicleSize` 'any' | 'bike' | 'motorbike' | 'cargobike' | 'cargo_bike' | 'sedan' | 'car' | 'suv' | 'pickup_truck' | 'pickup' | 'van' | 'large_van' | 'extra_large_van' | 'truck', nullable: Minimum vehicle size required for the package. Allowed values: ['any', 'bike', 'motorbike', 'cargobike', 'cargo_bike', 'sedan', 'car', 'suv', 'pickup_truck', 'pickup', 'van', 'large_van', 'extra_large_van', 'truck']
          - `pickupLocation` LocationSerializer, required: Generic serializer for location used in many endpoints.
            - `id` string, required: Location ID
            - `address` string, required: Address
            - `formattedAddress` string, required: Formatted address
            - `addressNumber` string, nullable: Address number
            - `addressFormattedStreet` string, nullable: Address formatted street
            - `addressCity` string, required: Address city
            - `addressCounty` string, nullable: Address county
            - `addressState` string, nullable: Address state
            - `addressZip` string, nullable: Address zip
            - `addressCountry` string, required: Address country
            - `timezoneId` string, required: Timezone ID
            - `timezoneName` string, required: Timezone name
            - `instructions` string, nullable: Instructions
            - `businessName` string, nullable: Business name
            - `firstName` string, nullable: First name
            - `lastName` string, nullable: Last name
            - `phoneNumber` string, nullable: Phone number
            - `email` string, nullable: Email
            - `lat` number, nullable: Latitude
            - `lng` number, nullable: Longitude
          - `pickupStoreLocationId` string, nullable: Pickup store location ID
          - `pickupStoreLocationExternalId` string, nullable: Pickup store location external ID
          - `dropoffLocation` LocationSerializer, required: Generic serializer for location used in many endpoints.
            - `id` string, required: Location ID
            - `address` string, required: Address
            - `formattedAddress` string, required: Formatted address
            - `addressNumber` string, nullable: Address number
            - `addressFormattedStreet` string, nullable: Address formatted street
            - `addressCity` string, required: Address city
            - `addressCounty` string, nullable: Address county
            - `addressState` string, nullable: Address state
            - `addressZip` string, nullable: Address zip
            - `addressCountry` string, required: Address country
            - `timezoneId` string, required: Timezone ID
            - `timezoneName` string, required: Timezone name
            - `instructions` string, nullable: Instructions
            - `businessName` string, nullable: Business name
            - `firstName` string, nullable: First name
            - `lastName` string, nullable: Last name
            - `phoneNumber` string, nullable: Phone number
            - `email` string, nullable: Email
            - `lat` number, nullable: Latitude
            - `lng` number, nullable: Longitude
          - `dropoffStoreLocationId` string, nullable: Dropoff store location ID
          - `drivingMetrics` object, nullable: Driving metrics (distance in meters, duration in seconds)
          - `value` number, nullable: Value
          - `tax` union: Tax
            - integer
            - number
          - `serviceFee` union: Service fee
            - integer
            - number
          - `tipAmountCents` integer, nullable
          - `weight` union: Weight
            - integer
            - number
          - `dimensions` object, nullable: Dimensions
          - `items` ItemOutput[], nullable: Items
            - `id` string, nullable: The merchant ID of the item
            - `description` string, nullable: The description of the item
            - `count` integer, nullable: The quantity of the item
            - `dimensions` Dimensions
              - …
            - `weight` union: The weight of the item in kilograms (kg)
              - …
            - `valueCents` integer, nullable: The value of the item in cents
            - `requirements` string[], nullable: List of requirements for this item
            - `category` string, nullable: The category of the item
            - `barcode` string, nullable: Barcode value for this item.
            - `metadata` object, nullable: Key-value data to attach to this item.
            - `subItems` SubItemOutput[], nullable: The nested sub-items
              - …
          - `referenceId` string, nullable: Reference ID
          - `packageMetadata` object, nullable: Package metadata
        - `tasks` TaskSerializer[], required: Tasks
          - `id` string, required: Task ID
          - `createdAt` string, required: Created at
          - `status` string, required: Status
          - `pickupStartTime` string, nullable: Pickup start time
          - `pickupEndTime` string, nullable: Pickup end time
          - `dropoffStartTime` string, nullable: Dropoff start time
          - `dropoffEndTime` string, nullable: Dropoff end time
          - `providerId` string, nullable: Provider ID
          - `providerIsInternal` boolean, nullable: Provider is internal
          - `tipAmountCents` integer, nullable: Tip amount in cents
          - `winnerQuote` object, nullable: Winner quote
          - `quotes` QuoteSerializer[], nullable: Quotes
            - `id` string, required: Quote ID
            - `type` string, nullable: Quote type
            - `providerId` string, required: Provider ID
            - `providerName` string, required: Provider name
            - `providerLogo` string, nullable: Provider logo
            - `providerIsInternal` boolean, nullable: Is the provider internal
            - `createdTime` string, required: Created time
            - `expireTime` string, nullable: Expire time
            - `priceCents` integer, required: Price in cents
            - `taxAmountCents` integer, nullable: Tax amount in cents
            - `tollFeeCents` integer, nullable: Toll fee in cents
            - `nashFeeCents` integer, nullable: Nash fee in cents
            - `insuranceFeeCents` integer, nullable: Insurance fee in cents
            - `currency` string, nullable: Currency
            - `pickupWindow` string, nullable: Pickup window
            - `dropoffEta` string, nullable: Dropoff ETA
            - `tags` string[], nullable: Tags
            - `costSplitCustomerCents` integer, nullable: Cost split customer in cents
            - `costSplitBusinessCents` integer, nullable: Cost split business in cents
            - `totalPriceBreakdown` object, nullable: Total price breakdown
            - `totalPriceCents` integer, nullable: Total price in cents
            - `rank` integer, nullable: Quote rank for preferred provider ordering
            - `price` number, nullable: Price
            - `isSuccessful` boolean, nullable: Is successful
            - `errorMessage` string, nullable: Error message
            - `errorCode` string, nullable: Machine-readable quote failure code
            - `errorDetails` object, nullable: Structured quote failure details
          - `failedQuotes` object[], nullable: Failed quotes
          - `quoteFailure` object, nullable: Summary when every provider rejects the package requirements
          - `delivery` DeliverySerializer: Generic serializer for deliveries used in many endpoints. Some endpoints won't return all fields, so they are optional. This means that they will return field names with null values.
            - `id` string, required: Delivery ID
            - `type` string, nullable
            - `status` string, required: Delivery status
            - `statusHistory` object[], nullable: Delivery status history. `location` is the carrier's scan location, null when none was reported. `injected` marks skipped-status injection only; ETA/GPS-inferred arrivals may be null.
              - …
            - `isActive` boolean, required: Is the delivery active
            - `pickupEta` string, nullable: Pickup ETA
            - `dropoffEta` string, nullable: Dropoff ETA
            - `dropoffDeadline` string, nullable: Dropoff deadline
            - `priceCents` integer, required: Price in cents
            - `currency` string, required: Currency
            - `documents` DocumentSerializer[], nullable: Documents
              - …
            - `nashFeeCents` integer, nullable: Nash fee in cents
            - `courierName` string, nullable: Courier name
            - `courierPhoneNumber` string, nullable: Courier phone number
            - `courierPickupPhoneNumber` string, nullable: Courier pickup phone number
            - `courierDropoffPhoneNumber` string, nullable: Courier dropoff phone number
            - `courierLocation` object, nullable: Courier location
            - `courierVehicle` object, nullable: Courier vehicle
            - `courierProfileImage` string, nullable: Courier profile image
            - `proofOfDelivery` object[], nullable: Proof of delivery. When file links are enabled, Nash-hosted photo items include secure_url alongside url. Authenticate with Nash to open secure_url; it redirects to a temporary download URL. Store secure_url, not the redirect target, and do not forward your API key to that target.
              - …
            - `providerDeliveryId` string, nullable: Provider delivery id
            - `providerBatchId` string, nullable: Provider batch id
            - `price` number, nullable: Price
            - `taxAmountCents` integer, nullable: Tax amount in cents
            - `tollFeeCents` integer, nullable: Toll fee in cents
            - `waitFeeCents` integer, nullable: Wait fee in cents
            - `waitTimeMinutes` integer, nullable: Wait time in minutes
            - `cancellationFeeCents` integer, nullable: Cancellation fee in cents
            - `returnFeeCents` integer, nullable: Return fee in cents
            - `bonusPayCents` integer, nullable: Bonus pay in cents
            - `otherProviderFees` object, nullable: Other provider fees
            - `insuranceFeeCents` integer, nullable: Insurance fee in cents
            - `totalPriceBreakdown` object, nullable: Total price breakdown
            - `totalPriceCents` integer, nullable: Total price in cents
            - `pickedItems` PickedItemsSerializer[], nullable: Picked items
              - …
          - `tipAmountUsd` number, nullable: Tip amount in USD
          - `failureCode` string, nullable: Normalized delivery failure code
          - `failureReason` string, nullable: Failure reason
          - `taskNotes` NoteSerializer[], nullable: Task notes
            - `id` string, required: Note ID
            - `createdAt` string, required: Created at
            - `note` string, required: Note
            - `user` BasicUserSerializer, required: Generic serializer for basic users used in many endpoints.
              - …
        - `advancedTask` union: Advanced task
          - TaskSerializer: Generic serializer for tasks used in many endpoints.
            - `id` string, required: Task ID
            - `createdAt` string, required: Created at
            - `status` string, required: Status
            - `pickupStartTime` string, nullable: Pickup start time
            - `pickupEndTime` string, nullable: Pickup end time
            - `dropoffStartTime` string, nullable: Dropoff start time
            - `dropoffEndTime` string, nullable: Dropoff end time
            - `providerId` string, nullable: Provider ID
            - `providerIsInternal` boolean, nullable: Provider is internal
            - `tipAmountCents` integer, nullable: Tip amount in cents
            - `winnerQuote` object, nullable: Winner quote
            - `quotes` QuoteSerializer[], nullable: Quotes
              - …
            - `failedQuotes` object[], nullable: Failed quotes
              - …
            - `quoteFailure` object, nullable: Summary when every provider rejects the package requirements
            - `delivery` DeliverySerializer: Generic serializer for deliveries used in many endpoints. Some endpoints won't return all fields, so they are optional. This means that they will return field names with null values.
              - …
            - `tipAmountUsd` number, nullable: Tip amount in USD
            - `failureCode` string, nullable: Normalized delivery failure code
            - `failureReason` string, nullable: Failure reason
            - `taskNotes` NoteSerializer[], nullable: Task notes
              - …
          - CompressedAdvancedTaskSerializer: Generic serializer for tasks used in many endpoints.
            - `id` string, required: Task ID
        - `delivery` DeliverySerializer: Generic serializer for deliveries used in many endpoints. Some endpoints won't return all fields, so they are optional. This means that they will return field names with null values.
          - `id` string, required: Delivery ID
          - `type` string, nullable
          - `status` string, required: Delivery status
          - `statusHistory` object[], nullable: Delivery status history. `location` is the carrier's scan location, null when none was reported. `injected` marks skipped-status injection only; ETA/GPS-inferred arrivals may be null.
          - `isActive` boolean, required: Is the delivery active
          - `pickupEta` string, nullable: Pickup ETA
          - `dropoffEta` string, nullable: Dropoff ETA
          - `dropoffDeadline` string, nullable: Dropoff deadline
          - `priceCents` integer, required: Price in cents
          - `currency` string, required: Currency
          - `documents` DocumentSerializer[], nullable: Documents
            - `createdAt` string, required
            - `id` string, required
            - `type` string, required
            - `url` string, nullable
            - `data` string, binary, nullable
            - `contentType` string, required
            - `documentMetadata` object, nullable
          - `nashFeeCents` integer, nullable: Nash fee in cents
          - `courierName` string, nullable: Courier name
          - `courierPhoneNumber` string, nullable: Courier phone number
          - `courierPickupPhoneNumber` string, nullable: Courier pickup phone number
          - `courierDropoffPhoneNumber` string, nullable: Courier dropoff phone number
          - `courierLocation` object, nullable: Courier location
          - `courierVehicle` object, nullable: Courier vehicle
          - `courierProfileImage` string, nullable: Courier profile image
          - `proofOfDelivery` object[], nullable: Proof of delivery. When file links are enabled, Nash-hosted photo items include secure_url alongside url. Authenticate with Nash to open secure_url; it redirects to a temporary download URL. Store secure_url, not the redirect target, and do not forward your API key to that target.
          - `providerDeliveryId` string, nullable: Provider delivery id
          - `providerBatchId` string, nullable: Provider batch id
          - `price` number, nullable: Price
          - `taxAmountCents` integer, nullable: Tax amount in cents
          - `tollFeeCents` integer, nullable: Toll fee in cents
          - `waitFeeCents` integer, nullable: Wait fee in cents
          - `waitTimeMinutes` integer, nullable: Wait time in minutes
          - `cancellationFeeCents` integer, nullable: Cancellation fee in cents
          - `returnFeeCents` integer, nullable: Return fee in cents
          - `bonusPayCents` integer, nullable: Bonus pay in cents
          - `otherProviderFees` object, nullable: Other provider fees
          - `insuranceFeeCents` integer, nullable: Insurance fee in cents
          - `totalPriceBreakdown` object, nullable: Total price breakdown
          - `totalPriceCents` integer, nullable: Total price in cents
          - `pickedItems` PickedItemsSerializer[], nullable: Picked items
            - `sku` string, nullable
            - `requestedSku` string, nullable
            - `id` string, nullable
            - `requestedId` string, nullable
            - `quantity` integer, nullable
            - `requestedQuantity` integer, nullable
            - `scannedBarcode` string, nullable
            - `weight` number, nullable
            - `priceCents` integer, nullable
            - `status` string, nullable: Per-item fulfillment outcome at pick time. One of: `picked`, `partially_picked`, `not_picked`, `substituted`.
            - `name` string, nullable
            - `scans` ItemScanSerializer[], nullable
              - …
        - `publicTrackingUrl` string, nullable: Public tracking URL
      - `optionsGroup` OptionsGroupSerializer: Generic serializer for options groups used in many endpoints.
        - `id` string, required: Dispatch Strategy ID
        - `label` string, required: Dispatch Strategy Label
        - `allowedProviders` string[], nullable: Allowed providers
        - `enableAutoDispatch` boolean, nullable: Enable auto dispatch
        - `providerSelectionStrategy` string, nullable: Provider selection strategy
        - `reassignOnFailure` boolean, nullable: Reassign on failure
        - `enableMaxDeliveryFee` boolean, nullable: Enable max delivery fee
        - `maxDeliveryFeeCents` integer, nullable: Max delivery fee in cents
        - `preventReassignmentPriceIncrease` boolean, nullable: Prevent a reassignment from increasing the selected delivery fee
        - `costSplitMaxFixedPriceCents` integer, nullable: Cost split max fixed price in cents
        - `costSplitMaxPercentage` number, nullable: Cost split max percentage
        - `costSplitStrategy` string, nullable: Cost split strategy
        - `smartReassignment` boolean, nullable: Smart reassignment
      - `shortReferenceCode` string, nullable: Short, non-unique human-readable reference code for the job.

## Other responses

- `422`: Unprocessable Content

---

[API](https://skmtc.dev/nash/apis/nash-api.md) - [All operations](https://skmtc.dev/nash/apis/nash-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nash/apis/nash-api/revisions/e3713837c5c9?raw)
