API Documentation
Order
- Background
- Order Address Validation (Geocoding)
- POSTCreate Order
- POSTCreate Orders
- POSTCreate or update order by external identifier
- PATCHUpdate order
- GETGet order
- POSTCreate Quote
- GETGet Order Documents
- POSTSelect Quote
- POSTRefresh order quotes
- POSTAutodispatch Order
- POSTAdd Custom Event to Order
- DELArchive order
- Bulk Order Actions
- Delivery Windows & Capacity
Dispatch Strategies
Notifications
Store Locations
Delivery Windows & Capacity
Jobs
- Background
- Package Requirements
- POSTCreate Job
- POSTCreate or Update Job by External Identifier
- PATCHUpdate Job
- GETGet Job
- GETGet Job by External Identifier
- POSTSelect Quote
- POSTRefresh Quotes
- POSTAutodispatch Job
- POSTAutodispatch Job by External Identifier
- POSTCancel Job
- POSTCancel Job by External Identifier
- POSTCreate Delivery Incident
Batch Jobs
Providers
Miscellaneous
Create Batch Job
Create a job with multiple packages
What’s a batch job?
A batch job is a group of packages that are delivered by same courier (and thus same provider). A batch job has N packages where N > 1, in contrast with single jobs (non-batch) which have a single package.
Batch types
- pattern 1: single pickup, multiple dropoffs = same pickup address, name and phone-number for all packages
- pattern 2: multiple pickups, single dropoff = same dropoff address, name and phone-number for all packages
- pattern 3: multiple pickups, multiple dropoff
- multiple pickups then multiple dropoffs. note: there’s no pickup after a dropoff (interleaving)
The response is similar to Create Job, but with the addition of two new fields:
isBatch
, and batch
field:
batch
field:
- batch.id: unique id for this batch
- batch.type: one of these values:
SINGLE_PICKUP_MULTIPLE_DROPOFFS
MULTIPLE_PICKUPS_SINGLE_DROPOFF
MULTIPLE_PICKUPS_MULTIPLE_DROPOFFS
- batch.objectSequence: list of
jobConfigurations
(which container package information) in order: - batch.stopTypes: list of stop representing actions sequence:
PICKUP
orDROPOFF
- batch.quotes, batch.winnerQuote, batch.failedQuotes: same as task.quotes, task.winnerQuote, task.failedQuotes from non-batch jobs
{
"batch": {
"id": "bth_...",
"type": "MULTIPLE_PICKUPS_MULTIPLE_DROPOFFS",
"objectSequence": [],
"stopTypes": [
"PICKUP",
"DROPOFF",
"DROPOFF"
],
"providerId": "FleetSimulatorFast",
"winnerQuote": {
"id": "qot_..",
"providerId": "FleetSimulatorFast",
"providerName": "FleetSimulator (4TestRunner)"
},
"quotes": [],
"failedQuotes": []
},
...
}
For this and all other endpoints, as Nash processes fields from different providers, please assume that any field in the response we provide may be null
.
Body
Expected input for creating a batch job.
The full address in one line for the dropoff location for this package within the Job. Address format: [Number] [Street], [second line], [city], [state], [zip code], [country]. All address fields are required except "second line". Second line should include Apt/Suite/Unit/# appended to the number of the unit.
Parsed address input serializer for creating a job.
The city of the address.
The country of the address.
The street of the address. If your geocoding service does not split numbers from street names, you can pass the street name with the number in this field. Example: 1600 Pennsylvania Avenue NW.
The county of the address.
The latitude of the address.
The longitude of the address.
The number of the address.
The postal code of the address.
The secondary number of the address.
The state of the address.
Package requirements.
photo_proof_of_delivery
, signature_proof_of_delivery
, photo_proof_of_pickup
, signature_proof_of_pickup
, age_verification_on_delivery
, id_verification_on_delivery
, barcode_scan_on_pickup
, barcode_scan_on_dropoff
, meet_on_delivery
, shipping_label
, two_person_team
, pincode_verification
, schedule_ii_controlled_substances
, alcohol
, parking_check_in
The full address in one line for the pickup location for this package within the Job. Address format: [Number] [Street], [second line], [city], [state] [zip code], [country]. All address fields are required except "second line". Second line should include Apt/Suite/Unit/# appended to the number of the unit.
Parsed address input serializer for creating a job.
The city of the address.
The country of the address.
The street of the address. If your geocoding service does not split numbers from street names, you can pass the street name with the number in this field. Example: 1600 Pennsylvania Avenue NW.
The county of the address.
The latitude of the address.
The longitude of the address.
The number of the address.
The postal code of the address.
The secondary number of the address.
The state of the address.
Pickup business name at the origin. Limited to 80 characters.
First name of the person to pickup from. If unknown pass "Manager". Limited to 80 characters.
Any special instructions for pickup. Limited to 280 characters. Nash Recommended Input: Pickup order [insert order number] for [insert customer name] from [pickup business name].
Last name of the person to pickup from. If unknown pass "Manager". Limited to 80 characters.
The phone number to contact at the location in the form: "+15555555555"
The Google place ID for the pickup location.If passed, resolving the pickup location's lat/lng will happen with this field.
The Nash store location ID for the pickup location.
Response
The format for a returned batch job used in many endpoints.
Generic serializer for batches used in many endpoints.
Created time
Quote ID
Price in cents
Provider ID
Provider name
Cost split business in cents
Cost split customer in cents
Currency
Dropoff ETA
Error message
Expire time
Insurance fee in cents
Is successful
Nash fee in cents
Pickup window
Price
Is the provider internal
Provider logo
Tags
Tax amount in cents
Toll fee in cents
Total price breakdown
Total price in cents
Quote type
PICKUP
, DROPOFF
, DRIVER_BREAK
Job Configuration ID
Package
Generic serializer for location used in many endpoints.
Address
Address city
Address country
Formatted address
Location ID
Phone number
Timezone ID
Timezone name
Address county
Address formatted street
Address number
Address state
Address zip
Business name
First name
Instructions
Last name
Package ID
Items count
Generic serializer for location used in many endpoints.
Address
Address city
Address country
Formatted address
Location ID
Phone number
Timezone ID
Timezone name
Address county
Address formatted street
Address number
Address state
Address zip
Business name
First name
Instructions
Last name
Requirements
Description
Dimensions
Driving metrics (distance in meters, duration in seconds)
Dropoff end time
Dropoff start time
Dropoff store location ID
External identifier
Items
Minimum vehicle size
Package delivery mode
Package metadata
Pickup end time
Pickup start time
Pickup store location ID
Reference ID
Service fee
Service fee in cents
Tags
Tax
Tax in cents
Value
Weight
Tasks
Created at
Task ID
Status
Delivery object
Currency
Delivery ID
Is the delivery active
Price in cents
Delivery status
Cancellation fee in cents
Courier dropoff phone number
Courier location
Courier name
Courier phone number
Courier pickup phone number
Courier profile image
Courier vehicle
Documents
Dropoff deadline
Dropoff ETA
Insurance fee in cents
Nash fee in cents
Other provider fees
Pickup ETA
Price
Proof of delivery
Provider batch id
Provider delivery id
Return fee in cents
Delivery status history
Tax amount in cents
Toll fee in cents
Total price breakdown
Total price in cents
Wait fee in cents
Wait time in minutes
Dropoff end time
Dropoff start time
Failed quotes
Failure reason
Pickup end time
Pickup start time
Provider ID
Provider is internal
Quotes
Created time
Quote ID
Price in cents
Provider ID
Provider name
Cost split business in cents
Cost split customer in cents
Currency
Dropoff ETA
Error message
Expire time
Insurance fee in cents
Is successful
Nash fee in cents
Pickup window
Price
Is the provider internal
Provider logo
Tags
Tax amount in cents
Toll fee in cents
Total price breakdown
Total price in cents
Quote type
Task notes
Created at
Note ID
Note
Tip amount in cents
Tip amount in USD
Winner quote
Advanced task
Created at
Task ID
Status
Delivery object
Currency
Delivery ID
Is the delivery active
Price in cents
Delivery status
Cancellation fee in cents
Courier dropoff phone number
Courier location
Courier name
Courier phone number
Courier pickup phone number
Courier profile image
Courier vehicle
Documents
Dropoff deadline
Dropoff ETA
Insurance fee in cents
Nash fee in cents
Other provider fees
Pickup ETA
Price
Proof of delivery
Provider batch id
Provider delivery id
Return fee in cents
Delivery status history
Tax amount in cents
Toll fee in cents
Total price breakdown
Total price in cents
Wait fee in cents
Wait time in minutes
Dropoff end time
Dropoff start time
Failed quotes
Failure reason
Pickup end time
Pickup start time
Provider ID
Provider is internal
Quotes
Created time
Quote ID
Price in cents
Provider ID
Provider name
Cost split business in cents
Cost split customer in cents
Currency
Dropoff ETA
Error message
Expire time
Insurance fee in cents
Is successful
Nash fee in cents
Pickup window
Price
Is the provider internal
Provider logo
Tags
Tax amount in cents
Toll fee in cents
Total price breakdown
Total price in cents
Quote type
Task notes
Created at
Note ID
Note
Tip amount in cents
Tip amount in USD
Winner quote
Delivery
Currency
Delivery ID
Is the delivery active
Price in cents
Delivery status
Cancellation fee in cents
Courier dropoff phone number
Courier location
Courier name
Courier phone number
Courier pickup phone number
Courier profile image
Courier vehicle
Documents
Dropoff deadline
Dropoff ETA
Insurance fee in cents
Nash fee in cents
Other provider fees
Pickup ETA
Price
Proof of delivery
Provider batch id
Provider delivery id
Return fee in cents
Delivery status history
Tax amount in cents
Toll fee in cents
Total price breakdown
Total price in cents
Wait fee in cents
Wait time in minutes
Public tracking URL
Generic serializer for options groups used in many endpoints.
Dispatch Strategy ID
Dispatch Strategy Label
Allowed providers
Cost split max fixed price in cents
Cost split max percentage
Cost split strategy
Enable auto dispatch
Enable max delivery fee
Max delivery fee in cents
Provider selection strategy
Reassign on failure
Short, non-unique human-readable reference code for the job.