4 Collect and Receive Base APIs
api/delivery/openapi
Quote Services
This section describes the Quote services.
Build a Quote — POST
This section describes the Build Quote endpoint. The Build Quote endpoint is used to check courier serviceability, validity, and cost for a delivery between the pickup and dropoff addresses. The Build Quote request gets a quote and should be made prior to submitting the request to Build a Delivery. The quote is valid for a short period of time and the quote ID returned in the response message is sent as part of the request to Build a Delivery.
Request
There are no request parameters for this operation.
The request content-type is application/json.
The ModelField request.
Example Value
{
"deliveryType": "DELIVERY",
"undeliverableAction": "LEAVE_AT_DOOR",
"crossReferences": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"deliveryId": "string",
"dropoffAddress": {
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 0,
"locationCode": "string",
"longitude": 0,
"postalCode": "string",
"state": "string"
},
"dropoffContact": {
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffDeadline": "2024-12-02T14:43:05.312Z",
"dropoffNotes": "string",
"dropoffOptions": {
"additionalInstructions": "string",
"barcodeRequired": false,
"contactRequired": false,
"minimumAge": 9999,
"pictureRequired": false,
"pincode": "string",
"signatureRequired": false
},
"dropoffReady": "2024-12-02T14:43:05.312Z",
"labelsAttached": false,
"manifest": [
{
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"description": "string",
"identifier": "string",
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"pickupAddress": {
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 0,
"locationCode": "string",
"longitude": 0,
"postalCode": "string",
"state": "string"
},
"pickupContact": {
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupDeadline": "2024-12-02T14:43:05.312Z",
"pickupNotes": "string",
"pickupOptions": {
"additionalInstructions": "string",
"barcodeRequired": false,
"contactRequired": false,
"minimumAge": 9999,
"pictureRequired": false,
"pincode": "string",
"signatureRequired": false
},
"pickupReady": "2024-12-02T14:43:05.312Z",
"provider": "string",
"quoteId": <quoteId>,
"tip": 10000000000000000,
"totalValue": 10000000000000000
}
Schema — Delivery Request
The following table describes details of proposed delivery request.
Table 4-1 Delivery Request — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
deliveryType |
NA |
string |
The delivery type identifier. Default: DELIVERY; Enum: DELIVERY; RETURN |
undeliverableAction |
NA |
string |
Indicates what the courier should do with the packages in the event they are unable to be delivered. Enum: LEAVE_AT_DOOR, RETURN |
crossReferences |
NA |
object |
Cross references for the delivery. Intended for use by the retailer as an additional reference stored with the delivery order. |
deliveryId |
Yes |
string (128) |
The primary reference ID from the calling system uniquely identifying this delivery. Multiple quotes may be obtained, but only one delivery may be arranged for a given reference ID. |
dropoffAddress |
Yes |
object |
An address for a given dropoff location. |
dropoffContact |
Yes |
object |
A point of contact for a given dropoff location. |
dropoffDeadline |
NA |
string <date-time> |
The time by which the items must be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffNotes |
NA |
string |
Notes for the courier at drop-off location. |
dropoffOptions |
NA |
object |
Options for customizing required verification. |
dropoffReady |
NA |
string <date-time> |
The time at which the items may be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
labelsAttached |
NA |
boleean |
Indicates whether the package(s) will have a pre-paid shipping label attached when the courier arrives. Default: false Note: Return delivery types have the following limitations with the Uber integration: Labels Attached will always be set to TRUE which indicates that a label will be attached to the package(s). |
manifest |
Yes |
object |
The packages to be delivered. |
pickupAddress |
Yes |
object |
An address given pickup location. |
pickupContact |
Yes |
object |
A point of contact for a given pickup location. |
pickupDeadline |
NA |
string <date-time> |
The time by which the items must be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupNotes |
NA |
string |
Notes for the courier at pickup location. |
pickupOptions |
NA |
object |
Options for customizing required verification. |
pickupReady |
NA |
string <date-time> |
The time at which the items will be ready for pickup. Date-time strings are in ISO 8601 timestamp with offset format. |
provider |
NA |
string (10) |
The preferred provider. |
quoteId |
NA |
integer <int64> |
The prior quote ID for the delivery, if applicable. |
tip |
NA |
number |
The amount of the tip. |
totalValue |
Yes |
number |
The total value of the request. |
The following table describes the elements of an address for a pickup or delivery.
Table 4-2 Request Address
Element Name | Required | Data Type | Description |
---|---|---|---|
address1 |
Yes |
string (254) |
The address line 1. |
address2 |
NA |
string (254) |
The address line 2. |
address3 |
NA |
string (254) |
The address line 3. |
address4 |
NA |
string (254) |
The address line 4. |
addressType |
NA |
string |
enum: RESIDENTIAL, BUSINESS |
apartment |
NA |
string (254) |
The apartment. |
city |
Yes |
string (254) |
The city or town. |
country |
Yes |
string (254) |
The ISO 3166 country code. Applications can decide whether to use 2 or 3 char codes. |
latitude |
NA |
number |
The latitude of the address. |
locationCode |
NA |
string (10) |
The location code for the address, if applicable. This must be unique across the retailer's landscape. |
longitude |
NA |
number |
The longitude of the address. |
postalCode |
NA |
string (20) |
The postal code. |
state |
NA |
string (254) |
The ISO 3166 state, province or territory code. |
The following table describes the elements of a point of contact for a given pickup or delivery.
Table 4-3 Request Contact
Element Name | Required | Data Type | Description |
---|---|---|---|
businessName |
NA |
string (254) |
The business name. |
contactReference |
NA |
string (64) |
A reference number for the contact. |
emailAddress |
NA |
string (254) |
The email address. |
firstName |
NA |
string (254) |
The first (that is, given) name. |
lastName |
NA |
string (254) |
The last (that is, family) name. |
middleName |
NA |
string (254) |
The middle name. |
phoneNumber |
Yes |
string (50) |
The phone number. |
suffix |
NA |
string (254) |
A name suffix. |
The following table describes the elements of options for customizing required verification.
Table 4-4 Verification Options
Element Name | Required | Data Type | Description |
---|---|---|---|
additionalInstructions |
NA |
string |
Additional instructions for the courier at handoff. |
barcodeRequired |
NA |
boolean |
Indicates that a barcode scan is required. Default: false |
contactRequired |
NA |
boolean |
Indicates that contact is required (that is must NOT be contactless). Default: false |
minimumAge |
NA |
integer <int32> |
The minimum age of the recipient. If this value is specified, Uber will reject the request if the age is not between 18 and 25. Note: Return delivery types have the following limitations with the Uber integration: The use of Minimum Age is not supported as drop off verification option. |
pictureRequired |
NA |
boolean |
Indicates that a picture is required. Default: false Note: Return delivery types have the following limitations with the Uber integration: Picture Required will always be set to TRUE which requires the courier to take a picture as a drop off verification. |
pincode |
NA |
string |
A pincode required for entry at handoff. Note: Return delivery types have the following limitations with the Uber integration: The use of Pincodes are not supported as drop off verification option. |
signatureRequired |
NA |
boolean |
Indicates that a signature is required. Default: false |
The following table describes the elements of a package of items to be delivered.
Table 4-5 Manifest Package — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
description |
NA |
string (128) |
The description of the package. |
height |
Yes |
integer <int32> |
The height of the item in centimeters. |
identifier |
Yes |
string (100) |
A unique identifier for the package. This value will be considered when producing verification barcodes. |
items |
NA |
object |
The items to be delivered. |
length |
Yes |
integer <int32> |
The length of the item in centimeters. |
packDimensionCode |
NA |
string |
The package dimension code. |
totalAmount |
NA |
number |
The combined prices of all items within the package. |
weight |
Yes |
number |
The weight of the item in kilograms. |
width |
Yes |
integer <int32> |
The width of the item in centimeters. |
The following table describes the elements of an individual item within a delivery.
Table 4-6 Item — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
description |
Yes |
string (128) |
The description of the item. |
identifier |
Yes |
string (100) |
The identifier (UPC, EAN, SKU, and so on) of the item. |
price |
NA |
number |
The price of the item. |
quantity |
Yes |
integer <int32> |
The quantity of the item. |
Responses
This section describes the responses of the buildQuote endpoint.
Response Code: 200
The result object.
The media type is application/json.
Example Value
{
"errors": [
{
"errorCode": 2147483647,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"provider": "string"
}
],
"quotes": [
{
"created": "2024-05-23T13:44:28.179Z",
"createdBy": "string",
"updated": "2024-05-23T13:44:28.179Z",
"updatedBy": "string",
"id": <id>,
"crossReferences": [
{
"created": "2024-05-23T13:44:28.179Z",
"createdBy": "string",
"updated": "2024-05-23T13:44:28.179Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-05-23T13:44:28.179Z",
"createdBy": "string",
"updated": "2024-05-23T13:44:28.179Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-05-23T13:44:28.179Z",
"createdBy": "string",
"updated": "2024-05-23T13:44:28.179Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-05-23T13:44:28.179Z",
"dropoffEta": "2024-05-23T13:44:28.179Z",
"dropoffLocationCode": "string",
"expires": "2024-05-23T13:44:28.179Z",
"fee": 10000000000000000,
"pickupAddress": {
"created": "2024-05-23T13:44:28.179Z",
"createdBy": "string",
"updated": "2024-05-23T13:44:28.179Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-05-23T13:44:28.179Z",
"createdBy": "string",
"updated": "2024-05-23T13:44:28.179Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-05-23T13:44:28.179Z",
"pickupEta": "2024-05-23T13:44:28.179Z",
"pickupLocationCode": "string",
"provider": "string",
"providerCreated": "2024-05-23T13:44:28.179Z",
"providerId": "string",
"providerInstance": "string"
}
]
}
Schema — Quote Response
The following table describes the elements of a response to a quote request.
Table 4-7 Quote Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
errors | NA | object | A collection of errors from providers which could not service the request. |
quotes | NA | object | A collection of quotes for the provided request. |
The following table describes elements of a container for an error from a provider.
Table 4-8 Provider Errors — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
errorCode |
NA |
integer <int32> |
A numeric error indicating the type of error. |
errorMessage |
NA |
string |
An unlocalized message indicating details about the error. |
moreInfo |
NA |
object |
An object containing provider-specific details pertaining to an error. |
provider |
Yes |
string (10) |
The provider associated with the error. |
The following table describes elements of an object containing provider-specific details pertaining to an error.
Table 4-9 More Error Information — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
The following table describes elements of a quote from a delivery provider for a proposed delivery.
Table 4-10 Quote — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated | NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
crossReferences |
NA |
Collection of [object] |
A list of cross-references for the quote. |
currency |
NA |
string (3) |
The currency code associated with the quote. |
deliveryId |
Yes |
string (128) |
The primary reference ID from the calling system uniquely identifying the delivery associated with this quote. |
deliveryType | Yes | string | The delivery type identifier. Default: DELIVERY; Enum: DELIVERY, RETURN |
dropoffAddress | NA | object | An address for a given dropoff location. |
dropoffAddressId | NA | integer <int64> | Drop Off Address ID |
dropoffContact | NA | object | A point of contact for a given dropoff location. |
dropoffContactId | NA | integer <int64> | Drop Off Contact ID |
dropoffDeadline |
NA |
string <date-time> |
The time by which the order must be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffEta |
NA |
string <date-time> |
The time by which the order is expected to be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffLocationCode |
NA |
string(10) |
The location code for the dropoff address. |
expires |
NA |
string <date-time> |
The time at which this quote will no longer be accepted. Date-time strings are in ISO 8601 timestamp with offset format. |
fee |
NA |
number |
The cost of the delivery |
pickupAddress |
NA |
object |
An address for a given pickup location. |
pickupAddressId |
NA |
integer <int64> |
Pick Up Address ID. |
pickupContact |
NA |
object |
A point of contact for a given pickup location. |
pickupContactId |
NA |
integer <int64> |
Pick Up Contact ID. |
pickupDeadline |
NA |
string <date-time> |
The time by which the order must be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupEta |
NA |
string <date-time> |
The time by which the order is expected to be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupLocationCode |
NA |
string (10) |
The pickup location code associated with this quote. |
provider |
Yes |
string (10) |
The provider of the quote. |
providerCreated |
Yes |
string <date-time> |
The creation timestamp, as indicated by the provider. Date-time strings are in ISO 8601 timestamp with offset format. |
providerInstance |
Yes |
string (20) |
The specific instance of the provider of the quote. |
providerlId |
Yes |
string (128) |
The id from the provider of the quote. |
The following table describes the elements of an address for a pickup or delivery.
Table 4-11 Address
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
<int64> |
ID |
address1 |
Yes |
string (254) |
The address line 1. |
address2 |
NA |
string (254) |
The address line 2. |
address3 |
NA |
string (254) |
The address line 3. |
address4 |
NA |
string (254) |
The address line 4. |
addressType |
NA |
string |
enum: RESIDENTIAL, BUSINESS |
apartment |
NA |
string (254) |
The apartment. |
city |
Yes |
string (254) |
The city or town. |
country |
Yes |
string (254) |
The ISO 3166 country code. Applications can decide whether to use 2 or 3 char codes. |
latitude |
NA |
number |
The latitude of the address. |
locationCode |
NA |
string (10) |
The location code for the address, if applicable. This must be unique across the retailer's landscape. |
longitude |
NA |
number |
The longitude of the address. |
postalCode |
NA |
string (20) |
The postal code. |
state |
NA |
string (254) |
The ISO 3166 state, province or territory code. |
The following table describes the elements of a point of contact for a given pickup or delivery.
Table 4-12 Contact
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who last created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
<int64> |
ID |
businessName |
NA |
string (254) |
The business name. |
contactReference |
NA |
string (64) |
A reference number for the contact. |
emailAddress |
NA |
string (254) |
The email address. |
firstName |
NA |
string (254) |
The first (that is, given) name. |
lastName |
NA |
string (254) |
The last (that is, family) name. |
middleName |
NA |
string (254) |
The middle name. |
phoneNumber |
Yes |
string (50) |
The phone number. |
suffix |
NA |
string (254) |
A name suffix. |
The following table describes the elements of a cross reference record.
Table 4-13 Quote Cross References — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
key |
Yes |
string (128) |
The identifier for the cross reference. |
parentId |
NA |
integer <int64> |
Parent ID |
value |
Yes |
string (128) |
The the value of the cross reference. |
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-14 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-15 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Response Code: 424
No providers could service this request.
The media type is application/json.
Example Value
[
{
"errorCode": 2147483647,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"provider": "string"
}
]
Schema — Provider Error
The following table describes elements of a container for an error from a provider.
Table 4-16 Provider Error — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
errorCode |
NA |
integer <int32> |
A numeric error indicating the type of error. |
errorMessage |
NA |
string |
An unlocalized message indicating details about the error. |
moreInfo |
NA |
object |
An object containing provider-specific details pertaining to an error. |
provider |
Yes |
string (10) |
The provider associated with the error. |
The following table describes elements of an object containing provider-specific details pertaining to an error.
Table 4-17 More Error Information — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Get a Quote — GET
This section describes the Get a Quote endpoint. Use the Get a Quote endpoint to get the quote details for an existing quote record.
Request
This section describes the request parameters.
Table 4-18 Get a Quote — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id |
Yes |
integer <int64> |
ID |
expands |
NA |
string |
A comma-delimited list of relationship paths, in dot-notated path form (that is, "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
Responses
This section describes the Get a Quote endpoint responses.
Response Code: 200
The requested record.
The media type is application/json.
Example Value
{
"created": "2024-05-23T14:17:10.839Z",
"createdBy": "string",
"updated": "2024-05-23T14:17:10.839Z",
"updatedBy": "string",
"id": <id>,
"crossReferences": [
{
"created": "2024-05-23T14:17:10.839Z",
"createdBy": "string",
"updated": "2024-05-23T14:17:10.839Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": 9223372036854776000,
"value": "string"
}
],
"currency": "str",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-05-23T14:17:10.839Z",
"createdBy": "string",
"updated": "2024-05-23T14:17:10.839Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-05-23T14:17:10.839Z",
"createdBy": "string",
"updated": "2024-05-23T14:17:10.839Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-05-23T14:17:10.839Z",
"dropoffEta": "2024-05-23T14:17:10.839Z",
"dropoffLocationCode": "string",
"expires": "2024-05-23T14:17:10.839Z",
"fee": 10000000000000000,
"pickupAddress": {
"created": "2024-05-23T14:17:10.839Z",
"createdBy": "string",
"updated": "2024-05-23T14:17:10.839Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-05-23T14:17:10.839Z",
"createdBy": "string",
"updated": "2024-05-23T14:17:10.839Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-05-23T14:17:10.839Z",
"pickupEta": "2024-05-23T14:17:10.839Z",
"pickupLocationCode": "string",
"provider": "string",
"providerCreated": "2024-05-23T14:17:10.839Z",
"providerId": "string",
"providerInstance": "string"
}
Schema — Quote
The tables below describe the elements of a quote from a delivery provider for a proposed delivery.
Table 4-19 Quote — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
crossReferences |
NA |
object |
A list of cross-references for the quote. |
currency |
NA |
string (3) |
The currency code associated with the quote. |
deliveryId |
Yes |
string (128) |
The primary reference ID from the calling system uniquely identifying the delivery associated with this quote. |
deliveryType |
Yes |
string |
The delivery type identifier. Default: DELIVERY; Enum: DELIVERY, RETURN |
dropoffAddress |
NA |
object |
An address for a given dropoff location. |
dropoffAddressId |
NA |
integer <int64> |
NA |
dropoffContact |
NA |
object |
A point of contact for a given dropoff location. |
dropoffContactId |
NA |
integer <int64> |
NA |
dropoffDeadline |
NA |
string <date-time> |
The time by which the order must be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffEta |
NA |
string <date-time> |
The time by which the order is expected to be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffLocationCode |
NA |
string(10) |
The location code for the dropoff address. |
expires |
NA |
string <date-time> |
The time at which this quote will no longer be accepted. Date-time strings are in ISO 8601 timestamp with offset format. |
fee |
NA |
number |
The cost of the delivery. |
pickupAddress |
Yes |
object |
An address given pickup location. |
pickupAddressId |
NA |
integer <int64> |
NA |
pickupContact |
NA |
object |
A point of contact for a given pickup location. |
pickupContactId |
NA |
integer <int64> |
NA |
pickupDeadline |
NA |
string <date-time> |
The time by which the order must be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupEta |
NA |
string <date-time> |
The time by which the order is expected to be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupLocationCode |
NA |
string (10) |
The pickup location code associated with this quote. |
provider |
Yes |
string (10) |
The provider of the quote. |
providerCreated |
Yes |
string <date-time> |
The creation timestamp, as indicated by the provider. Date-time strings are in ISO 8601 timestamp with offset format. |
providerInstance |
Yes |
string (20) |
The specific instance of the provider of the quote. |
providerId |
Yes |
string (128) |
The ID from the provider of the quote. |
The following table describes the elements of a cross reference record for a quote from a delivery provider for a proposed delivery.
Table 4-20 Quote Cross Reference — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated | NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
key |
Yes |
string (128) |
The identifier for the cross reference. |
parentId |
NA |
integer <int64> |
Parent ID |
value |
Yes |
string (128) |
The the value of the cross reference. |
The following table describes the elements of an address for a given pickup or delivery.
Table 4-21 Address
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
address1 |
Yes |
string (254) |
The address line 1. |
address2 |
NA |
string (254) |
The address line 2. |
address3 |
NA |
string (254) |
The address line 3. |
address4 |
NA |
string (254) |
The address line 4. |
addressType |
NA |
string |
enum: RESIDENTIAL, BUSINESS |
apartment |
NA |
string (254) |
The apartment. |
city |
Yes |
string (254) |
The city or town. |
country |
Yes |
string (254) |
The ISO 3166 country code. Applications can decide whether to use 2 or 3 char codes. |
latitude |
NA |
number |
The latitude of the address. |
locationCode |
NA |
string (10) |
The location code for the address, if applicable. This must be unique across the retailer's landscape. |
longitude |
NA |
number |
The longitude of the address. |
postalCode |
NA |
string (20) |
The postal code. |
state |
NA |
string (254) |
The ISO 3166 state, province or territory code. |
The following table describes the elements of a point of contact for a given pickup or delivery.
Table 4-22 Contact
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
businessName |
NA |
string (254) |
The business name. |
contactReference |
NA |
string (64) |
A reference number for the contact. |
emailAddress |
NA |
string (254) |
The email address. |
firstName |
NA |
string (254) |
The first (that is, given) name. |
lastName |
NA |
string (254) |
The last (that is, family) name. |
middleName |
NA |
string (254) |
The middle name. |
phoneNumber |
Yes |
string (50) |
The phone number. |
suffix |
NA |
string (254) |
A name suffix. |
Checks if a Quote Exists — HEAD
This section describes the endpoint which checks if a quote exists.
Queries for a Quote — GET
This section describes the Queries for a Quote endpoint. This service returns a list of quote records and the associated quote details matching the provided criteria.
Request
This section describes the request parameters.
Table 4-24 Queries for a Quote Records— Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where |
NA |
object (query) |
A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, that is a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example, {"child.name":"Jo"} would match Joe, John, and so on. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example, {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example, {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
orderBy |
NA |
string (query) |
A comma-delimited list of fields used to determine result ordering or a JSON array of complex sorting criteria. When supplied as strings, names are provided in the same format as the where argument - optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON array, a String fieldName field must be included in the object. Optional String order (asc or desc) and boolean caseInsensitive fields may also be provided. |
expands |
NA |
string (query) |
A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
limit |
NA |
integer <int32> (query) |
Provides a maximum number of records to be returned. |
offset |
NA |
integer <int32> (query) |
Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the Queries for a Quote endpoint responses.
Response Code: 200
The requested record.
The media type is application/json.
Example Value
[
{
"created": "2024-05-23T14:41:45.940Z",
"createdBy": "string",
"updated": "2024-05-23T14:41:45.940Z",
"updatedBy": "string",
"id": <id>,
"crossReferences": [
{
"created": "2024-05-23T14:41:45.940Z",
"createdBy": "string",
"updated": "2024-05-23T14:41:45.940Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-05-23T14:41:45.940Z",
"createdBy": "string",
"updated": "2024-05-23T14:41:45.940Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-05-23T14:41:45.940Z",
"createdBy": "string",
"updated": "2024-05-23T14:41:45.940Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-05-23T14:41:45.940Z",
"dropoffEta": "2024-05-23T14:41:45.940Z",
"dropoffLocationCode": "string",
"expires": "2024-05-23T14:41:45.940Z",
"fee": 10000000000000000,
"pickupAddress": {
"created": "2024-05-23T14:41:45.940Z",
"createdBy": "string",
"updated": "2024-05-23T14:41:45.940Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-05-23T14:41:45.940Z",
"createdBy": "string",
"updated": "2024-05-23T14:41:45.940Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-05-23T14:41:45.940Z",
"pickupEta": "2024-05-23T14:41:45.940Z",
"pickupLocationCode": "string",
"provider": "string",
"providerCreated": "2024-05-23T14:41:45.940Z",
"providerId": "string",
"providerInstance": "string"
}
]
Queries for Quote Records/Count— GET
This section describes the Queries for Quote Records Count endpoint. This service returns a count of records matching the provided criteria.
Request
This section describes the request parameters.
Table 4-25 Queries for Quote Records Count — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where |
NA |
object (query) |
A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, i.e. a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example, {"child.name":"Jo"} would match Joe, John, and so on. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example, {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example, {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
Queries for Quote Records by Attributes — GET
This section describes the Queries for Quote Records by Attributes endpoint. This endpoint returns a list of records matching the provided attributes.
Request
This section describes the request parameters.
Table 4-26 Queries for Quote Records by Attributes — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id |
NA |
integer ($int64) (query) |
id |
currency |
NA |
string (query) |
currency |
deliveryId |
NA |
string (query) |
delivery id |
deliveryType |
NA |
string (query) |
delivery type; Available values : DELIVERY, RETURN; Default value: DELIVERY |
dropoffAddressId |
NA |
integer ($int64) (query) |
dropoff address ID |
dropoffContactId |
NA |
intege ($int64) (query) |
dropoff dontact ID |
dropoffDeadline |
NA |
string ($date-time) (query) |
dropoff deadline |
dropoffEta |
NA |
string ($date-time) (query) |
dropoff Eta |
dropoffLocationCode |
string (query) |
dropoff location code |
|
expires |
NA |
string($date-time) (query) |
expires |
fee |
NA |
number (query) |
fee |
pickupAddressId |
NA |
integer ($int64) (query) |
pickup address ID |
pickupContactId |
NA |
integer($int64) (query) |
pickup contact ID |
pickupDeadline |
NA |
string($date-time) (query) |
pickup deadline |
pickupEta |
NA |
string($date-time) (query) |
pickup Eta |
pickupLocationCode |
NA |
string (query) |
pickup location code |
provider |
NA |
string (query) |
provider |
providerCreated |
NA |
string($date-time) (query) |
providerCreated |
providerId |
NA |
string (query) |
provider ID |
providerInstance |
NA |
string (query) |
provider instance |
orderBy |
NA |
string (quer)y |
A comma-delimited list of fields used to determine result ordering or a JSON array of complex sorting criteria. When supplied as strings, names are provided in the same format as the where argument - optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON array, a String fieldName field must be included in the object. Optional String order (asc or desc) and boolean caseInsensitive fields may also be provided. |
expands |
NA |
string (query) |
A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
limit |
NA |
integer ($int32) (query) |
Provides a maximum number of records to be returned. |
offset |
NA |
integer ($int32) (query) |
Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the responses of the Queries for Quote Records by Attributes endpoint.
Response Code: 200
The requested record.
The media type is application/json.
Example Value
[
{
"created": "2024-05-23T14:47:57.555Z",
"createdBy": "string",
"updated": "2024-05-23T14:47:57.555Z",
"updatedBy": "string",
"id": <id>,
"crossReferences": [
{
"created": "2024-05-23T14:47:57.555Z",
"createdBy": "string",
"updated": "2024-05-23T14:47:57.555Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-05-23T14:47:57.555Z",
"createdBy": "string",
"updated": "2024-05-23T14:47:57.555Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": 9223372036854776000,
"dropoffContact": {
"created": "2024-05-23T14:47:57.555Z",
"createdBy": "string",
"updated": "2024-05-23T14:47:57.555Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-05-23T14:47:57.555Z",
"dropoffEta": "2024-05-23T14:47:57.555Z",
"dropoffLocationCode": "string",
"expires": "2024-05-23T14:47:57.555Z",
"fee": 10000000000000000,
"pickupAddress": {
"created": "2024-05-23T14:47:57.555Z",
"createdBy": "string",
"updated": "2024-05-23T14:47:57.555Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-05-23T14:47:57.555Z",
"createdBy": "string",
"updated": "2024-05-23T14:47:57.555Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-05-23T14:47:57.555Z",
"pickupEta": "2024-05-23T14:47:57.555Z",
"pickupLocationCode": "string",
"provider": "string",
"providerCreated": "2024-05-23T14:47:57.555Z",
"providerId": "string",
"providerInstance": "string"
}
]
Delivery Services
This section describes the Delivery services.
Build a Delivery — POST
This section describes the Build Delivery endpoint. Use the Build Delivery endpoint to create a delivery with the courier provider. This includes but is not limited to: the pickup and dropoff information, package details, scheduling and delivery verification options.
Request
There are no request parameters for this operation.
The request body e is application/json.
The ModelField request.
Example Value
{
"deliveryType": "DELIVERY",
"undeliverableAction": "LEAVE_AT_DOOR",
"crossReferences": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"deliveryId": "string",
"dropoffAddress": {
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 0,
"locationCode": "string",
"longitude": 0,
"postalCode": "string",
"state": "string"
},
"dropoffContact": {
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffDeadline": "2024-11-28T12:22:24.965Z",
"dropoffNotes": "string",
"dropoffOptions": {
"additionalInstructions": "string",
"barcodeRequired": false,
"contactRequired": false,
"minimumAge": 9999,
"pictureRequired": false,
"pincode": "string",
"signatureRequired": false
},
"dropoffReady": "2024-11-28T12:22:24.965Z",
"labelsAttached": false,
"manifest": [
{
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"description": "string",
"identifier": "string",
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"pickupAddress": {
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 0,
"locationCode": "string",
"longitude": 0,
"postalCode": "string",
"state": "string"
},
"pickupContact": {
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupDeadline": "2024-11-28T12:22:24.965Z",
"pickupNotes": "string",
"pickupOptions": {
"additionalInstructions": "string",
"barcodeRequired": false,
"contactRequired": false,
"minimumAge": 9999,
"pictureRequired": false,
"pincode": "string",
"signatureRequired": false
},
"pickupReady": "2024-11-28T12:22:24.965Z",
"provider": "string",
"quoteId": 9223372036854776000,
"tip": 10000000000000000,
"totalValue": 10000000000000000
}
Schema — Delivery Request
The following table describes details of proposed delivery request.
Table 4-27 Delivery Request — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
deliveryType |
NA |
string |
The delivery type identifier. Default: DELIVERY; Enum: DELIVERY; RETURN |
undeliverableAction |
NA |
string |
Indicates what the courier should do with the packages in the event they are unable to be delivered. Enum: LEAVE_AT_DOOR, RETURN |
crossReferences |
NA |
object |
Cross references for the delivery. Intended for use by the retailer as an additional reference stored with the delivery order. |
deliveryId |
Yes |
string (128) |
The primary reference ID from the calling system uniquely identifying this delivery. Multiple quotes may be obtained, but only one delivery may be arranged for a given reference ID. |
dropoffAddress |
Yes |
object |
An address for a given dropoff location. |
dropoffContact |
Yes |
object |
A point of contact for a given dropoff location. |
dropoffDeadline |
NA |
string <date-time> |
The time by which the items must be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffNotes |
NA |
string |
Notes for the courier at drop-off location. |
dropoffOptions |
NA |
object |
Options for customizing required verification. |
dropoffReady |
NA |
string <date-time> |
The time at which the items may be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
labelsAttached |
NA |
boleean |
Indicates whether the package(s) will have a pre-paid shipping label attached when the courier arrives. Default: false Note: Return delivery types have the following limitations with the Uber integration: Labels Attached will always be set to TRUE which indicates that a label will be attached to the package(s). |
manifest |
Yes |
object |
The packages to be delivered. |
pickupAddress |
Yes |
object |
An address given pickup location. |
pickupContact |
Yes |
object |
A point of contact for a given pickup location. |
pickupDeadline |
NA |
string <date-time> |
The time by which the items must be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupNotes |
NA |
string |
Notes for the courier at pickup location. |
pickupOptions |
NA |
object |
Options for customizing required verification. |
pickupReady |
NA |
string <date-time> |
The time at which the items will be ready for pickup. Date-time strings are in ISO 8601 timestamp with offset format. |
provider |
NA |
string (10) |
The preferred provider. |
quoteId |
NA |
integer <int64> |
The prior quote ID for the delivery, if applicable. |
tip |
NA |
number |
The amount of the tip. |
totalValue |
Yes |
number |
The total value of the request. |
The following table describes the elements of an address for a pickup or delivery.
Table 4-28 Request Address
Element Name | Required | Data Type | Description |
---|---|---|---|
address1 |
Yes |
string (254) |
The address line 1. |
address2 |
NA |
string (254) |
The address line 2. |
address3 |
NA |
string (254) |
The address line 3. |
address4 |
NA |
string (254) |
The address line 4. |
addressType |
NA |
string |
enum: RESIDENTIAL, BUSINESS |
apartment |
NA |
string (254) |
The apartment. |
city |
Yes |
string (254) |
The city or town. |
country |
Yes |
string (254) |
The ISO 3166 country code. Applications can decide whether to use 2 or 3 char codes. |
latitude |
NA |
number |
The latitude of the address. |
locationCode |
NA |
string (10) |
The location code for the address, if applicable. This must be unique across the retailer's landscape. |
longitude |
NA |
number |
The longitude of the address. |
postalCode |
NA |
string (20) |
The postal code. |
state |
NA |
string (254) |
The ISO 3166 state, province or territory code. |
The following table describes the elements of a point of contact for a given pickup or delivery.
Table 4-29 Request Contact
Element Name | Required | Data Type | Description |
---|---|---|---|
businessName |
NA |
string (254) |
The business name. |
contactReference |
NA |
string (64) |
A reference number for the contact. |
emailAddress |
NA |
string (254) |
The email address. |
firstName |
NA |
string (254) |
The first (that is, given) name. |
lastName |
NA |
string (254) |
The last (that is, family) name. |
middleName |
NA |
string (254) |
The middle name. |
phoneNumber |
Yes |
string (50) |
The phone number. |
suffix |
NA |
string (254) |
A name suffix. |
The following table describes the elements of options for customizing required verification.
Table 4-30 Verification Options
Element Name | Required | Data Type | Description |
---|---|---|---|
additionalInstructions |
NA |
string |
Additional instructions for the courier at handoff. |
barcodeRequired |
NA |
boolean |
Indicates that a barcode scan is required. Default: false |
contactRequired |
NA |
boolean |
Indicates that contact is required (that is must NOT be contactless). Default: false |
minimumAge |
NA |
integer <int32> |
The minimum age of the recipient. If this value is specified, Uber will reject the request if the age is not between 18 and 25. Note: Return delivery types have the following limitations with the Uber integration: The use of Minimum Age is not supported as drop off verification option. |
pictureRequired |
NA |
boolean |
Indicates that a picture is required. Default: false Note: Return delivery types have the following limitations with the Uber integration: Picture Required will always be set to TRUE which requires the courier to take a picture as a drop off verification. |
pincode |
NA |
string |
A pincode required for entry at handoff. Note: Return delivery types have the following limitations with the Uber integration: The use of Pincodes are not supported as drop off verification option. |
signatureRequired |
NA |
boolean |
Indicates that a signature is required. Default: false |
The following table describes the elements of a package of items to be delivered.
Table 4-31 Manifest Package — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
description |
NA |
string (128) |
The description of the package. |
height |
Yes |
integer <int32> |
The height of the item in centimeters. |
identifier |
Yes |
string (100) |
A unique identifier for the package. This value will be considered when producing verification barcodes. |
items |
NA |
object |
The items to be delivered. |
length |
Yes |
integer <int32> |
The length of the item in centimeters. |
packDimensionCode |
NA |
string |
The package dimension code. |
totalAmount |
NA |
number |
The combined prices of all items within the package. |
weight |
Yes |
number |
The weight of the item in kilograms. |
width |
Yes |
integer <int32> |
The width of the item in centimeters. |
The following table describes the elements of an individual item within a delivery.
Table 4-32 Item — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
description |
Yes |
string (128) |
The description of the item. |
identifier |
Yes |
string (100) |
The identifier (UPC, EAN, SKU, and so on) of the item. |
price |
NA |
number |
The price of the item. |
quantity |
Yes |
integer <int32> |
The quantity of the item. |
Responses
This section describes the responses of the Build Delivery endpoint.
Response Code: 200
The result object.
The media type is application/json.
Example Value
{
"delivery": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"barcodes": [
{
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"identifier": "string",
"parentId": ,
"type": "CODE39",
"value": "string"
}
],
"cancelReasonCode": "string",
"canceledBy": "string",
"crossReferences": [
{
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryCancelReason": "COURIER",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": 9223372036854776000,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": 9223372036854776000,
"dropoffContact": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-11-28T12:33:59.747Z",
"dropoffEta": "2024-11-28T12:33:59.747Z",
"dropoffLocationCode": "string",
"dropoffNotes": "string",
"dropoffReady": "2024-11-28T12:33:59.747Z",
"dropoffVerification": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"dropoffVerificationId": <dropoffVerificationId>,
"errorCount": 9999,
"fee": 10000000000000000,
"labelsAttached": false,
"manifest": [
{
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"identifier": "string",
"parentId": <parentId>,
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"parentId": <parentId>,
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"manifestSize": 9999,
"pickupAddress": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-11-28T12:33:59.747Z",
"pickupEta": "2024-11-28T12:33:59.747Z",
"pickupLocationCode": "string",
"pickupNotes": "string",
"pickupReady": "2024-11-28T12:33:59.747Z",
"pickupVerification": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"pickupVerificationId": 9223372036854776000,
"provider": "string",
"providerCreated": "2024-11-28T12:33:59.747Z",
"providerId": "string",
"providerInstance": "string",
"returnTripId": 9223372036854776000,
"status": "CREATED",
"statusHistory": [
{
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"newStatus": "CREATED",
"parentId": 9223372036854776000,
"priorStatus": "CREATED"
}
],
"tip": 10000000000000000,
"totalValue": 10000000000000000,
"trackingURL": "string",
"undeliverableInfo": {
"created": "2024-11-28T12:33:59.747Z",
"createdBy": "string",
"updated": "2024-11-28T12:33:59.747Z",
"updatedBy": "string",
"id": <id>,
"moreInfo": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"reason": "string",
"undeliverableAction": "LEAVE_AT_DOOR"
},
"undeliverableInfoId": 9223372036854776000
},
"errors": [
{
"errorCode": 2147483647,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"provider": "string"
}
]
}
Schema — Delivery Response
Schema — Delivery Response
The following table describes the elements of a response to a delivery request.
Table 4-33 Delivery Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
delivery |
NA |
object |
A delivery from a delivery provider. |
errors |
NA |
object |
A collection of errors from providers which could not service the request. |
The following table describes the elements of a delivery from a delivery provider.
Table 4-34 Delivery — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was last created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
barcodes |
NA |
object |
A list of barcodes associated with the delivery. |
cancelReasonCode |
NA |
string(40) |
The user cancel reason code. |
canceledBy |
NA |
string (256) |
The ID of the caller who requested cancelation of the delivery (if applicable). |
crossReferences |
NA |
object |
A list of cross-references for the delivery. |
currency |
NA |
string (3) |
The currency code associated with the delivery. |
deliveryCancelReason |
NA |
string |
The delivery cancel reason. Enum: COURIER, PROVIDER, CUSTOMER |
deliveryId |
Yes |
string (128) |
The primary reference ID from the calling system uniquely identifying this delivery. |
deliveryType |
Yes |
string |
The delivery type identifier. Default: DELIVERY; Enum: DELIVERY, RETURN |
dropoffAddress |
NA |
object |
An address for a given dropoff location. |
dropoffAddressId |
NA |
integer <int64> |
NA |
dropoffContact |
NA |
object |
A point of contact for a given dropoff location. |
dropoffContactId |
NA |
integer <int64> |
NA |
dropoffDeadline |
NA |
string <date-time> |
The time by which the order must be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffEta |
NA |
string <date-time> |
The time by which the order is expected to be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffLocationCode |
NA |
string(10) |
The location code for the dropoff address. |
dropoffNotes |
NA |
string(256) |
Notes for the courier at dropoff location. |
dropoffReady |
NA |
string($date-time) |
The time at which the items may be dropped off. |
dropoffVerification |
NA |
object |
A record indicating verification proof information for a given delivery. |
dropoffVerificationId |
NA |
integer <int64> |
NA |
errorCount |
NA |
integer($int32) |
The count of failed Provider API calls. |
fee |
NA |
number |
The cost of the delivery. |
lablesAttached |
NA |
boolean |
Indicates whether the package(s) will have a pre-paid shipping label attached when the courier arrives. Default: false |
manifest |
object |
The packages to be delivered. |
|
manifestSize |
NA |
integer <int32> |
The count of manifest items in the delivery. |
pickupAddress |
NA |
object |
An address for a given pickup location. |
pickupAddressId |
NA |
integer <int64> |
NA |
pickupContact |
NA |
object |
A point of contact for a given pickup location. |
pickupContactId |
NA |
integer <int64> |
NA |
pickupDeadline |
NA |
string <date-time> |
The time by which the order must be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupEta |
NA |
string <date-time> |
The time by which the order is expected to be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupLocationCode |
NA |
string (10) |
The pickup location code associated with this delivery. |
pickupNotes |
NA |
string(256) |
Notes for the courier at pickup location. |
pickupReady |
NA |
string($date-time) |
The time at which the items will be ready for pickup. |
pickupVerification |
NA |
object |
A record indicating verification proof information for a given delivery. |
pickupVerificationId |
NA |
integer <int64> |
NA |
provider |
Yes |
string (10) |
The provider of the delivery. |
providerCreated |
Yes |
string <date-time> |
The creation timestamp, as indicated by the provider. Date-time strings are in ISO 8601 timestamp with offset format. |
providerInstance |
Yes |
string (20) |
The specific instance of the provider of the delivery. |
providerlId |
Yes |
string (128) |
The id from the provider of the delivery. |
returnTripId |
NA |
integer($int64) |
The return trip id of the delivery. |
status |
Yes |
string |
The last known status of the delivery. enum: CREATED, PENDING, ENROUTE_PICKUP, PICKUP_COMPLETE, ENROUTE_DROPOFF, DROPOFF_COMPLETE, CANCELED, RETURNED, ERROR, ENROUTE_RETURN |
statusHistory |
NA |
object |
Status history for the delivery. |
tip |
NA |
number |
The amount of the tip. |
totalValue |
NA |
number |
The total value of the request. |
trackingURL |
NA |
string |
The tracking URL for the delivery. |
undeliverableInfo |
NA |
object |
A record indicating details about a delivery that could not be completed. |
undeliverableInfoId |
NA |
integer <int64> |
NA |
The following table describes elements of a barcode for a delivery package.
Table 4-35 Manifest Package Barcode — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
NA |
identifier |
Yes |
string (100) |
The identifier for the manifest entry associated with this barcode. |
parentId |
NA |
integer <int64> |
NA |
type |
NA |
string |
enum: CODE39, CODE39_FULL_ASCII, CODE128, QR |
value |
Yes |
string (100) |
The the value of the barcode. |
The following table describes the elements of a cross reference record.
Table 4-36 Delivery Cross References — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
key |
Yes |
string (128) |
The identifier for the cross reference. |
parentId |
NA |
integer <int64> |
Parent ID |
value |
Yes |
string (128) |
The the value of the cross reference. |
The following table describes the elements of an address for a given pickup or delivery.
Table 4-37 Address
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
address1 |
Yes |
string (254) |
The address line 1. |
address2 |
NA |
string (254) |
The address line 2. |
address3 |
NA |
string (254) |
The address line 3. |
address4 |
NA |
string (254) |
The address line 4. |
addressType |
NA |
string |
enum: RESIDENTIAL, BUSINESS |
apartment |
NA |
string (254) |
The apartment. |
city |
Yes |
string (254) |
The city or town. |
country |
Yes |
string (254) |
The ISO 3166 country code. Applications can decide whether to use 2 or 3 char codes. |
latitude |
NA |
number |
The latitude of the address. |
locationCode |
NA |
string (10) |
The location code for the address, if applicable. This must be unique across the retailer's landscape. |
longitude |
NA |
number |
The longitude of the address. |
postalCode |
NA |
string (20) |
The postal code. |
state |
NA |
string (254) |
The ISO 3166 state, province or territory code. |
The following table describes the elements of a point of contact for a given pickup or delivery.
Table 4-38 Contact
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <$date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
businessName |
NA |
string (254) |
The business name. |
contactReference |
NA |
string (64) |
A reference number for the contact. |
emailAddress |
NA |
string (254) |
The email address. |
firstName |
NA |
string (254) |
The first (that is, given) name. |
lastName |
NA |
string (254) |
The last (that is, family) name. |
middleName |
NA |
string (254) |
The middle name. |
phoneNumber |
Yes |
string (50) |
The phone number. |
suffix |
NA |
string (254) |
A name suffix. |
The following table describes a record indicating details for a delivery package.
Table 4-39 Manifest Package Detail — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
description |
NA |
string(256) |
The description of the package. |
height |
NA |
integer($int32) |
The height of the item in centimeters. |
identifier |
Yes |
string(100) |
The identifier for the manifest package entry. |
items |
NA |
object |
The packages to be delivered. |
length |
NA |
integer($int32) |
The length of the item in centimeters. |
packDimensionCode |
NA |
string(15) |
The package dimension code. |
parentId |
NA |
integer($int64) |
The parent ID. |
totalAmount |
NA |
number |
The combined prices of all items within the package. |
weight |
NA |
number |
The weight of the item in kilograms. |
width |
NA |
integer($int32) |
The width of the item in centimeters. |
The following table describes a record indicating details for an item in the delivery package.
Table 4-40 Manifest Item Detail — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
description |
NA |
string(256) |
The description of the item. |
height |
NA |
integer($int32) |
The height of the item in centimeters. |
identifier |
Yes |
string(100) |
The identifier for the item entry. |
parentId |
NA |
integer($int64) |
The parent ID. |
price |
NA |
number |
The price of the item. |
quantity |
NA |
integer($int32) |
The quantity of the item. |
The following table describes elements of a record indicating verification proof information for a given delivery.
Table 4-41 Delivery Verification Proof — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
barcodeRequired |
NA |
boolean |
Indicates that a barcode scan is required. Default: false |
barcodes |
NA |
string |
Barcode values and types that were scanned. Enum: CODE39, CODE39_FULL_ASCII, CODE128, QR |
contactRequired |
NA |
boolean |
Indicates that contact is required (that is, must NOT be contactless). Default: false |
courierNotes |
NA |
string (2000) |
Additional notes pertaining to proof of handoff. |
identificationVerified |
NA |
boolean |
Indicates that identification was successfully verified. |
minimumAge |
NA |
integer($int32) |
The minimum age of the recipient. |
pictureRequired |
NA |
boolean |
Indicates that a picture is required. Default: false |
pictureURL |
NA |
string |
The URL for the picture image. |
signatureRequired |
NA |
boolean |
Indicates that a signature is required. Default: false |
signatureURL |
NA |
string |
The URL for the signature image. |
The following table describes elements of a record indicating a status transition for a delivery.
Table 4-42 Delivery Status History — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
newStatus |
Yes |
string |
The new status of the delivery. Enum: CREATED, PENDING, ENROUTE_PICKUP, PICKUP_COMPLETE, ENROUTE_DROPOFF, DROPOFF_COMPLETE, CANCELED, RETURNED, ERROR, ENROUTE_RETURN |
parentId |
NA |
integer <int64> |
Parent ID |
priorStatus |
Yes |
string |
The prior status of the delivery. Enum: CREATED, PENDING, ENROUTE_PICKUP, PICKUP_COMPLETE, ENROUTE_DROPOFF, DROPOFF_COMPLETE, CANCELED, RETURNED, ERROR, ENROUTE_RETURN |
The following table describes elements of a record indicating details about a delivery that could not be completed.
Table 4-43 Delivery Undeliverable Information — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
moreInfo |
NA |
string |
Any additional provider-specific information which might be available. |
reason |
NA |
string (2000) |
The reason the delivery was undeliverable. |
undeliverableAction |
NA |
string |
Indicates what the courier should do with the packages in the event they are unable to be delivered. Enum: DISCARD, LEAVE_AT_DOOR, RETURN |
The following table describes elements of a container for an error from a provider.
Table 4-44 Provider Error — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
errorCode |
NA |
integer <int32> |
A numeric error indicating the type of error. |
errorMessage |
NA |
string |
An unlocalized message indicating details about the error. |
moreInfo |
NA |
object |
An object containing provider-specific details pertaining to an error. |
provider |
Yes |
string |
The provider associated with the error. |
The following table describes elements of an object containing provider-specific details pertaining to an error.
Table 4-45 More Error Information — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
For more information about the Mapper Error Data schema, see the Schema — Mapper Error Data section.
Response Code: 424
No providers could service this request.
The media type is application/json.
Example Value
[
{
"errorCode": 2147483647,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"provider": "string"
}
]
Schema — Provider Error
For more information about the Provider Error schema, see the Schema — Provider Error section.
Cancel a Delivery — POST
This section describes the Cancel a Delivery endpoint. This service attempts to cancel the delivery, contacting the provider to do so.
Request
This section describes the request parameters.
Table 4-46 Cancel a Delivery — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id |
NA |
integer <int64> (query) |
The identifier of the delivery. |
deliveryId |
NA |
string (query) |
The primary reference ID from the originating system uniquely identifying this delivery. |
cancelReasonCode |
NA |
string (query) |
The user cancel reason code. |
Responses
This section describes the responses of the Cancel a Delivery endpoint.
Response Code: 200
The result object.
The media type is application/json.
Example Value
{
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"barcodes": [
{
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"identifier": "string",
"parentId": <parentId>,
"type": "CODE39",
"value": "string"
}
],
"cancelReasonCode": "string",
"canceledBy": "string",
"crossReferences": [
{
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryCancelReason": "COURIER",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-11-28T13:11:28.299Z",
"dropoffEta": "2024-11-28T13:11:28.299Z",
"dropoffLocationCode": "string",
"dropoffNotes": "string",
"dropoffReady": "2024-11-28T13:11:28.299Z",
"dropoffVerification": {
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"dropoffVerificationId": <dropoffVerificationId>,
"errorCount": 9999,
"fee": 10000000000000000,
"labelsAttached": false,
"manifest": [
{
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"identifier": "string",
"parentId": <parentId>,
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"parentId": <parentId>,
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"manifestSize": 9999,
"pickupAddress": {
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickAddressId>,
"pickupContact": {
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-11-28T13:11:28.299Z",
"pickupEta": "2024-11-28T13:11:28.299Z",
"pickupLocationCode": "string",
"pickupNotes": "string",
"pickupReady": "2024-11-28T13:11:28.299Z",
"pickupVerification": {
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"pickupVerificationId": <pickupVerificationId>,
"provider": "string",
"providerCreated": "2024-11-28T13:11:28.299Z",
"providerId": "string",
"providerInstance": "string",
"returnTripId": 9223372036854776000,
"status": "CREATED",
"statusHistory": [
{
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"newStatus": "CREATED",
"parentId": <parentId>,
"priorStatus": "CREATED"
}
],
"tip": 10000000000000000,
"totalValue": 10000000000000000,
"trackingURL": "string",
"undeliverableInfo": {
"created": "2024-11-28T13:11:28.299Z",
"createdBy": "string",
"updated": "2024-11-28T13:11:28.299Z",
"updatedBy": "string",
"id": <id>,
"moreInfo": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"reason": "string",
"undeliverableAction": "LEAVE_AT_DOOR"
},
"undeliverableInfoId": <undeliverableInfoId>
}
Schema — Delivery
Schema — Delivery
The following table describes the elements of a delivery from a delivery provider.
Table 4-47 Delivery — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
barcodes |
NA |
object |
A list of barcodes associated with the delivery. |
cancelReasonCode |
NA |
string(40) |
The user cancel reason code. |
canceledBy |
NA |
string (256) |
The ID of the caller who requested cancelation of the delivery (if applicable). |
crossReferences |
NA |
object |
A list of cross-references for the delivery. |
currency |
NA |
string (3) |
The currency code associated with the delivery. |
deliveryCancelReason |
NA |
string |
The delivery cancel reason. Enum: COURIER, PROVIDER, CUSTOMER |
deliveryId |
Yes |
string (128) |
The primary reference ID from the calling system uniquely identifying this delivery. |
deliveryType |
Yes |
string |
The delivery identifier. Default: DELIVERY; Enum: DELIVERY, RETURN |
dropoffAddress |
NA |
object |
An address for a given dropoff location. |
dropoffAddressId |
NA |
integer <int64> |
NA |
dropoffContact |
NA |
object |
A point of contact for a given dropoff location. |
dropoffContactId |
NA |
integer <int64> |
NA |
dropoffDeadline |
NA |
string <date-time> |
The time by which the order must be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffEta |
NA |
string <date-time> |
The time by which the order is expected to be dropped off. Date-time strings are in ISO 8601 timestamp with offset format. |
dropoffLocationCode |
NA |
string(10) |
The location code for the dropoff address. |
dropoffNotes |
NA |
string(256) |
Notes for the courier at dropoff location. |
dropoffReady |
NA |
string($date-time) |
The time at which the items may be dropped off. |
dropoffVerification |
NA |
object |
A record indicating verification proof information for a given delivery. |
dropoffVerificationId |
NA |
integer <int64> |
NA |
errorCount |
NA |
integer($int32) |
The count of failed Provider API calls. |
fee |
NA |
number |
The cost of the delivery. |
labelsAttached |
NA |
boolean |
Indicates whether the package(s) will have a pre-paid shipping label attached when the courier arrives. Default: false Note: Return delivery types have the following limitations with the Uber integration: Labels Attached will always be set to TRUE which indicates that a label will be attached to the package(s). |
manifest |
NA |
object |
The packages to be delivered. |
manifestSize |
NA |
integer <int32> |
The count of manifest items in the delivery. |
pickupAddress |
NA |
object |
An address for a given pickup location. |
pickupAddressId |
NA |
integer <int64> |
NA |
pickupContact |
NA |
object |
A point of contact for a given pickup location. |
pickupContactId |
NA |
integer <int64> |
NA |
pickupDeadline |
NA |
string <date-time> |
The time by which the order must be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupEta |
NA |
string <date-time> |
The time by which the order is expected to be picked up. Date-time strings are in ISO 8601 timestamp with offset format. |
pickupLocationCode |
NA |
string (10) |
The pickup location code associated with this delivery. |
pickupNotes |
NA |
string(256) |
Notes for the courier at pickup location. |
pickupReady |
NA |
string($date-time) |
The time at which the items will be ready for pickup. |
pickupVerification |
NA |
object |
A record indicating verification proof information for a given delivery. |
pickupVerificationId |
NA |
integer <int64> |
NA |
provider |
Yes |
string (10) |
The provider of the delivery. |
providerCreated |
Yes |
string <date-time> |
The creation timestamp, as indicated by the provider. Date-time strings are in ISO 8601 timestamp with offset format. |
providerInstance |
Yes |
string (20) |
The specific instance of the provider of the delivery. |
providerlId |
Yes |
string (128) |
The id from the provider of the delivery. |
returnTripId |
NA |
integer($int64) |
The return trip id of the delivery. |
status |
Yes |
string |
The last known status of the delivery. enum: CREATED, PENDING, ENROUTE_PICKUP, PICKUP_COMPLETE, ENROUTE_DROPOFF, DROPOFF_COMPLETE, CANCELED, RETURNED, ERROR, ENROUTE_RETURN |
statusHistory |
NA |
object |
Status history for the delivery. |
tip |
NA |
number |
The amount of the tip. |
totalValue |
NA |
number |
The total value of the request. |
trackingURL |
NA |
string |
The tracking URL for the delivery. |
undeliverableInfo |
NA |
object |
A record indicating details about a delivery that could not be completed. |
undeliverableInfoId |
NA |
integer <int64> |
NA |
The following table describes elements of a barcode for a delivery package.
Table 4-48 Manifest Package Barcode — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
NA |
identifier |
Yes |
string (100) |
The identifier for the manifest entry associated with this barcode. |
parentId |
NA |
integer <int64> |
NA |
type |
NA |
string |
enum: CODE39, CODE39_FULL_ASCII, CODE128, QR |
value |
Yes |
string (100) |
The the value of the barcode. |
The following table describes the elements of a cross reference record.
Table 4-49 Delivery Cross References — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
key |
Yes |
string (128) |
The identifier for the cross reference. |
parentId |
NA |
integer <int64> |
Parent ID |
value |
Yes |
string (128) |
The the value of the cross reference. |
The following table describes the elements of an address for a given pickup or delivery.
Table 4-50 Address
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
address1 |
Yes |
string (254) |
The address line 1. |
address2 |
NA |
string (254) |
The address line 2. |
address3 |
NA |
string (254) |
The address line 3. |
address4 |
NA |
string (254) |
The address line 4. |
addressType |
NA |
string |
enum: RESIDENTIAL, BUSINESS |
apartment |
NA |
string (254) |
The apartment. |
city |
Yes |
string (254) |
The city or town. |
country |
Yes |
string (254) |
The ISO 3166 country code. Applications can decide whether to use 2 or 3 char codes. |
latitude |
NA |
number |
The latitude of the address. |
locationCode |
NA |
string (10) |
The location code for the address, if applicable. This must be unique across the retailer's landscape. |
longitude |
NA |
number |
The longitude of the address. |
postalCode |
NA |
string (20) |
The postal code. |
state |
NA |
string (254) |
The ISO 3166 state, province or territory code. |
The following table describes the elements of a point of contact for a given pickup or delivery.
Table 4-51 Contact
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
businessName |
NA |
string (254) |
The business name. |
contactReference |
NA |
string (64) |
A reference number for the contact. |
emailAddress |
NA |
string (254) |
The email address. |
firstName |
NA |
string (254) |
The first (that is, given) name. |
lastName |
NA |
string (254) |
The last (that is, family) name. |
middleName |
NA |
string (254) |
The middle name. |
phoneNumber |
Yes |
string (50) |
The phone number. |
suffix |
NA |
string (254) |
A name suffix. |
The following table describes elements of a record indicating verification proof information for a given delivery.
Table 4-52 Delivery Verification Proof — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
barcodeRequired |
NA |
boolean |
Indicates that a barcode scan is required. Default: false |
barcodes |
NA |
string |
Barcode values and types that were scanned. Enum: CODE39, CODE39_FULL_ASCII, CODE128, QR |
contactRequired |
NA |
boolean |
Indicates that contact is required (that is, must NOT be contactless) Default: false |
courierNotes |
NA |
string (2000) |
Additional notes pertaining to proof of handoff. |
identificationVerified |
NA |
boolean |
Indicates that identification was successfully verified. |
minimumAge |
NA |
integer($int32) |
The minimum age of the recipient. |
pictureRequired |
NA |
boolean |
Indicates that a picture is required. Default: false |
pictureURL |
NA |
string |
The URL for the picture image. |
signatureRequired |
NA |
boolean |
Indicates that a signature is required. Default: false |
signatureURL |
NA |
string |
The URL for the signature image. |
The following table describes elements of a record indicating a status transition for a delivery.
Table 4-53 Manifest Package Detail — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
description |
NA |
string |
The description of the package. |
height |
NA |
integer($int32) |
The height of the item in centimeters. |
identifier |
Yes |
string |
The identifier for the manifest package entry. |
items |
NA |
object |
The packages to be delivered. |
length |
NA |
integer($int32) |
The length of the item in centimeters. |
packDimensionCode |
NA |
string(15) |
The package dimension code. |
parentId |
NA |
integer($int64) |
The parent ID. |
totalAmount |
NA |
number |
The combined prices of all items within the package. |
weight |
NA |
number |
The weight of the item in kilograms. |
width |
NA |
integer($int32) |
The width of the item in centimeters. |
The following table describes a record indicating details for an item in the delivery package.
Table 4-54 Manifest Item Detail — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
description |
NA |
string(256) |
The description of the item. |
height |
NA |
integer($int32) |
The height of the item in centimeters. |
identifier |
Yes |
string(100) |
The identifier for the item entry. |
parentId |
NA |
integer($int64) |
The parent ID. |
price |
NA |
number |
The price of the item. |
quantity |
NA |
integer($int32) |
The quantity of the item. |
Table 4-55 Delivery Status History — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
newStatus |
Yes |
string |
The new status of the delivery. Enum: CREATED, PENDING, ENROUTE_PICKUP, PICKUP_COMPLETE, ENROUTE_DROPOFF, DROPOFF_COMPLETE, CANCELED, RETURNED, ERROR, ENROUTE_RETURN |
parentId |
NA |
integer <int64> |
Parent ID |
priorStatus |
Yes |
string |
The prior status of the delivery. Enum: CREATED, PENDING, ENROUTE_PICKUP, PICKUP_COMPLETE, ENROUTE_DROPOFF, DROPOFF_COMPLETE, CANCELED, RETURNED, ERROR, ENROUTE_RETURN |
The following table describes elements of a record indicating details about a delivery that could not be completed.
Table 4-56 Delivery Undeliverable Information — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string <date-time> |
The timestamp at which the record was created. Date-time strings are in ISO 8601 timestamp with offset format. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string <date-time> |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer <int64> |
ID |
moreInfo |
NA |
string |
Any additional provider-specific information which might be available. |
reason |
NA |
string (2000) |
The reason the delivery was undeliverable. |
undeliverableAction |
NA |
string |
Indicates what the courier should do with the packages in the event they are unable to be delivered. Enum: DISCARD, LEAVE_AT_DOOR, RETURN |
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
For more information about the schema Mapper Error Data, see the Schema — Mapper Error Data section.
Response Code: 424
No provider could service this request.
The media type is application/json.
Example Value
[
{
"errorCode": 2147483647,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"provider": "string"
}
]
Schema — Provider Error
For more information about the Provider Error Schema, see the Schema — Provider Error section.
Get the Current Status of a Delivery — GET
This section describes the Get the Current Status of a Delivery endpoint. This service retrieves the latest status of the delivery, calling the provider if appropriate. It will also retrieve the most current details about delivery in case of updates to the delivery schedule, notes, or other.
Request
This section describes the request parameters.
Table 4-57 Get the Current Status of a Delivery — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | NA | integer <int64> (query) | The identifier of the delivery. |
deliveryId | NA | string (query) | The primary reference ID from the originating system uniquely identifying this delivery. |
Responses
This section describes responses of the Get the Current Status of a Delivery endpoint.
Response Code: 200
The result object.
The media type is application/json.
Example Value
{
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"barcodes": [
{
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"identifier": "string",
"parentId": <parentId>,
"type": "CODE39",
"value": "string"
}
],
"cancelReasonCode": "string",
"canceledBy": "string",
"crossReferences": [
{
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryCancelReason": "COURIER",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-11-28T13:28:27.877Z",
"dropoffEta": "2024-11-28T13:28:27.877Z",
"dropoffLocationCode": "string",
"dropoffNotes": "string",
"dropoffReady": "2024-11-28T13:28:27.877Z",
"dropoffVerification": {
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"dropoffVerificationId": <dropoffVerificationId>,
"errorCount": 9999,
"fee": 10000000000000000,
"labelsAttached": false,
"manifest": [
{
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"identifier": "string",
"parentId": 9223372036854776000,
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"parentId": <parentId>,
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"manifestSize": 9999,
"pickupAddress": {
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-11-28T13:28:27.877Z",
"pickupEta": "2024-11-28T13:28:27.877Z",
"pickupLocationCode": "string",
"pickupNotes": "string",
"pickupReady": "2024-11-28T13:28:27.877Z",
"pickupVerification": {
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"pickupVerificationId": <pickupVerificationId>,
"provider": "string",
"providerCreated": "2024-11-28T13:28:27.877Z",
"providerId": "string",
"providerInstance": "string",
"returnTripId": 9223372036854776000,
"status": "CREATED",
"statusHistory": [
{
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"newStatus": "CREATED",
"parentId": <parentId>,
"priorStatus": "CREATED"
}
],
"tip": 10000000000000000,
"totalValue": 10000000000000000,
"trackingURL": "string",
"undeliverableInfo": {
"created": "2024-11-28T13:28:27.877Z",
"createdBy": "string",
"updated": "2024-11-28T13:28:27.877Z",
"updatedBy": "string",
"id": <id>,
"moreInfo": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"reason": "string",
"undeliverableAction": "LEAVE_AT_DOOR"
},
"undeliverableInfoId": <undeliverableInfoId>
}
Schema — Delivery
For more information about the Delivery schema, see the Schema — Delivery section.
Response Code: 400
The provided input is invalid
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
For more information about the schema Mapper Error Data, see the Schema — Mapper Error Data section.
Response Code: 424
No providers could service this request. A collection of related ProviderError objects will be returned.
Example Value
[
{
"errorCode": 2147483647,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"provider": "string"
}
]
Schema — Provider Error
For more information about the Provider Error schema, see the Schema — Provider Error section.
Get a Delivery — GET
This section describes the Get a Delivery endpoint. This service retrieves the details of a delivery as stored in the database. It will not call out to the provider to retrieve any new updates.
Request
This section describes the request parameters.
Table 4-58 Get a Delivery — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | Yes | integer <int64> (path) | The identifier of the delivery. |
expands | NA | string (query) |
A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
Responses
This section describes the responses of the Get a Delivery endpoint.
Response Code: 200
The requested record.
The media type is application/json.
Example Value
{
"created": "2024-11-28T13:39:37.057Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.057Z",
"updatedBy": "string",
"id": <id>,
"barcodes": [
{
"created": "2024-11-28T13:39:37.057Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.057Z",
"updatedBy": "string",
"id": <Id>,
"identifier": "string",
"parentId": <parentId>,
"type": "CODE39",
"value": "string"
}
],
"cancelReasonCode": "string",
"canceledBy": "string",
"crossReferences": [
{
"created": "2024-11-28T13:39:37.057Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.057Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryCancelReason": "COURIER",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-11-28T13:39:37.058Z",
"dropoffEta": "2024-11-28T13:39:37.058Z",
"dropoffLocationCode": "string",
"dropoffNotes": "string",
"dropoffReady": "2024-11-28T13:39:37.058Z",
"dropoffVerification": {
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"dropoffVerificationId": <dropoffVerificationId>,
"errorCount": 9999,
"fee": 10000000000000000,
"labelsAttached": false,
"manifest": [
{
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"identifier": "string",
"parentId": <parentId>,
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"parentId": <parentId>,
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"manifestSize": 9999,
"pickupAddress": {
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-11-28T13:39:37.058Z",
"pickupEta": "2024-11-28T13:39:37.058Z",
"pickupLocationCode": "string",
"pickupNotes": "string",
"pickupReady": "2024-11-28T13:39:37.058Z",
"pickupVerification": {
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"pickupVerificationId": <pickupVerificationId>,
"provider": "string",
"providerCreated": "2024-11-28T13:39:37.058Z",
"providerId": "string",
"providerInstance": "string",
"returnTripId": <returnTripId>,
"status": "CREATED",
"statusHistory": [
{
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"newStatus": "CREATED",
"parentId": <parentId>,
"priorStatus": "CREATED"
}
],
"tip": 10000000000000000,
"totalValue": 10000000000000000,
"trackingURL": "string",
"undeliverableInfo": {
"created": "2024-11-28T13:39:37.058Z",
"createdBy": "string",
"updated": "2024-11-28T13:39:37.058Z",
"updatedBy": "string",
"id": <id>,
"moreInfo": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"reason": "string",
"undeliverableAction": "LEAVE_AT_DOOR"
},
"undeliverableInfoId": <undeliverableInfoId>
}
Schema — Delivery
For more information about the schema Delivery, see the Schema — Delivery section.
Check if a Delivery Exists — HEAD
This section describes the endpoint which checks if a delivery exists.
Queries for Delivery Records — GET
This section describes the Queries for Delivery Records endpoint. This service returns a list of delivery records and the associated delivery details matching the provided criteria.
Request
This section describes the request parameters.
Table 4-60 Queries for Delivery Records — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where | NA | object (query) | A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, that is a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example, {"child.name":"Jo"} would match Joe, John, etc. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example, {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
orderBy | NA | string (query) | A comma-delimited list of fields used to determine result
ordering or a JSON array of complex sorting criteria. When supplied
as strings, names are provided in the same format as the where argument
- optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON
array, a String fieldName field must be included in the object. Optional
String order (asc or desc) and boolean caseInsensitive fields may
also be provided.
|
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated
path form (that is "child.line" would return the
relationship named "child" , and its child relationship
named "line" ), on the resulting model which should
be included in the response or "all" if all associated relationships
should be included.
|
limit | NA | integer($int32) (query) | Provides a maximum number of records to be returned. |
offset | NA | integer($int32) (query) | Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the responses of the Queries for Delivery Records endpoint.
Response Code: 200
The requested records.
The media type is application/json.
Example Value
[
{
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"barcodes": [
{
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"identifier": "string",
"parentId": <parentId>,
"type": "CODE39",
"value": "string"
}
],
"cancelReasonCode": "string",
"canceledBy": "string",
"crossReferences": [
{
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryCancelReason": "COURIER",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-11-28T13:46:35.808Z",
"dropoffEta": "2024-11-28T13:46:35.808Z",
"dropoffLocationCode": "string",
"dropoffNotes": "string",
"dropoffReady": "2024-11-28T13:46:35.808Z",
"dropoffVerification": {
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"dropoffVerificationId": <dropoffVerificationId>,
"errorCount": 9999,
"fee": 10000000000000000,
"labelsAttached": false,
"manifest": [
{
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"identifier": "string",
"parentId": <parentId>,
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"parentId": <parentId>,
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"manifestSize": 9999,
"pickupAddress": {
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupContactId>,
"pickupDeadline": "2024-11-28T13:46:35.808Z",
"pickupEta": "2024-11-28T13:46:35.808Z",
"pickupLocationCode": "string",
"pickupNotes": "string",
"pickupReady": "2024-11-28T13:46:35.808Z",
"pickupVerification": {
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"pickupVerificationId": <pickVerificationId>,
"provider": "string",
"providerCreated": "2024-11-28T13:46:35.808Z",
"providerId": "string",
"providerInstance": "string",
"returnTripId": <returnTripId>,
"status": "CREATED",
"statusHistory": [
{
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": 9223372036854776000,
"newStatus": "CREATED",
"parentId": <parentId>,
"priorStatus": "CREATED"
}
],
"tip": 10000000000000000,
"totalValue": 10000000000000000,
"trackingURL": "string",
"undeliverableInfo": {
"created": "2024-11-28T13:46:35.808Z",
"createdBy": "string",
"updated": "2024-11-28T13:46:35.808Z",
"updatedBy": "string",
"id": <id>,
"moreInfo": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"reason": "string",
"undeliverableAction": "LEAVE_AT_DOOR"
},
"undeliverableInfoId": <undeliverableInfoId>
}
]
Schema — Delivery
For more information about the schema Delivery, see the Schema — Delivery section.
Queries for Delivery Records/Count — GET
This section describes the Queries for Delivery Records Count endpoint. This service returns a count of records matching the provided criteria.
Request
This section describes the request parameters.
Table 4-61 Queries for a Delivery Records Count — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where | NA | object (query) | A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, that is a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example, {"child.name":"Jo"} would match Joe, John, and son on. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example, {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example, {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
Queries for Delivery Records by Attributes — GET
This section describes the Queries for Delivery Records by Attributes endpoint. This endpoint returns a list of records matching the provided attributes.
Request
This section describes the request parameters.
Table 4-62 Queries for Delivery Records by Attributes — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id |
NA |
integer ($int64) (query) |
ID |
cancelReasonCode |
NA |
string (query) |
cancel Reason Code |
canceledBy |
NA |
string (query) |
canceled by |
currency |
NA |
string (query) |
currency |
deliveryCancelReason |
NA |
string (query) |
delivery cancel reason Available values: COURIER, PROVIDER, CUSTOMER |
deliveryId |
NA |
string (query) |
delivery ID |
deliveryType |
NA |
string (query) |
delivery type; Available values: DELIVERY, RETURN; Default value: DELIVERY |
dropoffAddressId |
NA |
integer ($int64) (query) |
dropoff address ID |
dropoffContactId |
NA |
integer ($int64) (query) |
dropoff contact ID |
dropoffDeadline |
NA |
string ($date-time) (query) |
dropoff deadline |
dropoffEta |
NA |
string($date-time) (query) |
dropoff Eta |
dropoffLocationCode |
NA |
string (query) |
dropoff location code |
dropoffNotes |
NA |
string (query) |
dropoff notes |
dropoffReady |
NA |
string($date-time) (query) |
dropoff ready |
dropoffVerificationId |
NA |
integer($int64) (query) |
dropoff verification ID |
errorCount |
NA |
integer($int32) (query) |
error count |
fee |
NA |
number (query) |
fee |
labelsAttached |
NA |
boolean (query) |
Default value : false Note: Return delivery types have the following limitations with the Uber integration: Labels Attached will always be set to TRUE which indicates that a label will be attached to the package(s). |
manifestSize |
NA |
integer ($int32) (query) |
manifest size |
pickupAddressId |
NA |
integer ($int64) (query) |
pickup address ID |
pickupContactId |
NA |
integer ($int64) (query) |
pickup contact ID |
pickupDeadline |
NA |
string ($date-time) (query) |
pickup deadline |
pickupEta |
NA |
string ($date-time) (query) |
pickup Eta |
pickupLocationCode |
NA |
string (query) |
pickup location code |
pickupNotes |
NA |
string (query) |
pickup notes |
pickupReady |
NA |
string ($date-time) (query) |
pickup ready |
pickupVerificationId |
NA |
integer ($int64) (query) |
pickup verification ID |
provider |
NA |
string (query) |
provider |
providerCreated |
NA |
string ($date-time) (query) |
provider created |
providerId |
NA |
string (query) |
provider ID |
providerInstance |
NA |
string (query) |
provider instance |
returnTripId |
integer($int64) (query) |
return trip ID |
|
status |
NA |
string (query) |
Available values : CREATED, PENDING, ENROUTE_PICKUP, PICKUP_COMPLETE, ENROUTE_DROPOFF, DROPOFF_COMPLETE, CANCELED, RETURNED, ERROR, ENROUTE_RETURN |
tip |
NA |
number (query) |
tip |
totalValue |
NA |
number (query) |
total value |
trackingURL |
NA |
string (query) |
tracking URL |
undeliverableInfoId |
NA |
integer ($int64) (query) |
undeliverable info ID |
orderBy |
NA |
string (query) |
A comma-delimited list of fields used to determine result ordering or a JSON array of complex sorting criteria. When supplied as strings, names are provided in the same format as the where argument - optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON array, a String fieldName field must be included in the object. Optional String order (asc or desc) and boolean caseInsensitive fields may also be provided. |
expands |
NA |
string (query) |
A comma-delimited list of relationship paths, in dot-notated path form (that is"child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
limit |
NA |
integer ($int32) (query) |
Provides a maximum number of records to be returned. |
offset |
NA |
integer ($int32) (query) |
Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the responses of the Queries for Delivery Records by Attributes endpoint.
Response Code: 200
The requested records.
The media type is application/json.
Example Value
[
{
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"barcodes": [
{
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"identifier": "string",
"parentId": <parentId>,
"type": "CODE39",
"value": "string"
}
],
"cancelReasonCode": "string",
"canceledBy": "string",
"crossReferences": [
{
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"key": "string",
"parentId": <parentId>,
"value": "string"
}
],
"currency": "str",
"deliveryCancelReason": "COURIER",
"deliveryId": "string",
"deliveryType": "DELIVERY",
"dropoffAddress": {
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"dropoffAddressId": <dropoffAddressId>,
"dropoffContact": {
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"dropoffContactId": <dropoffContactId>,
"dropoffDeadline": "2024-11-28T13:53:35.285Z",
"dropoffEta": "2024-11-28T13:53:35.285Z",
"dropoffLocationCode": "string",
"dropoffNotes": "string",
"dropoffReady": "2024-11-28T13:53:35.285Z",
"dropoffVerification": {
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"dropoffVerificationId": 9223372036854776000,
"errorCount": 9999,
"fee": 10000000000000000,
"labelsAttached": false,
"manifest": [
{
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": 9223372036854776000,
"description": "string",
"height": 9999,
"identifier": "string",
"items": [
{
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"description": "string",
"identifier": "string",
"parentId": 9223372036854776000,
"price": 10000000000000000,
"quantity": 9999
}
],
"length": 9999,
"packDimensionCode": "string",
"parentId": 9223372036854776000,
"totalAmount": 10000000000000000,
"weight": 10000000000000000,
"width": 9999
}
],
"manifestSize": 9999,
"pickupAddress": {
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"address1": "string",
"address2": "string",
"address3": "string",
"address4": "string",
"addressType": "RESIDENTIAL",
"apartment": "string",
"city": "string",
"country": "string",
"latitude": 999999999,
"locationCode": "string",
"longitude": 999999999,
"postalCode": "string",
"state": "string"
},
"pickupAddressId": <pickupAddressId>,
"pickupContact": {
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"businessName": "string",
"contactReference": "string",
"emailAddress": "string",
"firstName": "string",
"lastName": "string",
"middleName": "string",
"phoneNumber": "string",
"suffix": "string"
},
"pickupContactId": <pickupcontactId>,
"pickupDeadline": "2024-11-28T13:53:35.285Z",
"pickupEta": "2024-11-28T13:53:35.285Z",
"pickupLocationCode": "string",
"pickupNotes": "string",
"pickupReady": "2024-11-28T13:53:35.285Z",
"pickupVerification": {
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"barcodeRequired": false,
"barcodes": {
"additionalProp1": "CODE39",
"additionalProp2": "CODE39",
"additionalProp3": "CODE39"
},
"contactRequired": false,
"courierNotes": "string",
"identificationVerified": true,
"minimumAge": 9999,
"pictureRequired": false,
"pictureURL": "string",
"signatureRequired": false,
"signatureURL": "string"
},
"pickupVerificationId": <pickupVerificationId>,
"provider": "string",
"providerCreated": "2024-11-28T13:53:35.285Z",
"providerId": "string",
"providerInstance": "string",
"returnTripId": <returnTripId>,
"status": "CREATED",
"statusHistory": [
{
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"newStatus": "CREATED",
"parentId": <parentId>,
"priorStatus": "CREATED"
}
],
"tip": 10000000000000000,
"totalValue": 10000000000000000,
"trackingURL": "string",
"undeliverableInfo": {
"created": "2024-11-28T13:53:35.285Z",
"createdBy": "string",
"updated": "2024-11-28T13:53:35.285Z",
"updatedBy": "string",
"id": <id>,
"moreInfo": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"reason": "string",
"undeliverableAction": "LEAVE_AT_DOOR"
},
"undeliverableInfoId": <undeliverableInfoId>
}
]
Schema — Delivery
For more information about the schema Delivery, see the Schema — Delivery section.
Metrics Services
This section describes the Metrics Services.
Metrics — GET
This section describes the Metrics endpoint. This service retrieves delivery metrics for created, completed, canceled, and returned deliveries based on specified parameters such as delivery type, start and end date, and time zone offset.
Request
This section describes the request parameters.
Table 4-63 Metrics — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
providerInstance |
NA |
string (query) |
The provider instance of the delivery. |
type |
NA |
string (query) |
The delivery type of metric data. Available values: DELIVERY, RETURN Note: If both values are required, leave the type value blank. |
dateRange |
NA |
string (query) |
The date range of delivery metric data. dateRange takes precedence and ignores startDate and endDate when specified. Available values: YDY, TDY, MTD, YTD |
offset |
NA |
string (query) |
The time-zone offset of dateRange in the form of (+/-)HH:MI between -18:00 and +18:00 (inclusive). |
startDateTime |
NA |
string ($date-time) (query) |
The start datetime of delivery metric data when dateRange is not specified. |
endDateTime |
NA |
string ($date-time) (query) |
The end datetime of delivery metric data when dateRange is not specified. |
results |
Yes |
string (query) |
The summary type that determines how data will be aggregated when returned. Available values: DETAIL, DAILY, SINGLE |
Responses
This section describes the responses of the Metrics endpoint.
Response Code: 200
The result object.
The media type is application/json.
Example Value
[
{
"intervalEnd": "2024-07-24T16:18:49.626Z",
"intervalStart": "2024-07-24T16:18:49.626Z",
"metrics": [
{
"metricType": "DELIVERIES_CREATED",
"value": 2147483647
}
]
}
Schema — Metric Response
The following table describes the Metric Response object.
Table 4-64 Metric Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
intervalEnd | Yes | string($date-time) | The end time of metric data. |
intervalStart | Yes | string($date-time) | The start time of metric data. |
metrics | NA | object | A collection of metric items for a given period. |
The following table describes a container for predefined metrics.
Table 4-65 Metric — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
metricType | NA | string | A type of metric. Enum: [DELIVERIES_CREATED, DELIVERIES_COMPLETED, DELIVERIES_CANCELED, DELIVERIES_RETURNED, RETURNS_CREATED, RETURNS_COMPLETED, RETURNS_CANCELED, RETURNS_RETURNED] |
value | NA | integer ($int32) | A count of metric. |
Response Code: 400
The provided input is valid.
The media type is application/json.
Example
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
For details about the Mapper Error Data schema, see the Schema — Mapper Error Data section.
Location Metrics — GET
This section describes the Location Metrics endpoint. This service retrieves delivery metrics, for a specific location, for created, completed, canceled, and returned deliveries based on specified parameters such as delivery type, start and end date, and time zone offset.
Request
This section describes the request parameters.
Table 4-66 Location Metrics — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
providerInstance |
NA |
string (query) |
The provider instance of the delivery. |
type |
NA |
string (query) |
The delivery type of metric data. All types will be returned if left empty. Available values : DELIVERY, RETURN |
dateRange |
NA |
string (query) |
The date range of delivery metric data. dateRange takes precedence and ignores startDate and endDate when specified. Available values : YDY, TDY, MTD, YTD |
offset |
NA |
string (query) |
The time-zone offset of dateRange in the form of (+/-)HH:MI between -18:00 and +18:00 (inclusive). |
startDateTime |
NA |
string($date-time) (query) |
The start datetime of delivery metric data when dateRange is not specified. |
endDateTime |
NA |
string($date-time) (query) |
The end datetime of delivery metric data when dateRange is not specified. |
results |
Yes |
string (query) |
The summary type that determines how data will be aggregated when returned. Available values : DETAIL, DAILY, SINGLE |
locationCode |
Yes |
string (path) |
The location code of metric data. A location code that matches a pickup location code will fall under Outbound Metrics data and a location code that matches a dropoff location code will fall under Inbound Metrics data. |
Responses
This section describes the responses of the Metrics endpoint.
Response Code: 200
The result object.
The media type is application/json.
Example Value
[
{
"intervalEnd": "2024-07-24T16:19:45.792Z",
"intervalStart": "2024-07-24T16:19:45.792Z",
"locationCode": "string",
"metricsInbound": [
{
"metricType": "DELIVERIES_CREATED",
"value": 2147483647
}
],
"metricsOutbound": [
{
"metricType": "DELIVERIES_CREATED",
"value": 2147483647
}
]
}
]
Schema — Location Metric Response
The following table describes the Location Metric Response object. A container for a metric response
Table 4-67 Location Metric Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
intervalEnd |
Yes |
string($date-time) |
The end time of metric data. |
intervalStart |
Yes |
string($date-time) |
The start time of metric data. |
locationCode |
NA |
string |
The location code of metric data where inbound (dropoff location) and outbound (pickup location) metrics are based. |
metricsInbound |
NA |
object |
A collection of metric inbound items for a given period if a location code is provided and if the location code matches a dropoff location code. |
metricsOutbound |
NA |
object |
A collection of metric outbound items for a given period if a location code is provided and if the location code matches a pickup location code. |
The following table describes a container for predefined metrics.
Table 4-68 Metric — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
metricType | NA | string | A type of metric. Enum: [DELIVERIES_CREATED, DELIVERIES_COMPLETED, DELIVERIES_CANCELED, DELIVERIES_RETURNED, RETURNS_CREATED, RETURNS_COMPLETED, RETURNS_CANCELED, RETURNS_RETURNED] |
value | NA | integer ($int32) | A count of metric. |
Response Code: 400
The provided input is valid.
The media type is application/json.
Example
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
For details about the Mapper Error Data schema, see the Schema — Mapper Error Data section.
Webhook Credential Services
This section describes the Webhook Credential Services.
Add Credential — POST
This section describes the AddCredential API. This API creates a new credential.
Request
There are no request parameters.
The request body is application/json.
A request indicating the parameters of the credential.
Example Value
{
"clientId": "string",
"clientSecret": "string",
"credentialId": "string",
"description": "string",
"id": <id>,
"scope": "string",
"url": "string"
}
Schema — Credential Request
The following table describes a request to create/update a credential used when accessing an external service.
Table 4-69 CredentialRequest — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
clientId | yes | string(256) | The client ID for the credential. |
clientSecret | yes | string(256) | The client secret for the credential. |
credentialId | yes | string(32) | The credential ID. |
description | NA | string(256) | The credential description, if one has been defined. |
id | NA | integer($int64) | ID |
scope | NA | string | The scope for the credential. |
url | yes | string | The OAuth2 URL for the credential. |
Responses
This section describes the responses of the Add Credential endpoint.
Response Code: 200
The request was processed successfully.
The media type is application/json.
Example Value
{
"created": "2024-01-19T10:11:38.601Z",
"createdBy": "string",
"credentialId": "string",
"description": "string",
"id": <id>,
"updated": "2024-01-19T10:11:38.601Z",
"updatedBy": "string"
}
Schema — Credential Response
The table below describes a credential used when accessing an external service..
Table 4-70 Credential Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | yes | string ($date-time) | The timestamp at which the credential was created. |
created By | yes | string | The user that created the credential. |
credentialId | yes | string(32) | The credential ID. |
description | NA | string(256) | The credential description, if one has been defined. |
id | NA | integer($int64) | ID |
updated | NA | string($date-time) | The timestamp at which the credential was last updated, or null if it has never been updated. |
updatedBy | NA | string | The user that last updated the credential, or null if it has never been updated. |
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-71 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-72 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Get Credentials — GET
This section describes the GetCredentials API. This API obtains a set of known credentials.
Responses
This section describes the responses of the GetCredentials API.
Response Code: 200
A set of known credentials.
The media type is application/json.
Example Value
[
{
"created": "2024-01-19T10:20:01.887Z",
"createdBy": "string",
"credentialId": "string",
"description": "string",
"id": <id>,
"updated": "2024-01-19T10:20:01.887Z",
"updatedBy": "string"
}
]
Schema — Credential Response
The table below describes a credential used when accessing an external service..
Table 4-73 Credential Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | yes | string ($date-time) | The timestamp at which the credential was created. |
created By | yes | string | The user that created the credential. |
credentialId | yes | string(32) | The credential ID. |
description | NA | string(256) | The credential description, if one has been defined. |
id | NA | integer($int64) | ID |
updated | NA | string($date-time) | The timestamp at which the credential was last updated, or null if it has never been updated. |
updatedBy | NA | string | The user that last updated the credential, or null if it has never been updated. |
Get Credential — GET
This section describes the GetCredential API. This API obtains a credential.
Request
This section describes the request parameters.
Table 4-74 Get Credential — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id |
Yes |
integer($int64) |
ID |
Responses
This section describes the responses of the GetCredential API.
Response Code: 200
The requested credential.
The media type is application/json.
Example Value
{
"created": "2024-05-22T11:55:10.379Z",
"createdBy": "string",
"credentialId": "string",
"description": "string",
"id": <id>,
"updated": "2024-05-22T11:55:10.379Z",
"updatedBy": "string"
}
Schema — Credential Response
The table below describes a credential used when accessing an external service..
Table 4-75 Credential Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | yes | string ($date-time) | The timestamp at which the credential was created. |
created By | yes | string | The user that created the credential. |
credentialId | yes | string(32) | The credential ID. |
description | NA | string(256) | The credential description, if one has been defined. |
id | NA | integer($int64) | ID |
updated | NA | string($date-time) | The timestamp at which the credential was last updated, or null if it has never been updated. |
updatedBy | NA | string | The user that last updated the credential, or null if it has never been updated. |
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-76 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-77 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Update Credential — PUT
This section describes the UpdateCredential API. This API updates a credential.
Request
This table describes the request parameters of the DeleteCredential API.
The request body is application/json.
A request indicating the parameters of the credential.
Table 4-78 UpdateCredential — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | yes | integer($int64) (path) | The credential id to be updated. |
Example Value
{
"clientId": "string",
"clientSecret": "string",
"credentialId": "string",
"description": "string",
"id": <id>,
"scope": "string",
"url": "string"
}
Schema — Credential Request
The following table describes a request to create/update a credential used when accessing an external service.
Table 4-79 CredentialRequest — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
clientId | yes | string(256) | The client ID for the credential. |
clientSecret | yes | string(256) | The client secret for the credential. |
credentialId | yes | string(32) | The credential ID. |
description | NA | string(256) | The credential description, if one has been defined. |
id | NA | integer($int64) | ID |
scope | NA | string | The scope for the credential. |
url | yes | string | The OAuth2 URL for the credential. |
Responses
This section describes the responses of the UpdateCredential API.
Response Code: 200
The request was processed successfully.
The media type is application/json.
Example Value
{
"created": "2024-01-19T10:27:47.428Z",
"createdBy": "string",
"credentialId": "string",
"description": "string",
"id": <id>,
"updated": "2024-01-19T10:27:47.428Z",
"updatedBy": "string"
}
Schema — Credential Response
The table below describes a credential used when accessing an external service..
Table 4-80 Credential Response — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | yes | string ($date-time) | The timestamp at which the credential was created. |
created By | yes | string | The user that created the credential. |
credentialId | yes | string(32) | The credential ID. |
description | NA | string(256) | The credential description, if one has been defined. |
id | NA | integer($int64) | ID |
updated | NA | string($date-time) | The timestamp at which the credential was last updated, or null if it has never been updated. |
updatedBy | NA | string | The user that last updated the credential, or null if it has never been updated. |
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-81 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-82 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Delete Credential — DELETE
This section describes the DeleteCredential API. This API deletes a credential.
Request
This table describes the request parameters of the DeleteCredential API.
Table 4-83 DeleteCredential — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | yes | integer($int64) (path) | The credential id to be deleted. |
Responses
This section describes the responses of the DeleteCredential API.
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-84 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-85 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Status Notification Webhook Services
This section describes the Status Notification Webhook Services.
Collect and Receive can notify external applications about updates to the statuses of deliveries by webhooks. Webhook notifications occur whenever the status of a delivery changes, and allows interested applications to subscribe to notifications in near-real-time. Note the following details:
-
Notifications are sent via REST, authenticated using OAuth 2.0, and may include up to 100 notifications per batch.
-
Consuming applications must acknowledge the receipt of notifications by responding as per the requirements of the API.
-
Delivery attempts will be made for up to 48 hours if notifications cannot be transmitted successfully.
-
Any notification that could not reach its destination, or was not acknowledged, is treated as unsuccessful.
-
Each retry attempt will be attempted with increasing delay. The first retry will occur after 30 seconds, and each subsequent attempt increases the delay period by 4x.
-
{
"openapi": "3.0.1",
"info": {
"title": "Oracle Collect and Receive Delivery Notification",
"version": "2.0.0",
"description": "A delivery notification API for Oracle Collect and Receive"
},
"paths": {
"/notify": {
"post": {
"summary": "notify",
"description": "Send delivery status notifications.",
"operationId": "notify",
"tags": [
"WebhookV2"
],
"requestBody": {
"description": "Delivery with pickup or dropOff delayed notifications.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NotificationV2"
}
}
}
}
},
"responses": {
"200": {
"description": "Successfully received delivery IDs. This array must contain the unique identifiers of deliveries that have been successfully received from the request body.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"maximum": 9223372036854776000,
"minimum": -9223372036854776000,
"type": "integer",
"format": "int64",
"description": "The unique identifier of the delivery."
}
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"NotificationV2": {
"type": "object",
"properties": {
"id": {
"maximum": 9223372036854776000,
"minimum": -9223372036854776000,
"type": "integer",
"format": "int64",
"description": "The unique identifier of the delivery."
},
"deliveryId": {
"maxLength": 128,
"minLength": 0,
"type": "string",
"description": "The primary reference ID from the calling system uniquely identifying this delivery."
},
"deliveryAttributes": {
"description": "The delivery identifier attributes.",
"$ref": "#/components/schemas/DeliveryAttributes"
},
"status": {
"description": "The last known status of the delivery.",
"$ref": "#/components/schemas/DeliveryStatus"
},
"updated": {
"type": "string",
"description": "The timestamp at which the record was last updated.",
"format": "date-time"
}
}
},
"DeliveryStatus": {
"type": "string",
"description": "The last known status of the delivery.",
"enum": [
"CREATED",
"PENDING",
"ENROUTE_PICKUP",
"PICKUP_COMPLETE",
"ENROUTE_DROPOFF",
"DROPOFF_COMPLETE",
"CANCELED",
"RETURNED",
"ERROR",
"ENROUTE_RETURN"
]
},
"DeliveryAttributes": {
"type": "array",
"description": "The delivery identifier attributes.",
"items": {
"type": "string",
"description": "The enumeration of attributes.",
"enum": ["PICKUP_DELAYED","DROPOFF_DELAYED"]
}
}
}
}
}
Leveraging the Status Notification Webhook for Delivery Communications
The Collect and Receive Status Notification Webhook can be leveraged and used to facilitate and trigger communication to the sending and/or receiving parties of a delivery. Leveraging the webhook to send communications is beneficial specifically for external clients, businesses, or users, that are not part of your organization and do not have access to the Collect and Receive UI, but need updates about the progress of a delivery.
It is strongly recommended that the business system(s) that are receiving the Status Notification webhooks use the notifications to get the delivery details, create package labels, and communicate them to the contact at the pickup location. As part of the delivery process, labels must be attached to all packages for the courier to scan during transport. When the contact at the pickup location does not have access to the Collect and Receive UI, they will not be able to retrieve the package labels.
Sending communications externally can be accomplished by doing the following on receipt of the Status Notification Webhook:
-
The receiving system can call the Collect and Receive getStatus API to retrieve all of the details about the delivery
-
Trigger, via your business’ own communication tool (i.e. Email Service Provider), an external notification (i.e. email, SMS, push notification) about the status of an order and the ongoing delivery process. (Examples: Delivery Scheduled Successfully, Delivery is delayed, Packages are out for delivery, an so on)
-
If the status in the webhook notification was pending, use the delivery details to create and send package label(s) to the contact at the pickup location. Package labels and barcodes must be affixed to each package being sent in a delivery prior to courier pickup. When creating a package label, consider including the following:
-
Delivery ID - (Required)
-
Manifest Identifier - Printed as a QR code (Required)
-
Package X of Y
-
Pickup Contact and Address Details
-
Dropoff Contact and Address Details
-
The following are sample scenarios that articulate the benefits of leveraging the status notifications to send external communications:
Scenario 1: A business user creates an inbound delivery via the Collect and Receive User Interface, for packages to be picked up from a non-Collect and Receive user.
When not leveraging the Status Notification Webhook, the non-Collect and Receive user will: | When leveraging the Status Notification Webhook, the non-Collect and Receive user can: |
---|---|
|
|
Scenario 2: A business user creates an outbound delivery via the Collect and Receive User Interface, for packages to be sent to a non-Collect and Receive user.
When not leveraging the Status Notification Webhook, the non-Collect and Receive user will: | When leveraging the Status Notification Webhook, the non-Collect and Receive user can: |
---|---|
|
|
Add a New Webhook — POST
This section describes the Add a New Webhook API.
Request
This section describes the request parameters.
The request body is application/json.
The ModelField is null.
Table 4-86 Add a New Webhook — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
expands | NA | string (query) | A comma-delimited
list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child" , and its child relationship named "line" ), on the resulting model which should be included in the response
or "all" if all associated relationships should be
included.
|
Example Value
{
"created": "2023-12-14T09:51:05.370Z",
"createdBy": "string",
"updated": "2023-12-14T09:51:05.370Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-87 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Responses
This section describes the responses of the Add a New Webhook API.
Reason Code: 200
The new record.
The media type is application/json.
Example Value
{
"created": "2023-12-14T09:51:05.435Z",
"createdBy": "string",
"updated": "2023-12-14T09:51:05.435Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-88 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Reason Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-89 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-90 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Queries for Webhook Records — GET
This section describes the Queries for Webhook Records API. This API returns a list of records matching the provided criteria.
Request
This section describes the request parameters.
Table 4-91 Queries for Webhook Records— Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where | NA | object (query) | A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, that is a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example {"child.name":"Jo"} would match Joe, John, and so on. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
orderBy | NA | string (query) | A comma-delimited list of fields used to determine result ordering or a JSON array of complex sorting criteria. When supplied as strings, names are provided in the same format as the where argument - optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON array, a String fieldName field must be included in the object. Optional String order (asc or desc) and boolean caseInsensitive fields may also be provided. |
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
limit | NA | integer($int32) (query) | Provides a maximum number of records to be returned. |
offset | NA | integer($int32) (query) | Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the responses of the Queries for Webhook Records API.
Response Code: 200
The requested records.
The media type is application/json.
Example Value
[
{
"created": "2023-12-14T13:29:34.113Z",
"createdBy": "string",
"updated": "2023-12-14T13:29:34.113Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
]
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-92 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Performs a Bulk Action using a Collection of Webhook — POST
This section describes the Performs a Bulk Action using a Collection of Webhook API. This API returns a list of records to be loaded.
Request
This section describes the request parameters.
The request body is application/json.
Table 4-93 Performs a Bulk Action using a Collection of Webhook — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
action | NA | string (query) |
Provides an action to be used performing the bulk operation. If not specified, the default of ADD_OR_UPDATE is used. Available values: ADD, ADD_OR_UPDATE, DELETE, UPDATE |
Example Value
[
{
"created": "2023-12-14T13:57:12.105Z",
"createdBy": "string",
"updated": "2023-12-14T13:57:12.105Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
]
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-94 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Responses
This section describes the responses of the Performs a Bulk Action using a Collection of Webhook API.
Response Code: 200
The result of the loading operation.
The media type is application/json.
Schema — Bulk Operation Result
The following table describes the elements of a Bulk Operation, describing the result of a bulk operation.
Table 4-95 Bulk Operation Result — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
errorRecords | NA | object | A list of ErrorRecord objects describing any records which were not successfully processed. |
successCount | NA | integer($int32) | The count of the records which were successfully processed. |
The following table describes an object describing an error which occurred during a bulk operation.
Table 4-96 Error Record— Object
Element Name | Required | Data Type | Description |
---|---|---|---|
index | NA | integer($int32) | The 0-based index of the associated record which was not processed. |
error | NA | string | An enumeration describing the result of a bulk action which
was not successfully completed.
|
Response Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
For more information about the Mapper Error Data schema, see the Schema — Mapper Error Data section.
Queries for Webhook Records/Count — GET
This section describes the Queries for Webhook Records/Count API. This API returns a count of records matching the provided criteria.
Request
This section describes the request parameters.
Table 4-97 Queries for Webhook Records/Count — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where | NA | object (query) | A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, i.e. a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example {"child.name":"Jo"} would match Joe, John, and so on. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
Get a Webhook — GET
This section describes the Get a Webhook API.
Request
This section describes the request parameters.
Table 4-98 Get a Webhook— Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | yes | integer($int64) (path) | ID |
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
Responses
This section describes responses of the Get a Webhook API.
Response Code: 200
The requested record.
The media type is applicaton/json.
Example Value
{
"created": "2024-06-05T08:47:32.184Z",
"createdBy": "string",
"updated": "2024-06-05T08:47:32.184Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-99 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Update a Webhook — PUT
This section describes the Update a Webhook API.
Request
This section describes the request parameters.
The request body is application/json.
Table 4-100 Update a Webhook— Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | yes | integer($int64) (path) | ID |
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
Example Value
{
"created": "2023-12-15T11:08:18.908Z",
"createdBy": "string",
"updated": "2023-12-15T11:08:18.908Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-101 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Responses
This section describes the responses of the Update a Webhook API.
Reason Code: 200
The updated record.
The media type application/json.
Example Value
{
"created": "2023-12-15T11:08:18.966Z",
"createdBy": "string",
"updated": "2023-12-15T11:08:18.966Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-102 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Reason Code: 400
The specified ID is not consistent with the provided record, or the provided record is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-103 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-104 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Delete a Webhook — DELETE
This section describes the Delete a Webhook API.
Checks If a Webhook Exists — HEAD
This section describes the Checks if a Webhook Exists API.
Queries for Webhook Records By Attributes — GET
This section describes the Queries for Webhook Records API. This API returns a list of records matching the provided attributes.
Request
This section describes the request parameters.
Table 4-107 Queries for Webhook Records By Attributes — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | NA | integer($int64) (path) | ID |
credentialId | NA | string (query) | credential ID |
description | NA | string (query) | description |
url | NA | string (query) | URL |
webhookId | NA | string (query) | webhook ID |
webhookType | NA | string (query) | webhook type; Available values: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
orderBy | NA | string (query) | A comma-delimited list of fields used to determine result ordering or a JSON array of complex sorting criteria. When supplied as strings, names are provided in the same format as the where argument - optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON array, a String fieldName field must be included in the object. Optional String order (asc or desc) and boolean caseInsensitive fields may also be provided. |
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
limit | NA | integer ($int32) (query) | Provides a maximum number of records to be returned. |
offset | NA | integer ($int32) (query) | Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the responses of the Queries for Webhook Records By Attributes API.
Response Code: 200
The requested record exists.
The media type is application/json.
Example Value
[
{
"created": "2023-12-19T13:41:32.765Z",
"createdBy": "string",
"updated": "2023-12-19T13:41:32.765Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
]
Schema — Webhook
The following table describes the elements of a webhook used to send delivery status notifications to an external service.
Table 4-108 Webhook — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
created | NA | string($date-time) | The timestamp at which the record was created. |
createdBy | NA | string | The identity of the user who created the record. |
updated | NA | string($date-time) | The timestamp at which the record was last updated. |
updatedBy | NA | string | The identity of the user who last updated the record. |
id | NA | integer($int64) | ID |
credentialId | Yes | string(32) | The credential ID. |
description | NA | string(256) | The webhook description, if one has been defined. |
url | Yes | string(1024) | The URL for the webhook. |
webhookId | Yes | string(32) | The webhook ID. Webhook IDs must contain only letters, numbers, and underscores. |
webhookType | Yes | string | Enum: STATUS_NOTIFICATION_V1, STATUS_NOTIFICATION_V2 |
Data Retention Configuration Service
This section describes the Data Retention Configuration Service.
Add a New DataRetentionConfig — POST
This section describes the Add a New DataRetentionConfig API.
Request
This section describes the request parameters.
The request body is application/json.
The ModelField is null.
Table 4-109 Add a New DataRetentionConfig — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
expands | NA | string (query) | A comma-delimited
list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child" , and its child relationship named "line" ), on the resulting model which should be included in the response
or "all" if all associated relationships should be
included.
|
Example Value
{
"created": "2024-06-05T06:49:20.451Z",
"createdBy": "string",
"updated": "2024-06-05T06:49:20.451Z",
"updatedBy": "string",
"id": <id>,
"dataType": "DELIVERY",
"days": 99999999,
"triggerHour": 23
}
Schema — DataRetention Configuration
The following table describes the elements of a configuration value used to determine retention for a piece of information.
Table 4-110 Schema — DataRetention Configuration
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
dataType |
Yes |
string |
The type of retained data. Enum: DELIVERY, QUOTE |
days |
NA |
integer($int32) |
The number of days to retain data of the assigned type. |
triggerHour |
Yes |
integer($int32) |
The hour each day, in UTC, when retained data beyond the retention interval should be removed. |
Responses
This section describes the responses of the Add a New DataRetention Configuration API.
Reason Code: 200
The new record.
The media type is application/json.
Example Value
{
"created": "2024-06-05T06:49:20.454Z",
"createdBy": "string",
"updated": "2024-06-05T06:49:20.454Z",
"updatedBy": "string",
"id": <id>,
"dataType": "DELIVERY",
"days": 99999999,
"triggerHour": 23
}
Schema — DataRetention Configuration
The following table describes the elements of a configuration value used to determine retention for a piece of information.
Table 4-111 Schema — DataRetention Configuration
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
dataType |
Yes |
string |
The type of retained data. Enum: DELIVERY, QUOTE |
days |
NA |
integer($int32) |
The number of days to retain data of the assigned type. |
triggerHour |
Yes |
integer($int32) |
The hour each day, in UTC, when retained data beyond the retention interval should be removed. |
Reason Code: 400
The provided input is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-112 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-113 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Queries for DataRetention Configuration Records — GET
This section describes the Queries for DataRetention Configuration Records API. This API returns a list of records matching the provided criteria.
Request
This section describes the request parameters.
Table 4-114 Queries for DataRetention Configuration Records — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where | NA | object (query) | A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, that is a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example {"child.name":"Jo"} would match Joe, John, and so on. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
orderBy | NA | string (query) | A comma-delimited list of fields used to determine result ordering or a JSON array of complex sorting criteria. When supplied as strings, names are provided in the same format as the where argument - optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON array, a String fieldName field must be included in the object. Optional String order (asc or desc) and boolean caseInsensitive fields may also be provided. |
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
limit | NA | integer($int32) (query) | Provides a maximum number of records to be returned. |
offset | NA | integer($int32) (query) | Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the responses of the Queries for DataRetention Configuration Records API.
Response Code: 200
The requested records.
The media type is application/json.
Example Value
[
{
"created": "2023-12-14T13:29:34.113Z",
"createdBy": "string",
"updated": "2023-12-14T13:29:34.113Z",
"updatedBy": "string",
"id": <id>,
"credentialId": "string",
"description": "string",
"url": "string",
"webhookId": "string",
"webhookType": "STATUS_NOTIFICATION_V1"
}
]
Schema — DataRetention Configuration
The following table describes the elements of a configuration value used to determine retention for a piece of information.
Table 4-115 Schema — DataRetention Configuration
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
dataType |
Yes |
string |
The type of retained data. Enum: DELIVERY, QUOTE |
days |
NA |
integer($int32) |
The number of days to retain data of the assigned type. |
triggerHour |
Yes |
integer($int32) |
The hour each day, in UTC, when retained data beyond the retention interval should be removed. |
Queries for DataRetention Configuration Records/Count — GET
This section describes the Queries for DataRetention Configuration Records/Count API. This API returns a count of records matching the provided criteria.
Request
This section describes the request parameters.
Table 4-116 Queries for DataRetention Configuration Records/Count — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
where | NA | object (query) | A JSON object containing query parameters for filtering results. Fields to be filtered on may be provided in the form of a dot-notated path named for the fields known to this resource, i.e. a delimited field named "child.id" would filter by the entity field of this resource named "child" and that entity has a field named "id". Querying is supported in 3 ways. If a single value is provided, it is treated as a baseline. If the single value is a character type, then the value is used as the basis for a "like" or startsWith-type comparison, for example {"child.name":"Jo"} would match Joe, John, and so on. For all other types, it serves as the lower bound of a >= comparison, {"minAmount":100.00}. If an array is provided, the values within it are treated as "equals" or "in" values depending upon the element count, for example {"id":[1, 2, 3]}. If an object is provided, fields named "from" and "to" within the object, will serve as lower and/or upper bounds for a range-based query, for example {"id":{"from":0,"to":100}}, a field named "singleValue" can be used to follow the single value pattern discussed above, a field named "in" can be used to follow the array pattern discussed above, or a field named "fieldPath" can be used to specify the path of a related field. Additionally, a field named "caseInsensitive" can be used to enable case-insensitive querying of character-based fields and a field named "invert" can be used to invert a predicate (that is as a NOT). Combining of criteria in "and" and "or" blocks is supported by providing specially named properties with names beginning with '"@and"' and '"@or"' with JSON object values. These can be used directly within the body for criteria grouping purposes, and also nested within each other. When using multiple @and/@or groupings within a given object, take care to suffix them with additional characters (that is '"@and1"', '"@and2"', and so on) to ensure that they are uniquely named since any duplicates will be eliminated. |
Get a DataRetention Configuration — GET
This section describes the Get a DataRetention Configuration API.
Request
This section describes the request parameters.
Table 4-117 Get a DataRetention Configuration — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | yes | integer($int64) (path) | ID |
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
Responses
This section describes responses of the Get a DataRetention Configuration API.
Response Code: 200
The requested record.
The media type is applicaton/json.
Example Value
{
"created": "2024-06-05T08:06:57.246Z",
"createdBy": "string",
"updated": "2024-06-05T08:06:57.246Z",
"updatedBy": "string",
"id": <id>,
"dataType": "DELIVERY",
"days": 99999999,
"triggerHour": 23
}
Schema — DataRetention Configuration
The following table describes the elements of a configuration value used to determine retention for a piece of information.
Table 4-118 Schema — DataRetention Configuration
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
dataType |
Yes |
string |
The type of retained data. Enum: DELIVERY, QUOTE |
days |
NA |
integer($int32) |
The number of days to retain data of the assigned type. |
triggerHour |
Yes |
integer($int32) |
The hour each day, in UTC, when retained data beyond the retention interval should be removed. |
Update a DataRetention Configuration — PUT
This section describes the Update a DataRetention Configuration API.
Request
This section describes the request parameters.
The request body is application/json.
Table 4-119 Update a DataRetention Configuration — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | yes | integer($int64) (path) | ID |
expands | NA | string (query) | A comma-delimited list of relationship paths, in dot-notated path form (that is "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
Example Value
{
"created": "2024-06-05T08:50:00.771Z",
"createdBy": "string",
"updated": "2024-06-05T08:50:00.771Z",
"updatedBy": "string",
"id": <id>,
"dataType": "DELIVERY",
"days": 99999999,
"triggerHour": 23
}
Schema — DataRetention Configuration
The following table describes the elements of a configuration value used to determine retention for a piece of information.
Table 4-120 Schema — DataRetention Configuration
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
dataType |
Yes |
string |
The type of retained data. Enum: DELIVERY, QUOTE |
days |
NA |
integer($int32) |
The number of days to retain data of the assigned type. |
triggerHour |
Yes |
integer($int32) |
The hour each day, in UTC, when retained data beyond the retention interval should be removed. |
Responses
This section describes the responses of the Update a DataRetention Configuration API.
Reason Code: 200
The updated record.
The media type application/json.
Example Value
{
"created": "2024-06-05T08:50:00.773Z",
"createdBy": "string",
"updated": "2024-06-05T08:50:00.773Z",
"updatedBy": "string",
"id": <id>,
"dataType": "DELIVERY",
"days": 99999999,
"triggerHour": 23
}
Schema — DataRetention Configuration
The following table describes the elements of a configuration value used to determine retention for a piece of information.
Table 4-121 Schema — DataRetention Configuration
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
dataType |
Yes |
string |
The type of retained data. Enum: DELIVERY, QUOTE |
days |
NA |
integer($int32) |
The number of days to retain data of the assigned type. |
triggerHour |
Yes |
integer($int32) |
The hour each day, in UTC, when retained data beyond the retention interval should be removed. |
Reason Code: 400
The specified ID is not consistent with the provided record, or the provided record is invalid.
The media type is application/json.
Example Value
[
{
"column": 0,
"line": 0,
"errorCode": 0,
"errorMessage": "string",
"moreInfo": {
"code": "string",
"description": "string"
},
"field": "string",
"value": "string",
"errorType": "INTEGRATION"
}
]
Schema — Mapper Error Data
The table below describes the elements of the Mapper Error Data object.
Table 4-122 Mapper Error Data — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
column |
NA |
integer <int32> |
The JSON file column number the error occurred on if known |
line |
NA |
integer <int32> |
The JSON file line number the error occurred on if known |
errorCode |
NA |
integer <int32> |
A numeric identifier for the type of error |
errorMessage |
NA |
string |
The unlocalized error message |
moreInfo |
NA |
object |
Additional information pertaining to the error |
field |
NA |
string |
The field. This is the last part of the path |
value |
NA |
string |
The JSON value that caused the error if known |
errorType |
NA |
string |
enum: INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION An enumeration of specific known error types. |
The following table describes the elements of the additional information pertaining to the error.
Table 4-123 More Info — Object
Element Name | Required | Data Type | Description |
---|---|---|---|
code |
NA |
string |
A code describing the error. |
description |
NA |
string |
An unlocalizable description describing the error. |
Delete a DataRetention Configuration — DELETE
This section describes the Delete a DataRetention Configuration API.
Checks If a DataRetention Configuration Exists — HEAD
This section describes the Checks if a DataRetention Configuration Exists API.
Request
This section describes the request parameters.
Table 4-125 Checks if a DataRetention Configuration Exists — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id | yes | integer($int64) (path) | ID |
Queries for DataRetention Configuration Records By Attributes — GET
This section describes the Queries for DataRetention Configuration Records API. This API returns a list of records matching the provided attributes.
Request
This section describes the request parameters.
Table 4-126 Queries for DataRetention Configuration Records By Attributes — Request Parameters
Parameter | Required | Data Type | Description |
---|---|---|---|
id |
NA |
integer($int64) (query) |
ID |
datatype |
NA |
string (query) |
Available values : DELIVERY, QUOTE |
days |
NA |
integer($int32) (query) |
days |
triggerHour |
NA |
integer($int32) (query) |
trigger hour |
orderBy |
NA |
string (query) |
A comma-delimited list of fields used to determine result ordering or a JSON array of complex sorting criteria. When supplied as strings, names are provided in the same format as the where argument - optionally followed by "asc" (default) or "desc" to control order direction. When supplied as a JSON array, a String fieldName field must be included in the object. Optional String order (asc or desc) and boolean caseInsensitive fields may also be provided. |
expands |
NA |
string (query) |
A comma-delimited list of relationship paths, in dot-notated path form (i.e. "child.line" would return the relationship named "child", and its child relationship named "line"), on the resulting model which should be included in the response or "all" if all associated relationships should be included. |
limit |
NA |
integer($int32) (query) |
Provides a maximum number of records to be returned. |
offset |
NA |
integer($int32) (query) |
Provides the zero-based value for the position of the first value to be returned. |
Responses
This section describes the responses of the Queries for DataRetention Configuration Records By Attributes API.
Response Code: 200
The requested record.
The media type is application/json.
Example Value
[
{
"created": "2024-06-05T09:43:29.656Z",
"createdBy": "string",
"updated": "2024-06-05T09:43:29.656Z",
"updatedBy": "string",
"id": <id>,
"dataType": "DELIVERY",
"days": 99999999,
"triggerHour": 23
}
]
Schema — DataRetention Configuration
The following table describes the elements of a configuration value used to determine retention for a piece of information.
Table 4-127 Schema — DataRetention Configuration
Element Name | Required | Data Type | Description |
---|---|---|---|
created |
NA |
string($date-time) |
The timestamp at which the record was created. |
createdBy |
NA |
string |
The identity of the user who created the record. |
updated |
NA |
string($date-time) |
The timestamp at which the record was last updated. |
updatedBy |
NA |
string |
The identity of the user who last updated the record. |
id |
NA |
integer($int64) |
ID |
dataType |
Yes |
string |
The type of retained data. Enum: DELIVERY, QUOTE |
days |
NA |
integer($int32) |
The number of days to retain data of the assigned type. |
triggerHour |
Yes |
integer($int32) |
The hour each day, in UTC, when retained data beyond the retention interval should be removed. |
Error Handling
When limits have been specified on fields, they are enforced on models and service models that are accepted by the application. When a limit is defined, it may be enforced via Java Bean Validation annotations or by the database itself.
Bean Validations
Limits enforced on fields, which violated, result in a response containing a list of "MapperErrorData" objects. These objects include:
-
If defined, an error code
-
An error message
-
If appropriate, the value associated with the error
-
If appropriate, the name of the field associated with the error
-
The type of the error, which will be VALIDATION (an enumerated value) in this case
Error Representation
Errors related to validation conditions are always represented to the user as an HTTP 400 including an array of one or more MapperErrorData objects. MapperErrorData objects include the following fields:
Table 4-128 Fields — MapperErrorData Objects
Field | Description |
---|---|
column |
Returns the JSON file column number the error occurred on, if known. |
line |
Returns the JSON file line number the error occurred on, if known. |
errorCode |
Returns the application-specific error code associated with the error, if known. |
errorMessage |
Returns the error message (not localized). |
field |
Returns an identifier of the associated field if known. This will be a path within a provided object, or some other field identifier. |
value |
Returns the JSON value that caused the error if known. |
errorType |
Return the error type. (one of INTEGRATION, INTERNAL, MAPPING, PARSING, VALIDATION) |
targetType |
Returns the type the system expected the JSON node to be, if known. |
Error Codes
-
100 - Add entity was null.
-
101 - Add entity must not include an ID.
-
102 - <0> already exists.
-
103 - Related entity was not found.
-
104 - A constraint violation occurred on this, or a descendant, entity.
-
105 - Add request <0> ID must be greater than zero.
-
106 - <0> parent was not found.
-
107 - Child could not be added to <0>.
-
108 - <0> was not found.
-
109 - Bulk request was null.
-
110 - This endpoint accepts, at most, 1000 records.
-
111 - A limit must be specified when specifying an offset.
-
112 - Update entity was null.
-
113 - Update request ID does not match entity ID.
-
114 - Delete failed due to dependent data.
-
115 - Persist failed due to conflict on <0>.
-
116 - Update failed due to conflict on <0>.
-
117 - JSON parameter <0> does not match a field definition for entity.
-
118 - OrderBy parameter <0> does not match a field definition for entity.
-
119 - OrderBy order <0> is not valid.
-
120 - Unable to delete. At least one <0> is required.
-
199 - An error occurred during persistence.
-
200 - A JSON mapping error occurred.
-
201 - A JSON parsing error occurred.
-
202 - A validation error occurred.
-
203 - An invalid value was specified.
-
999 - Failed
Collect and Receive Error Codes
-
1000 - Request could not be accepted as provided. (HTTP 400)
-
1002 - Request was not authorized. (HTTP 401)
-
1003 - A resource could not be found. (HTTP 404)
-
1004 - Too many requests have been submitted. (HTTP 429)
-
1005 - A server error occurred. (HTTP 500)
-
1006 - Service was unavailable. (HTTP 503)
-
1007 - Invalid or Missing Address
-
1008 - Invalid Pickup Time
-
1009 - Invalid Dropoff Time
-
1010 - Insufficient Couriers
-
1011 - Invalid Quote
-
1012 - Account Error
-
1013 - Request Timeout
-
1014 - Duplicate Delivery
-
1015 - Account not found
-
1016 - The entity was not in a status compatible with the requested action.
-
1017 - The delivery can not be canceled.
-
1018 - Delivery not found.