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
- PATCHUnarchive order
- Bulk Order Actions
- Delivery Windows & Capacity
Dispatch Strategies
Notifications
Store Locations & Zones
- POSTCreate store location
- PATCHUpdate Store Location
- GETGet Store Location
- GETGet Store Locations
- GETGet store location by external identifier
- DELDelete store location
- GETGet store locations that cover specified location (latitude & longitude, city_zipcode)
- POSTCreate a zone
- PATCHUpdate a zone
- DELDelete a zone
- GETGet zone
- GETGet zones
- GETGet zone by external identifier
- GETGet zones that cover specified location (latitude & longitude, city_zipcode)
Jobs
- Background
- Package Requirements
- POSTCreate Job
- POSTCreate or Update Job by External Identifier
- PATCHUpdate Job
- GETGet Job
- GETGet Job by External Identifier
- POSTSelect Quote
- POSTReassign a Task
- POSTRefresh Quotes
- POSTAutodispatch Job
- POSTAutodispatch Job by External Identifier
- POSTCancel Job
- POSTCancel Job by External Identifier
- POSTCreate Delivery Incident
- GETGet Refund Requests
- GETGet Refund Request
Batch Jobs
Providers
Miscellaneous
Update Batch Job
This endpoint allows you to update some fields in the Nash job. Updating a job should always work before a quote is selected, but if a quote has been selected, Nash will return an error if the fleet rejects the update of the order.
curl --request PATCH \
--url https://api.sandbox.usenash.com/v1/jobs/{jobId}/{jobConfigurationId} \
--header 'Content-Type: application/json' \
--data '{
"pickupAddress": "<string>",
"pickupPhoneNumber": "<string>",
"pickupBusinessName": "<string>",
"pickupFirstName": "<string>",
"pickupLastName": "<string>",
"pickupEmail": "<string>",
"pickupInstructions": "<string>",
"pickupStoreLocationId": "<string>",
"dropoffAddress": "<string>",
"dropoffPhoneNumber": "<string>",
"dropoffBusinessName": "<string>",
"dropoffFirstName": "<string>",
"dropoffLastName": "<string>",
"dropoffEmail": "<string>",
"dropoffStoreLocationId": "<string>",
"dropoffInstructions": "<string>",
"packageDeliveryMode": "<string>",
"packagePickupStartTime": "<string>",
"packagePickupEndTime": "<string>",
"packageDropoffStartTime": "<string>",
"packageDropoffEndTime": "<string>",
"packageDescription": "<string>",
"packageRequirements": [
"<string>"
],
"packageValue": 123,
"packageTax": 123,
"tipAmount": 123,
"currency": "<string>",
"externalIdentifier": "<string>",
"itemsCount": 123,
"jobMetadata": {},
"referenceId": "<string>"
}'
{
"id": "job_01234567890",
"createdAt": "2023-08-29T19:17:46.264523",
"portalUrl": "https://usenash.com/portal/job_abc123",
"externalIdentifier": "mini-mart-order-99",
"jobMetadata": {
"key": "value"
},
"isActive": true,
"isBatch": false,
"jobConfigurations": [
{
"id": "cfg_01234567890",
"package": {
"id": "pkg_01234567890",
"description": "Package description",
"requirements": [
"photo_proof_of_delivery",
"age_verification_on_delivery"
],
"tags": [
"Alcohol"
],
"packageDeliveryMode": "now",
"pickupStartTime": "2021-01-01T00:00:00Z",
"pickupEndTime": "2021-01-01T00:00:00Z",
"pickupBarcodes": [
"<string>"
],
"dropoffStartTime": "2021-01-01T00:00:00Z",
"dropoffEndTime": "2021-01-01T00:00:00Z",
"dropoffBarcodes": [
"<string>"
],
"valueCents": 123,
"taxCents": 100,
"serviceFeeCents": 100,
"itemsCount": 100,
"externalIdentifier": "mini-mart-order-99",
"minimumVehicleSize": "car",
"pickupLocation": {
"id": "loc_01234567890",
"address": "1600 Amphitheatre Parkway",
"formattedAddress": "1600 Amphitheatre Parkway",
"addressNumber": "1600",
"addressFormattedStreet": "Amphitheatre Parkway",
"addressCity": "Mountain View",
"addressCounty": "Santa Clara",
"addressState": "CA",
"addressZip": "94043",
"addressCountry": "US",
"timezoneId": "America/Los_Angeles",
"timezoneName": "Pacific Time",
"instructions": "Turn left on Main St",
"businessName": "Nash",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "+15555555555",
"email": "john.doe@example.com"
},
"pickupStoreLocationId": "store_01234567890",
"dropoffLocation": {
"id": "loc_01234567890",
"address": "1600 Amphitheatre Parkway",
"formattedAddress": "1600 Amphitheatre Parkway",
"addressNumber": "1600",
"addressFormattedStreet": "Amphitheatre Parkway",
"addressCity": "Mountain View",
"addressCounty": "Santa Clara",
"addressState": "CA",
"addressZip": "94043",
"addressCountry": "US",
"timezoneId": "America/Los_Angeles",
"timezoneName": "Pacific Time",
"instructions": "Turn left on Main St",
"businessName": "Nash",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "+15555555555",
"email": "john.doe@example.com"
},
"dropoffStoreLocationId": "store_01234567890",
"drivingMetrics": {
"distance": 100,
"duration": 100
},
"value": 100,
"tax": 100,
"serviceFee": 100,
"tipAmountCents": 123,
"weight": 100,
"dimensions": {
"height": 100,
"length": 100,
"width": 100
},
"items": [
{
"count": 1,
"description": "Item 1",
"valueCents": 100
}
],
"referenceId": "mini-mart-order-99",
"packageMetadata": {
"key": "value"
}
},
"tasks": [
{
"id": "tsk_01234567890",
"createdAt": "2023-08-29T19:17:46.264523",
"status": "running",
"pickupStartTime": "2023-08-29T19:17:46.264523",
"pickupEndTime": "2023-08-29T19:17:46.264523",
"dropoffStartTime": "2023-08-29T19:17:46.264523",
"dropoffEndTime": "2023-08-29T19:17:46.264523",
"providerId": "prv_01234567890",
"providerIsInternal": true,
"tipAmountCents": 100,
"winnerQuote": {
"id": "qot_01234567890",
"price_cents": 100
},
"quotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"failedQuotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"delivery": {
"id": "dlv_01234567890",
"type": "<string>",
"status": "dropoff_complete",
"statusHistory": [
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
],
"isActive": true,
"pickupEta": "<string>",
"dropoffEta": "<string>",
"dropoffDeadline": "<string>",
"priceCents": 123,
"currency": "<string>",
"documents": [
{
"createdAt": "<string>",
"id": "<string>",
"type": "<string>",
"url": "<string>",
"contentType": "<string>",
"documentMetadata": {}
}
],
"nashFeeCents": 123,
"courierName": "<string>",
"courierPhoneNumber": "<string>",
"courierPickupPhoneNumber": "<string>",
"courierDropoffPhoneNumber": "<string>",
"courierLocation": {},
"courierVehicle": {},
"courierProfileImage": "<string>",
"proofOfDelivery": [
{}
],
"providerDeliveryId": "<string>",
"providerBatchId": "<string>",
"price": 123,
"taxAmountCents": 123,
"tollFeeCents": 123,
"waitFeeCents": 123,
"waitTimeMinutes": 123,
"cancellationFeeCents": 123,
"returnFeeCents": 123,
"otherProviderFees": {},
"insuranceFeeCents": 123,
"totalPriceBreakdown": {},
"totalPriceCents": 123
},
"tipAmountUsd": 100,
"failureReason": "Task failed",
"taskNotes": [
{
"created_at": "2023-08-29T19:17:46.264523",
"id": "not_01234567890",
"note": "Task note",
"user": {
"email": "john.doe@example.com"
}
}
]
}
],
"advancedTask": {
"id": "tsk_01234567890",
"createdAt": "2023-08-29T19:17:46.264523",
"status": "running",
"pickupStartTime": "2023-08-29T19:17:46.264523",
"pickupEndTime": "2023-08-29T19:17:46.264523",
"dropoffStartTime": "2023-08-29T19:17:46.264523",
"dropoffEndTime": "2023-08-29T19:17:46.264523",
"providerId": "prv_01234567890",
"providerIsInternal": true,
"tipAmountCents": 100,
"winnerQuote": {
"id": "qot_01234567890",
"price_cents": 100
},
"quotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"failedQuotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"delivery": {
"id": "dlv_01234567890",
"type": "<string>",
"status": "dropoff_complete",
"statusHistory": [
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
],
"isActive": true,
"pickupEta": "<string>",
"dropoffEta": "<string>",
"dropoffDeadline": "<string>",
"priceCents": 123,
"currency": "<string>",
"documents": [
{
"createdAt": "<string>",
"id": "<string>",
"type": "<string>",
"url": "<string>",
"contentType": "<string>",
"documentMetadata": {}
}
],
"nashFeeCents": 123,
"courierName": "<string>",
"courierPhoneNumber": "<string>",
"courierPickupPhoneNumber": "<string>",
"courierDropoffPhoneNumber": "<string>",
"courierLocation": {},
"courierVehicle": {},
"courierProfileImage": "<string>",
"proofOfDelivery": [
{}
],
"providerDeliveryId": "<string>",
"providerBatchId": "<string>",
"price": 123,
"taxAmountCents": 123,
"tollFeeCents": 123,
"waitFeeCents": 123,
"waitTimeMinutes": 123,
"cancellationFeeCents": 123,
"returnFeeCents": 123,
"otherProviderFees": {},
"insuranceFeeCents": 123,
"totalPriceBreakdown": {},
"totalPriceCents": 123
},
"tipAmountUsd": 100,
"failureReason": "Task failed",
"taskNotes": [
{
"created_at": "2023-08-29T19:17:46.264523",
"id": "not_01234567890",
"note": "Task note",
"user": {
"email": "john.doe@example.com"
}
}
]
},
"delivery": {
"id": "dlv_01234567890",
"type": "<string>",
"status": "dropoff_complete",
"statusHistory": [
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
],
"isActive": true,
"pickupEta": "<string>",
"dropoffEta": "<string>",
"dropoffDeadline": "<string>",
"priceCents": 123,
"currency": "<string>",
"documents": [
{
"createdAt": "<string>",
"id": "<string>",
"type": "<string>",
"url": "<string>",
"contentType": "<string>",
"documentMetadata": {}
}
],
"nashFeeCents": 123,
"courierName": "<string>",
"courierPhoneNumber": "<string>",
"courierPickupPhoneNumber": "<string>",
"courierDropoffPhoneNumber": "<string>",
"courierLocation": {},
"courierVehicle": {},
"courierProfileImage": "<string>",
"proofOfDelivery": [
{}
],
"providerDeliveryId": "<string>",
"providerBatchId": "<string>",
"price": 123,
"taxAmountCents": 123,
"tollFeeCents": 123,
"waitFeeCents": 123,
"waitTimeMinutes": 123,
"cancellationFeeCents": 123,
"returnFeeCents": 123,
"otherProviderFees": {},
"insuranceFeeCents": 123,
"totalPriceBreakdown": {},
"totalPriceCents": 123
},
"publicTrackingUrl": "https://usenash.com/tracking/job_abc123"
}
],
"optionsGroup": {
"id": "opn_WyMhHj",
"label": "New York City Strategy",
"allowedProviders": [
"prv_01234567890",
"prv_01234567891"
],
"enableAutoDispatch": true,
"providerSelectionStrategy": "cheapest",
"reassignOnFailure": true,
"enableMaxDeliveryFee": true,
"maxDeliveryFeeCents": 10000,
"costSplitMaxFixedPriceCents": 10000,
"costSplitMaxPercentage": 0.1,
"costSplitStrategy": "price",
"smartReassignment": true
},
"shortReferenceCode": "0123456",
"selectedConfiguration": {
"tasks": []
},
"jobSpecification": {
"packages": []
}
}
Pre Dispatch Updates
Updating a job should always work before a quote is selected. Some updates may result in pricing changes
Please note that you are only able to update the package delivery times and the pickup or dropoff addresses before an order has been dispatched to a fleet. If any task in a job is dispatched and a delivery time or address are attempted to be updated, then an error will be thrown by the endpoint.
If you update any of the following fields, then the quotes returned by the job will be refreshed and the endpoint will return a new set of quotes. Moreover, any existing quotes (and quote IDs) will be invalid for dispatch. The fields that will force a refresh in the Quotes:
pickupAddress
dropoffAddress
packagePickupStartTime
packagePickupEndTime
packageDropoffStartTime
packageDropoffEndTime
packageDeliveryMode
packageRequirements
packageMinimumVehicleSize
packageValue
: for this field, it can also be updated in the post-dispatch stage
Note on Updating Times
If you wish to update the times of a Job, you must provide at least one time constraint out of packagePickupStartTime
, packagePickupEndTime
, packageDropoffStartTime
, and packageDropoffEndTime
. Times that are not specified will be calculated by Nash, and the previous times not included in the Update Request will be overwritten. Therefore, if you want to update only one time field and keep the rest the same, you must provide them in the parameters of the Update Request.
If you change a packageDeliveryMode=SCHEDULED
job to NOW
, you do not need to specify any other time fields.
Post Dispatch Updates
If a quote has been selected or the job is dispatched via auto-dispatch, Nash will return an error if any of the assigned fleets in the job reject the update of the order.
In the post-dispatch stage, updating the package value of the job may result in a price change, based on how the providers calculate their pricing.
Below is a list of fields that are allowed to be updated, with more details on pre-dispatch or post-dispatch restrictions.
Path Parameters
job id
job configuration id
Body
Expected input for update job endpoint.
Pickup address
Pickup phone number
Pickup business name
Pickup first name
Pickup last name
Pickup email
Pickup instructions
Pickup store location ID
Dropoff address
Dropoff phone number
Dropoff business name
Dropoff first name
Dropoff last name
Dropoff email
Dropoff store location ID
Dropoff instructions
Package delivery mode
Package pickup start time
Package pickup end time
Package dropoff start time
Package dropoff end time
Package description
Package requirements
Package value
Package tax
Tip amount
Currency
External identifier
Items count
Job metadata
Reference ID
Response
A Nash Job.
Job ID
"job_01234567890"
Created at
"2023-08-29T19:17:46.264523"
Portal URL
"https://usenash.com/portal/job_abc123"
Is the job active
true
Is the job a batch
false
Job configurations
Generic serializer for jbo configurations used in many endpoints.
Job Configuration ID
"cfg_01234567890"
Package
Package ID
"pkg_01234567890"
Requirements
[
"photo_proof_of_delivery",
"age_verification_on_delivery"
]
Items count
100
Generic serializer for location used in many endpoints.
Location ID
"loc_01234567890"
Address
"1600 Amphitheatre Parkway"
Formatted address
"1600 Amphitheatre Parkway"
Address city
"Mountain View"
Address country
"US"
Timezone ID
"America/Los_Angeles"
Timezone name
"Pacific Time"
Phone number
"+15555555555"
Address number
"1600"
Address formatted street
"Amphitheatre Parkway"
Address county
"Santa Clara"
Address state
"CA"
Address zip
"94043"
Instructions
"Turn left on Main St"
Business name
"Nash"
First name
"John"
Last name
"Doe"
"john.doe@example.com"
Generic serializer for location used in many endpoints.
Location ID
"loc_01234567890"
Address
"1600 Amphitheatre Parkway"
Formatted address
"1600 Amphitheatre Parkway"
Address city
"Mountain View"
Address country
"US"
Timezone ID
"America/Los_Angeles"
Timezone name
"Pacific Time"
Phone number
"+15555555555"
Address number
"1600"
Address formatted street
"Amphitheatre Parkway"
Address county
"Santa Clara"
Address state
"CA"
Address zip
"94043"
Instructions
"Turn left on Main St"
Business name
"Nash"
First name
"John"
Last name
"Doe"
"john.doe@example.com"
Description
"Package description"
Tags
["Alcohol"]
Package delivery mode
"now"
Pickup start time
"2021-01-01T00:00:00Z"
Pickup end time
"2021-01-01T00:00:00Z"
Dropoff start time
"2021-01-01T00:00:00Z"
Dropoff end time
"2021-01-01T00:00:00Z"
Tax in cents
100
Service fee in cents
100
External identifier
"mini-mart-order-99"
Minimum vehicle size
"car"
Pickup store location ID
"store_01234567890"
Dropoff store location ID
"store_01234567890"
Driving metrics (distance in meters, duration in seconds)
{ "distance": 100, "duration": 100 }
Value
100
Tax
100
Service fee
100
Weight
100
Dimensions
{
"height": 100,
"length": 100,
"width": 100
}
Items
[
{
"count": 1,
"description": "Item 1",
"valueCents": 100
}
]
Reference ID
"mini-mart-order-99"
Package metadata
{ "key": "value" }
Tasks
Generic serializer for tasks used in many endpoints.
Task ID
"tsk_01234567890"
Created at
"2023-08-29T19:17:46.264523"
Status
"running"
Pickup start time
"2023-08-29T19:17:46.264523"
Pickup end time
"2023-08-29T19:17:46.264523"
Dropoff start time
"2023-08-29T19:17:46.264523"
Dropoff end time
"2023-08-29T19:17:46.264523"
Provider ID
"prv_01234567890"
Provider is internal
true
Tip amount in cents
100
Winner quote
{
"id": "qot_01234567890",
"price_cents": 100
}
Quotes
Generic serializer for quotes used in many endpoints.
Quote ID
"qot_01234567890"
Provider ID
"uber_standard_mini_mart"
Provider name
"Nash"
Created time
"2021-01-01T00:00:00Z"
Price in cents
1000
Quote type
Provider logo
"https://nash.com/logo.png"
Is the provider internal
Expire time
"2021-01-01T00:00:00Z"
Tax amount in cents
100
Toll fee in cents
100
Nash fee in cents
100
Insurance fee in cents
100
Currency
"USD"
Pickup window
"2021-01-01T00:00:00Z"
Dropoff ETA
"2021-01-01T00:00:00Z"
Tags
["tag1", "tag2"]
Cost split customer in cents
100
Cost split business in cents
100
Total price breakdown
{
"subtotal": 1000,
"tax": 100,
"total": 1100
}
Total price in cents
1000
Price
1000
Is successful
true
Error message
"Error message"
[
{
"id": "qot_01234567890",
"price_cents": 100
}
]
Failed quotes
[
{
"id": "qot_01234567890",
"price_cents": 100
}
]
Delivery object
Delivery ID
"dlv_01234567890"
Delivery status
"dropoff_complete"
Is the delivery active
Price in cents
Currency
Delivery status history
[
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
]
Pickup ETA
Dropoff ETA
Dropoff deadline
Documents
Generic serializer for Nash documents; Used for output.
Nash fee in cents
Courier name
Courier phone number
Courier pickup phone number
Courier dropoff phone number
Courier location
Courier vehicle
Courier profile image
Proof of delivery
Provider delivery id
Provider batch id
Price
Tax amount in cents
Toll fee in cents
Wait fee in cents
Wait time in minutes
Cancellation fee in cents
Return fee in cents
Other provider fees
Insurance fee in cents
Total price breakdown
Total price in cents
Tip amount in USD
100
Failure reason
"Task failed"
Task notes
Generic serializer for notes used in many endpoints.
Note ID
"not_01234567890"
Created at
"2023-08-29T19:17:46.264523"
Note
"Task note"
[
{
"created_at": "2023-08-29T19:17:46.264523",
"id": "not_01234567890",
"note": "Task note",
"user": { "email": "john.doe@example.com" }
}
]
Advanced task
Task ID
"tsk_01234567890"
Created at
"2023-08-29T19:17:46.264523"
Status
"running"
Pickup start time
"2023-08-29T19:17:46.264523"
Pickup end time
"2023-08-29T19:17:46.264523"
Dropoff start time
"2023-08-29T19:17:46.264523"
Dropoff end time
"2023-08-29T19:17:46.264523"
Provider ID
"prv_01234567890"
Provider is internal
true
Tip amount in cents
100
Winner quote
{
"id": "qot_01234567890",
"price_cents": 100
}
Quotes
Generic serializer for quotes used in many endpoints.
Quote ID
"qot_01234567890"
Provider ID
"uber_standard_mini_mart"
Provider name
"Nash"
Created time
"2021-01-01T00:00:00Z"
Price in cents
1000
Quote type
Provider logo
"https://nash.com/logo.png"
Is the provider internal
Expire time
"2021-01-01T00:00:00Z"
Tax amount in cents
100
Toll fee in cents
100
Nash fee in cents
100
Insurance fee in cents
100
Currency
"USD"
Pickup window
"2021-01-01T00:00:00Z"
Dropoff ETA
"2021-01-01T00:00:00Z"
Tags
["tag1", "tag2"]
Cost split customer in cents
100
Cost split business in cents
100
Total price breakdown
{
"subtotal": 1000,
"tax": 100,
"total": 1100
}
Total price in cents
1000
Price
1000
Is successful
true
Error message
"Error message"
[
{
"id": "qot_01234567890",
"price_cents": 100
}
]
Failed quotes
[
{
"id": "qot_01234567890",
"price_cents": 100
}
]
Delivery object
Delivery ID
"dlv_01234567890"
Delivery status
"dropoff_complete"
Is the delivery active
Price in cents
Currency
Delivery status history
[
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
]
Pickup ETA
Dropoff ETA
Dropoff deadline
Documents
Generic serializer for Nash documents; Used for output.
Nash fee in cents
Courier name
Courier phone number
Courier pickup phone number
Courier dropoff phone number
Courier location
Courier vehicle
Courier profile image
Proof of delivery
Provider delivery id
Provider batch id
Price
Tax amount in cents
Toll fee in cents
Wait fee in cents
Wait time in minutes
Cancellation fee in cents
Return fee in cents
Other provider fees
Insurance fee in cents
Total price breakdown
Total price in cents
Tip amount in USD
100
Failure reason
"Task failed"
Task notes
Generic serializer for notes used in many endpoints.
Note ID
"not_01234567890"
Created at
"2023-08-29T19:17:46.264523"
Note
"Task note"
[
{
"created_at": "2023-08-29T19:17:46.264523",
"id": "not_01234567890",
"note": "Task note",
"user": { "email": "john.doe@example.com" }
}
]
Delivery
Delivery ID
"dlv_01234567890"
Delivery status
"dropoff_complete"
Is the delivery active
Price in cents
Currency
Delivery status history
[
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
]
Pickup ETA
Dropoff ETA
Dropoff deadline
Documents
Generic serializer for Nash documents; Used for output.
Nash fee in cents
Courier name
Courier phone number
Courier pickup phone number
Courier dropoff phone number
Courier location
Courier vehicle
Courier profile image
Proof of delivery
Provider delivery id
Provider batch id
Price
Tax amount in cents
Toll fee in cents
Wait fee in cents
Wait time in minutes
Cancellation fee in cents
Return fee in cents
Other provider fees
Insurance fee in cents
Total price breakdown
Total price in cents
Public tracking URL
"https://usenash.com/tracking/job_abc123"
External identifier
"mini-mart-order-99"
Job metadata
{ "key": "value" }
Options group
Dispatch Strategy ID
"opn_WyMhHj"
Dispatch Strategy Label
"New York City Strategy"
Allowed providers
["prv_01234567890", "prv_01234567891"]
Enable auto dispatch
true
Provider selection strategy
"cheapest"
Reassign on failure
true
Enable max delivery fee
true
Max delivery fee in cents
10000
Cost split max fixed price in cents
10000
Cost split max percentage
0.1
Cost split strategy
"price"
Smart reassignment
true
7-digit non-unique human-readable reference code for the job.
"0123456"
Selected configuration
Generic serializer for tasks used in many endpoints.
Task ID
"tsk_01234567890"
Created at
"2023-08-29T19:17:46.264523"
Status
"running"
Pickup start time
"2023-08-29T19:17:46.264523"
Pickup end time
"2023-08-29T19:17:46.264523"
Dropoff start time
"2023-08-29T19:17:46.264523"
Dropoff end time
"2023-08-29T19:17:46.264523"
Provider ID
"prv_01234567890"
Provider is internal
true
Tip amount in cents
100
Winner quote
{
"id": "qot_01234567890",
"price_cents": 100
}
Quotes
Generic serializer for quotes used in many endpoints.
Quote ID
"qot_01234567890"
Provider ID
"uber_standard_mini_mart"
Provider name
"Nash"
Created time
"2021-01-01T00:00:00Z"
Price in cents
1000
Quote type
Provider logo
"https://nash.com/logo.png"
Is the provider internal
Expire time
"2021-01-01T00:00:00Z"
Tax amount in cents
100
Toll fee in cents
100
Nash fee in cents
100
Insurance fee in cents
100
Currency
"USD"
Pickup window
"2021-01-01T00:00:00Z"
Dropoff ETA
"2021-01-01T00:00:00Z"
Tags
["tag1", "tag2"]
Cost split customer in cents
100
Cost split business in cents
100
Total price breakdown
{
"subtotal": 1000,
"tax": 100,
"total": 1100
}
Total price in cents
1000
Price
1000
Is successful
true
Error message
"Error message"
[
{
"id": "qot_01234567890",
"price_cents": 100
}
]
Failed quotes
[
{
"id": "qot_01234567890",
"price_cents": 100
}
]
Delivery object
Delivery ID
"dlv_01234567890"
Delivery status
"dropoff_complete"
Is the delivery active
Price in cents
Currency
Delivery status history
[
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
]
Pickup ETA
Dropoff ETA
Dropoff deadline
Documents
Generic serializer for Nash documents; Used for output.
Nash fee in cents
Courier name
Courier phone number
Courier pickup phone number
Courier dropoff phone number
Courier location
Courier vehicle
Courier profile image
Proof of delivery
Provider delivery id
Provider batch id
Price
Tax amount in cents
Toll fee in cents
Wait fee in cents
Wait time in minutes
Cancellation fee in cents
Return fee in cents
Other provider fees
Insurance fee in cents
Total price breakdown
Total price in cents
Tip amount in USD
100
Failure reason
"Task failed"
Task notes
Generic serializer for notes used in many endpoints.
Note ID
"not_01234567890"
Created at
"2023-08-29T19:17:46.264523"
Note
"Task note"
[
{
"created_at": "2023-08-29T19:17:46.264523",
"id": "not_01234567890",
"note": "Task note",
"user": { "email": "john.doe@example.com" }
}
]
{ "tasks": [] }
Job specification
Generic serializer for packages used in many endpoints; Used for output.
Package ID
"pkg_01234567890"
Requirements
[
"photo_proof_of_delivery",
"age_verification_on_delivery"
]
Items count
100
Generic serializer for location used in many endpoints.
Location ID
"loc_01234567890"
Address
"1600 Amphitheatre Parkway"
Formatted address
"1600 Amphitheatre Parkway"
Address city
"Mountain View"
Address country
"US"
Timezone ID
"America/Los_Angeles"
Timezone name
"Pacific Time"
Phone number
"+15555555555"
Address number
"1600"
Address formatted street
"Amphitheatre Parkway"
Address county
"Santa Clara"
Address state
"CA"
Address zip
"94043"
Instructions
"Turn left on Main St"
Business name
"Nash"
First name
"John"
Last name
"Doe"
"john.doe@example.com"
Generic serializer for location used in many endpoints.
Location ID
"loc_01234567890"
Address
"1600 Amphitheatre Parkway"
Formatted address
"1600 Amphitheatre Parkway"
Address city
"Mountain View"
Address country
"US"
Timezone ID
"America/Los_Angeles"
Timezone name
"Pacific Time"
Phone number
"+15555555555"
Address number
"1600"
Address formatted street
"Amphitheatre Parkway"
Address county
"Santa Clara"
Address state
"CA"
Address zip
"94043"
Instructions
"Turn left on Main St"
Business name
"Nash"
First name
"John"
Last name
"Doe"
"john.doe@example.com"
Description
"Package description"
Tags
["Alcohol"]
Package delivery mode
"now"
Pickup start time
"2021-01-01T00:00:00Z"
Pickup end time
"2021-01-01T00:00:00Z"
Dropoff start time
"2021-01-01T00:00:00Z"
Dropoff end time
"2021-01-01T00:00:00Z"
Tax in cents
100
Service fee in cents
100
External identifier
"mini-mart-order-99"
Minimum vehicle size
"car"
Pickup store location ID
"store_01234567890"
Dropoff store location ID
"store_01234567890"
Driving metrics (distance in meters, duration in seconds)
{ "distance": 100, "duration": 100 }
Value
100
Tax
100
Service fee
100
Weight
100
Dimensions
{
"height": 100,
"length": 100,
"width": 100
}
Items
[
{
"count": 1,
"description": "Item 1",
"valueCents": 100
}
]
Reference ID
"mini-mart-order-99"
Package metadata
{ "key": "value" }
{ "packages": [] }
curl --request PATCH \
--url https://api.sandbox.usenash.com/v1/jobs/{jobId}/{jobConfigurationId} \
--header 'Content-Type: application/json' \
--data '{
"pickupAddress": "<string>",
"pickupPhoneNumber": "<string>",
"pickupBusinessName": "<string>",
"pickupFirstName": "<string>",
"pickupLastName": "<string>",
"pickupEmail": "<string>",
"pickupInstructions": "<string>",
"pickupStoreLocationId": "<string>",
"dropoffAddress": "<string>",
"dropoffPhoneNumber": "<string>",
"dropoffBusinessName": "<string>",
"dropoffFirstName": "<string>",
"dropoffLastName": "<string>",
"dropoffEmail": "<string>",
"dropoffStoreLocationId": "<string>",
"dropoffInstructions": "<string>",
"packageDeliveryMode": "<string>",
"packagePickupStartTime": "<string>",
"packagePickupEndTime": "<string>",
"packageDropoffStartTime": "<string>",
"packageDropoffEndTime": "<string>",
"packageDescription": "<string>",
"packageRequirements": [
"<string>"
],
"packageValue": 123,
"packageTax": 123,
"tipAmount": 123,
"currency": "<string>",
"externalIdentifier": "<string>",
"itemsCount": 123,
"jobMetadata": {},
"referenceId": "<string>"
}'
{
"id": "job_01234567890",
"createdAt": "2023-08-29T19:17:46.264523",
"portalUrl": "https://usenash.com/portal/job_abc123",
"externalIdentifier": "mini-mart-order-99",
"jobMetadata": {
"key": "value"
},
"isActive": true,
"isBatch": false,
"jobConfigurations": [
{
"id": "cfg_01234567890",
"package": {
"id": "pkg_01234567890",
"description": "Package description",
"requirements": [
"photo_proof_of_delivery",
"age_verification_on_delivery"
],
"tags": [
"Alcohol"
],
"packageDeliveryMode": "now",
"pickupStartTime": "2021-01-01T00:00:00Z",
"pickupEndTime": "2021-01-01T00:00:00Z",
"pickupBarcodes": [
"<string>"
],
"dropoffStartTime": "2021-01-01T00:00:00Z",
"dropoffEndTime": "2021-01-01T00:00:00Z",
"dropoffBarcodes": [
"<string>"
],
"valueCents": 123,
"taxCents": 100,
"serviceFeeCents": 100,
"itemsCount": 100,
"externalIdentifier": "mini-mart-order-99",
"minimumVehicleSize": "car",
"pickupLocation": {
"id": "loc_01234567890",
"address": "1600 Amphitheatre Parkway",
"formattedAddress": "1600 Amphitheatre Parkway",
"addressNumber": "1600",
"addressFormattedStreet": "Amphitheatre Parkway",
"addressCity": "Mountain View",
"addressCounty": "Santa Clara",
"addressState": "CA",
"addressZip": "94043",
"addressCountry": "US",
"timezoneId": "America/Los_Angeles",
"timezoneName": "Pacific Time",
"instructions": "Turn left on Main St",
"businessName": "Nash",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "+15555555555",
"email": "john.doe@example.com"
},
"pickupStoreLocationId": "store_01234567890",
"dropoffLocation": {
"id": "loc_01234567890",
"address": "1600 Amphitheatre Parkway",
"formattedAddress": "1600 Amphitheatre Parkway",
"addressNumber": "1600",
"addressFormattedStreet": "Amphitheatre Parkway",
"addressCity": "Mountain View",
"addressCounty": "Santa Clara",
"addressState": "CA",
"addressZip": "94043",
"addressCountry": "US",
"timezoneId": "America/Los_Angeles",
"timezoneName": "Pacific Time",
"instructions": "Turn left on Main St",
"businessName": "Nash",
"firstName": "John",
"lastName": "Doe",
"phoneNumber": "+15555555555",
"email": "john.doe@example.com"
},
"dropoffStoreLocationId": "store_01234567890",
"drivingMetrics": {
"distance": 100,
"duration": 100
},
"value": 100,
"tax": 100,
"serviceFee": 100,
"tipAmountCents": 123,
"weight": 100,
"dimensions": {
"height": 100,
"length": 100,
"width": 100
},
"items": [
{
"count": 1,
"description": "Item 1",
"valueCents": 100
}
],
"referenceId": "mini-mart-order-99",
"packageMetadata": {
"key": "value"
}
},
"tasks": [
{
"id": "tsk_01234567890",
"createdAt": "2023-08-29T19:17:46.264523",
"status": "running",
"pickupStartTime": "2023-08-29T19:17:46.264523",
"pickupEndTime": "2023-08-29T19:17:46.264523",
"dropoffStartTime": "2023-08-29T19:17:46.264523",
"dropoffEndTime": "2023-08-29T19:17:46.264523",
"providerId": "prv_01234567890",
"providerIsInternal": true,
"tipAmountCents": 100,
"winnerQuote": {
"id": "qot_01234567890",
"price_cents": 100
},
"quotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"failedQuotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"delivery": {
"id": "dlv_01234567890",
"type": "<string>",
"status": "dropoff_complete",
"statusHistory": [
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
],
"isActive": true,
"pickupEta": "<string>",
"dropoffEta": "<string>",
"dropoffDeadline": "<string>",
"priceCents": 123,
"currency": "<string>",
"documents": [
{
"createdAt": "<string>",
"id": "<string>",
"type": "<string>",
"url": "<string>",
"contentType": "<string>",
"documentMetadata": {}
}
],
"nashFeeCents": 123,
"courierName": "<string>",
"courierPhoneNumber": "<string>",
"courierPickupPhoneNumber": "<string>",
"courierDropoffPhoneNumber": "<string>",
"courierLocation": {},
"courierVehicle": {},
"courierProfileImage": "<string>",
"proofOfDelivery": [
{}
],
"providerDeliveryId": "<string>",
"providerBatchId": "<string>",
"price": 123,
"taxAmountCents": 123,
"tollFeeCents": 123,
"waitFeeCents": 123,
"waitTimeMinutes": 123,
"cancellationFeeCents": 123,
"returnFeeCents": 123,
"otherProviderFees": {},
"insuranceFeeCents": 123,
"totalPriceBreakdown": {},
"totalPriceCents": 123
},
"tipAmountUsd": 100,
"failureReason": "Task failed",
"taskNotes": [
{
"created_at": "2023-08-29T19:17:46.264523",
"id": "not_01234567890",
"note": "Task note",
"user": {
"email": "john.doe@example.com"
}
}
]
}
],
"advancedTask": {
"id": "tsk_01234567890",
"createdAt": "2023-08-29T19:17:46.264523",
"status": "running",
"pickupStartTime": "2023-08-29T19:17:46.264523",
"pickupEndTime": "2023-08-29T19:17:46.264523",
"dropoffStartTime": "2023-08-29T19:17:46.264523",
"dropoffEndTime": "2023-08-29T19:17:46.264523",
"providerId": "prv_01234567890",
"providerIsInternal": true,
"tipAmountCents": 100,
"winnerQuote": {
"id": "qot_01234567890",
"price_cents": 100
},
"quotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"failedQuotes": [
{
"id": "qot_01234567890",
"price_cents": 100
}
],
"delivery": {
"id": "dlv_01234567890",
"type": "<string>",
"status": "dropoff_complete",
"statusHistory": [
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
],
"isActive": true,
"pickupEta": "<string>",
"dropoffEta": "<string>",
"dropoffDeadline": "<string>",
"priceCents": 123,
"currency": "<string>",
"documents": [
{
"createdAt": "<string>",
"id": "<string>",
"type": "<string>",
"url": "<string>",
"contentType": "<string>",
"documentMetadata": {}
}
],
"nashFeeCents": 123,
"courierName": "<string>",
"courierPhoneNumber": "<string>",
"courierPickupPhoneNumber": "<string>",
"courierDropoffPhoneNumber": "<string>",
"courierLocation": {},
"courierVehicle": {},
"courierProfileImage": "<string>",
"proofOfDelivery": [
{}
],
"providerDeliveryId": "<string>",
"providerBatchId": "<string>",
"price": 123,
"taxAmountCents": 123,
"tollFeeCents": 123,
"waitFeeCents": 123,
"waitTimeMinutes": 123,
"cancellationFeeCents": 123,
"returnFeeCents": 123,
"otherProviderFees": {},
"insuranceFeeCents": 123,
"totalPriceBreakdown": {},
"totalPriceCents": 123
},
"tipAmountUsd": 100,
"failureReason": "Task failed",
"taskNotes": [
{
"created_at": "2023-08-29T19:17:46.264523",
"id": "not_01234567890",
"note": "Task note",
"user": {
"email": "john.doe@example.com"
}
}
]
},
"delivery": {
"id": "dlv_01234567890",
"type": "<string>",
"status": "dropoff_complete",
"statusHistory": [
{
"created_at": "2023-08-29T19:17:46.264523",
"status": "created"
},
{
"created_at": "2023-08-29T19:17:47.509265",
"status": "not_assigned_driver"
}
],
"isActive": true,
"pickupEta": "<string>",
"dropoffEta": "<string>",
"dropoffDeadline": "<string>",
"priceCents": 123,
"currency": "<string>",
"documents": [
{
"createdAt": "<string>",
"id": "<string>",
"type": "<string>",
"url": "<string>",
"contentType": "<string>",
"documentMetadata": {}
}
],
"nashFeeCents": 123,
"courierName": "<string>",
"courierPhoneNumber": "<string>",
"courierPickupPhoneNumber": "<string>",
"courierDropoffPhoneNumber": "<string>",
"courierLocation": {},
"courierVehicle": {},
"courierProfileImage": "<string>",
"proofOfDelivery": [
{}
],
"providerDeliveryId": "<string>",
"providerBatchId": "<string>",
"price": 123,
"taxAmountCents": 123,
"tollFeeCents": 123,
"waitFeeCents": 123,
"waitTimeMinutes": 123,
"cancellationFeeCents": 123,
"returnFeeCents": 123,
"otherProviderFees": {},
"insuranceFeeCents": 123,
"totalPriceBreakdown": {},
"totalPriceCents": 123
},
"publicTrackingUrl": "https://usenash.com/tracking/job_abc123"
}
],
"optionsGroup": {
"id": "opn_WyMhHj",
"label": "New York City Strategy",
"allowedProviders": [
"prv_01234567890",
"prv_01234567891"
],
"enableAutoDispatch": true,
"providerSelectionStrategy": "cheapest",
"reassignOnFailure": true,
"enableMaxDeliveryFee": true,
"maxDeliveryFeeCents": 10000,
"costSplitMaxFixedPriceCents": 10000,
"costSplitMaxPercentage": 0.1,
"costSplitStrategy": "price",
"smartReassignment": true
},
"shortReferenceCode": "0123456",
"selectedConfiguration": {
"tasks": []
},
"jobSpecification": {
"packages": []
}
}