Dispatch Order

DispatchOrders allow ordering courier to collect shipments from the client.

Each DispatchOrder has status, which describing it's state. Available statuses:

  • new - new order, which is not yet passed to execution

  • sent - order is passed to execution, but is not yet accepted


Structure

DispatchOrder resource has the following attributes:

Attribute

Type

Description

Attribute

Type

Description

id

String

ID number (read-only)

status

String

Order status

created_at

DateTime

Timestamp describing when order was created

address

Address

Address, where courier will take over shipments

shipments

Array[Shipment]

Array of shipments that will be taken by the courier. Required Shipment attributes:

  • href - shipment's url address

  • id - shipment's id

  • tracking_number - shipment's tracking number

comment 

String

Optional comments for the DispatchOrder

Example of DispatchOrder resource in JSON format:

{ "href": "https://api-shipx-pl.easypack24.net/v1/dispatch_orders/1", "id": 1, "status": "sent", "address": { "id": "123", "street": "Tottenham Court Road", "building_number": "14", "post_code": "W1T 1JY", "city": "London", "country_code": "GB" }, "shipments": [ { "href": "https://api-shipx-pl.easypack24.net/v1/shipments/8", "id": 8, "tracking_number": "622111081631876319900026" } ], "comments": [ { "24",  "comment": "Some Test Comment", "created_at": "2018-02-14T11:37:07.852+01:00" } ], "created_at": "2018-02-14T11:37:07.843+01:00", "updated_at": "2018-02-14T11:37:08.340+01:00" }

 

Authorization

Resource require providing correct access token.


 

Creating new DispatchOrder

 

DispatchOrder for specific address

Generating of DispatchOrder require providing correct address using address attribute.

Using data from address, algorithm is calculating checksum, so it is very important to provide correct address without typos etc.

Later, this checksum is used to determine if this DispatchPoint is already registered in our database. If not, a new DispatchPoint is generated (only for locker's shipments).

Next, DispatchPoint found or generated this way is assigned to DispatchOrder for the courier, allowing order execution.

Asynchronous operation, to get the order number use Dispatch Order | DispatchOrder details, the order number is in the "external_id" parameter.

 

Warning! Debit clients

We are not showing prices after creation of DispatchOrder, for debit clients.

price attribute will be returned as null.



POST /v1/organizations/:organization_id/dispatch_orders

Available parameters:

Parameter

Type

Description

Validation

Parameter

Type

Description

Validation

shipments

Array

List of shipments ids, for which DispatchOrder is being generated.

 

 

Attribute is required.

  • Shipments must be in confirmed status and can't be assigned to any other DispatchOrder

  • These must be shipments created using the InPost parcel lockers services or only using the InPost Courier services.

comment

String

Optional comment

The attribute is not required for creating DispatchOrder.

But is required when DispatchOrder is updated.

address

Address

Address of pick-up point (DispatchPoint)

Attribute is required.

office_hours

String

Describing time when DispatchPoint is available for picking up shipments.

Attribute is not required.

name 

String

Name used for generating new DispatchPoint in our database.

Attribute is required.

phone

String

Phone number used for generating DispatchPoint.

Attribute is required.

email 

String

Email address used for generating DispatchPoint.

Attribute is not required.

Example request:

curl -X POST https://api-shipx-pl.easypack24.net/v1/organizations/1/dispatch_orders -H 'Authorization: Bearer token' -H 'Content-Type: application/json' -d '{ "shipments": ["1", "2"], "comment": "Dowolny komentarz do zlecenia odbioru", "name": "Przykładowa nazwa DispatchPoint", "phone": "505404202", "email": "sample@email.com", "address": { "street": "Malborska", "building_number": "130", "city": "Krakow", "post_code": "31-209", "country_code": "PL" } }'

Example response

 

Possible Errors

  • validation_failed - provided data are incorrect, e.g DispatchPoint not exist or one of shipments is in incorrect status

  • invalid_range - invalid shipment id, e.g range of the id is not matching Integer type

  • dispatch_point_and_address_cannot_be_mixed - address and dispatch_point_id can't be provided at the same time 

  • already_dispatched - means that an order has been created for at least one shipment indicated in the request

  • various_types_of_carrie - means that at least one shipment is of a different service category. These must be shipments created using the InPost parcel lockers services or only using the InPost Courier services.


 

DispatchOrders list


DispatchOrders list for specific organization can be accessed by using this endpoint:

Example request:

Example response:

 


 

DispatchOrder details

Example request

Example response


 

Deleting Dispatch Orders

Dispatch order Can be deleted in the following statuses only: new, sent 

Example request

Response

 


 

Creating Dispatch Order comment

When creating a dispatch order, we allow adding additional comments.

Additionally, we allow creating a comment for an already existing Dispatch Order. 

Request example

Response


 

Editing Dispatch Order comments

When creating a dispatch order, we allow adding additional comments.

Additionally, we allow editing a comment for an already existing Dispatch Order. 

Request example

Response

 


 

Deleting Dispatch Order comment

We allow deleting a comment for an already existing Dispatch Order.

Request example

Response