Back to top

API Documentation

Overview

Tiramizoo has 2 APIs:

  1. Order creation API (this document) This API can be used to create/upload new orders (either for tour or for point to point) and check the status of orders. It also can be used to display all service areas and time windows of the relevant process.

  2. Courier API (https://dev.tiramizoo.com/courier-api-doc/) The Courier API is used by our app and therefore has all functionality of the app. It provides the courier driver his tours/offers and enables him to change the status of a stop (delivered, picked up, upload signature, error, …). You only need to implement this API if your couriers are using your own and not the tiramizoo driver app.

You can easily connect tiramizoo to your platform by programming against the corresponding REST/JSON API.

Please use sandbox.tiramizoo.com for testing purposes. It’s a full copy of the production environment.

The tiramizoo.com API uses the HTTPS protocol for communication and JSON for serialization of request and response bodies.
All URLs start with https://app.tiramizoo.com/api/v1.
SSL is mandatory.

Any programming language used in a web development context will usually feature libraries for conveniently accessing a restful JSON web service.
So do PHP, Ruby, Java, .Net and Python to name only a few.
Integrating restful JSON services usually is also much faster and easier than working with SOAP and other XML based or stateful services.

If you encounter a problem when using the API, please let us know.

API Tokens

You will need an API token for accessing the API. The API token on the sandbox and production systems is different – please contact your sales person to get them or login to your tiramizoo staff interface to access them.

Versioning

All API urls have to be prefixed with the API version, e.g. /v1/orders.

Authentication

Some API calls require authentication with an API token. We accept API tokens as an URL param named api_token or Api-Token header.
You must keep the API token secret.

You can always request a new API token.
In case of providing a wrong token, an 401 Unauthorized response will be returned.

Making Requests

Text payloads are supported only as UTF-8-encoded.

Error Codes & Responses

200 OK

The request succeeded.

201 Created

The resource was created.

204 No Content

The request has been processed and no content was returned.

400 Bad Request

The request was not valid. The request may be incorrect, or the data in the request is not in the correct format. Check the message details for more information concerning the bad request, correct the request data, and try the invocation again.

401 Unauthorized

The user is not authorized to access the requested resource.

403 Forbidden

The user is not granted to access the requested resource.

404 Not Found

The requested resource was not found or no corresponding data available.

405 Method Not Allowed

parameter or verb not supported.

406 Not Acceptable

Request of a format that is currently not supported.

422 Unprocessable Entity

Data supplied is not valid. See detailed errors in the response.

500 Internal Server Error

Server encountered an unexpected condition which prevented it from processing the request.

503 Service Unavailable

Application is offline for maintenance.

504 Gateway Timeout

The request couldn’t complete in time. Tiramizoo waits up to 25 seconds for a response. Try breaking it down in multiple smaller requests.

Orders

Order states

Order states

  • created - order is being processed by tiramizoo system

  • dispatched - courier has received order information

  • picked_up - order has been picked up from pickup address

  • pickup_failed - courier went to pickup location but couldn’t complete pickup up

    The reason could be one of (event type):

    • package_was_not_ready
    • sender_wants_to_cancel
    • sender_was_not_at_home
    • wrong_package_size
  • delivered - order has been delivered to delivery address

  • delivery_failed - courier went to delivery location but couldn’t deliver

    The reason could be one of (event type):

    • abort_delivery
    • address_not_found
    • failed_due_to_business_closed
    • name_not_found_on_doorbell
    • no_attempt_due_to_being_late
    • not_enough_money_for_payment
    • package_is_damaged
    • package_was_delivered_too_late
    • package_was_not_accepted
    • package_was_not_ordered
    • recipient_was_not_at_home
  • returned - courier returned delivery to pickup location

  • cancelled - order has been cancelled before courier started to process a delivery

  • created_at, dispatched_at, picked_up_at, pickup_failed_at, delivered_at, delivery_failed_at, returned_at, cancelled_at - timestamps for each state. When not present order hasn’t reached state yet.

  • To get a reason of pickup_failed or delivery_failed state please investigate type or order history parameter which contain details

"history": [
  {
    "retry_at": null,
    "type": "pick_up",
    "recorded_at": "2017-05-09T19:29:25+02:00",
    "signature": {
      "url": null,
      "name": null
    },
    DEPRECATED "photo_proof": {
      "url": null,
      "name": null
      },
    "photo_proofs": {
      "name": null,
      "urls": [http://sandbox.tiramizoo.com/courier_api/v1/signatures/16e813d2-e054-4901-8b06-b8f7102f10fb.png]
    },
    "current_state": "picked_up"
  },
  {
    "retry_at": null,
    "type": "recipient_was_not_at_home",
    "recorded_at": "2017-05-09T20:05:00+02:00",
    "signature": {
      "url": null,
      "name": null
    },
    DEPRECATED "photo_proof": {
      "url": null,
      "name": null
      },
    "photo_proofs": {
      "name": null,
      "urls": [http://sandbox.tiramizoo.com/api/v1/photo_proof_images/16.png?photo_proof_id=ecfeb829-1a64-4a36-af85-f687805b9e62]
    },

    "current_state": "delivery_failed"
  }
]

The orders API provides a simple and quick way of order creation.
You need to specify the time when delivery should take place by giving a time window with before and after.

All requests require authentication (valid API_TOKEN More )

List Orders

List Orders
GET/orders{?api_token,external_id,page,per_page,from}

Example URI

GET https://sandbox.tiramizoo.com/api/v1/orders?api_token=jksdorj23hh&external_id=ABH78H&page=1&per_page=10&from=2012-01-05T11:45:34Z
URI Parameters
HideShow
api_token
string (required) Example: jksdorj23hh

authentication token

external_id
string (optional) Example: ABH78H

custom id that enables connecting tiramizoo orders with your internal infrastructure. This id does not need to be unique and can have variable length.

page
number (optional) Example: 1

page number, by default first page is returned.

per_page
number (optional) Example: 10

orders per page, by default 100 records are returned. Max number allowed is 100.

from
string (optional) Example: 2012-01-05T11:45:34Z

filters orders by parameter created_at later than provided

Request
HideShow
Headers
Content-Type: application/json
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "orders": [
    {
      "uuid": "4b77df71-41d8-4f6b-8981-20ab563ab38f",
      "courier_information": "go go go; now now now",
      "external_id": "0QFKXQ",
      "secondary_external_id": null,
      "web_hook_url": null,
      "hazard_index": 0,
      "identifier": "FMMECN",
      "timezone": "Europe/Berlin",
      "state": "created",
      "delivery_type": "standard",
      "created_at": "2018-01-05T13:45:34+01:00",
      "dispatched_at": null,
      "picked_up_at": null,
      "pickup_failed_at": null,
      "delivered_to": null,
      "delivered_at": null,
      "delivery_failed_at": null,
      "returned_at": null,
      "cancelled_at": null,
      "cancellation_reason": null,
      "tracking_url": "http://app.tiramizoo.local/orders/WCZFWILZ8JWQM/tracking_status?locale=en",
      "tracking_code": "WCZFW-ILZ8-JWQM",
      "cancellable": false,
      "pickup": {
        "name": "I.P. Freely",
        "phone_number": "30049223333",
        "email": null,
        "address_line": "Im Dol 2",
        "city": "Berlin",
        "postal_code": "14195",
        "country_code": "de",
        "after": "2012-04-16T07:00:00+02:00",
        "before": "2012-04-16T07:30:00+02:00",
        "requirements": [],
        "information": "go go go",
        "eta": null,
        "allowed_delay": 0,
        "contact_identifier": null
      },
      "delivery": {
        "name": "Mike Rotch",
        "phone_number": "30049224444",
        "email": null,
        "address_line": "Im Dol 48",
        "city": "Berlin",
        "postal_code": "14195",
        "country_code": "de",
        "after": "2012-04-16T07:30:00+02:00",
        "before": "2012-04-16T09:00:00+02:00",
        "time_window_label": null,
        "requirements": [],
        "information": "now now now",
        "eta": null,
        "allowed_delay": 0,
        "contact_identifier": null
      },
      "packages": [
        {
          "width": 10,
          "height": 20,
          "length": 30,
          "weight": 5,
          "quantity": 1,
          "description": "A fish",
          "category": null,
          "identifier": "567FC04DB2CA3B9E",
          "unpackable": false,
          "non_rotatable": false,
          "external_id": null,
          "barcode": {
            "symbology": "QR Code",
            "data": "567FC04DB2CA3B9E",
            "url": "http://app.tiramizoo.local/api/v1/barcodes/567FC04DB2CA3B9E.png"
          },
          "state": "pending",
          "custom_data": {}
        }
      ],
      "signature": {
        "url": null,
        "name": null
      },
      "labels_url": "http://app.tiramizoo.local/orders/WCZFWILZ8JWQM/labels.pdf",
      "events": [],
      "history": [],
      "tour_identifier": null,
      "courier_identifier": null,
      "courier_name": null,
      "courier_company_identifier": null,
      "courier_company_name": null,
      "vehicle": null
    }
  ],
  "meta": {
    "page": 1,
    "total_pages": 1,
    "per_page": 10
  }
}

Order

Create Order
POST/orders{?api_token}


Attribute name Type Required Description Available types:
delivery_type string More
hazard_index number dangerous goods carriage index, More
web_hook_url string URL to be notified when the order's state changes.
Please check the WebHooks
to learn more about web hooks.
external_id string Custom id that enables connecting tiramizoo orders with your internal infrastructure.
This id needs to be unique and can have
variable length (max length: 255 chars)
secondary_external_id string Custom secondary id that enables connecting tiramizoo orders with your internal infrastructure.
This id needs to be unique and can have
variable length (max length: 255 chars)
pickup: object Pickup data
name string X Sender's name
email string Sender's email address
address_line string X Sender's address
country_code string X Sender's country code
postal_code string X Sender's postal code
city string Mandatory only if params lat & lng are present Sender's city
lat decimal Sender's latitiude
lng decimal Sender's longitude
phone_number string Sender's phone number
after string Mandatory only if param 'delivery_type' is not present Pickup after
before string Mandatory only if param 'delivery_type' is not present Pickup before
information string Pickup information for a courier
service_time string Additional service time
contact_identifier string ***
requirements: array Requirements to be performed on pickup
type string X Requirement type
  • age
    Use if age verification of sender
    is required.
  • security_code
    Use if courier has to authorize
    by security code.
  • loading_assistance
    Use if loading assistance is required.
    Doesn't have a value parameter.
  • custom
    Use for custom requirements.
  • signature
    Use if signature is required on pickup.
    Doesn't have a value parameter.
  • external_identifier_scanning
    Use if scanning is required.
  • dedicated_delivery
    Use if this order can be the only one loaded in the vehicle at a given time.
  • courier
    Use if concrete courier should be assigned to given order. Value should be an identifier of the courier.
  • courier_requirements
    Use if you want a courier with particular skill to handle the order. The skill must be one of those defined in the 'Activate custom named requirements' process feature.
value string Value for requirement.
delivery: object Delivery data
name string X Recipient's name
email string Recipient's email address (multiple email addresses can be added, separated by commas)
address_line string X Recipient's address
country_code string X Recipient's country code
postal_code string X Recipient's postal code
city string Mandatory only if params lat & lng are present Recipient's city
lat decimal Recipient's latitiude
lng decimal Recipient's longitude
phone_number string Recipient's phone number
after string Mandatory only if param 'delivery_type' is not present Delivery after
before string Mandatory only if param 'delivery_type' is not present Delivery before
information string Delivery information for a courier
service_time string Additional service time
contact_identifier string ***
requirements: array Requirements to be performed on delivery
type string X Requirement type
  • age
    Use if age verification of recipient
    is required.
  • security_code
    Use if courier has to authorize
    by security code.
  • loading_assistance
    Use if loading assistance is required.
    Doesn't have a value parameter.
  • custom
    Use for custom requirements.
  • signature
    Use if signature is required on delivery.
    Doesn't have a value parameter.
  • external_identifier_scanning
    Use if scanning is required.
  • dedicated_delivery
    Use if this order can be the only one loaded in the vehicle at a given time.
  • recipient_payment_confirmation
    Use if courier should collect payment during delivery.
  • courier_requirements
    Use if you want a courier with particular skill to handle the order. The skill must be one of those defined in the 'Activate custom named requirements' process feature.
value string Value for requirement.
packages: array Order packages
weight number X Package weight
height number X** Package height
width number X** Package width
length number X** Package length
description string Package description
size string X Package size
identifier string X Package identifier
non_rotatable boolean Specify if package can be
rotated/turned around during transport
external_id string Custom id that enables connecting tiramizoo package with your internal infrastructure.
Can have variable length (max length: 255 chars)
pickup_state string Package current state.
Displayed only if account allows courier to cancel package on pickup and load only part of an order.
(feature can cancel package pickup)
  • pending
  • picked_up
  • not_picked_up
volume decimal ** Package volume [m3] (Minimum value: 1cm3)
custom_data json ** Additional information in json format for custom label

delivery.before and delivery.after required date and time defining time window provided as UTC in ISO 8601 format.
Valid values can be retrieved from Service Areas API.
If different values are provided they will be changed to first matching by delivery.before.
Information about the change will be logged in courier_information field.

Quick Delivery

To deliver as fast as possible using standard or express delivery, please set delivery_type parameter.
Possible values are: standard and express.

When delivery_type is set following parameters will be ignored:

  • pickup.after

  • pickup.befor

  • delivery.after

  • delivery.before

**Volume based package input

In case ‘Volume based package input’ feature is enabled

  • package.volume parameter is required

and following parameters for package are not supported:

  • package.height

  • package.length

  • package.width

*** If contact_identifier (Address ID) is provided, the available pick-up and/or delivery times for this address as well as all address information from the address book will be used.

If the Address ID in the contacts address book is the same as the Address ID of the related hub, the hub details will take precedence.

Example URI

POST https://sandbox.tiramizoo.com/api/v1/orders?api_token=jksdorj23hh
URI Parameters
HideShow
api_token
string (required) Example: jksdorj23hh

authentication token

Request  Create Order
HideShow
Headers
Content-Type: application/json
Body
{
  "web_hook_url": "http://api.myshop.com/deliveries/update_state",
  "external_id": "12345",
  "pickup": {
    "name": "I.P. Freely",
    "email": "alice@icealay.de",
    "address_line": "Im Dol 2",
    "country_code": "de",
    "postal_code": "14195",
    "city": "Berlin",
    "phone_number": "+491234567890",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "information": "pickup-instructions",
    "service_time": "3",
    "requirements": [
      {
        "type": "age",
        "value": "20"
      },
      {
        "type": "signature"
      },
      {
        "type": "loading_assistance"
      },
      {
        "type": "dedicated_delivery"
      },
      {
        "type": "external_identifier_scanning",
        "value": "\\A(104[0-9]{13}|Y?1010[0-9]{10})\\z"
      },
      {
        "type": "security_code",
        "value": "ABC734"
      },
      {
        "type": "courier",
        "value": "DB1KWL"
      },
      {
        "type": "custom",
        "value": "Custom requirement message"
      },
      {
        "type": "courier_requirements",
        "value": "some requirement"
      }
    ]
  },
  "delivery": {
    "name": "I.P. Freely",
    "email": "bob@obbay.de",
    "address_line": "Thujaweg 1",
    "country_code": "de",
    "postal_code": "12437",
    "city": "Berlin",
    "phone_number": "30049223333",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "information": "delivery-instructions",
    "service_time": "5",
    "requirements": [
      {
        "type": "age",
        "value": "20"
      },
      {
        "type": "signature"
      },
      {
        "type": "loading_assistance"
      },
      {
        "type": "dedicated_delivery"
      },
      {
        "type": "external_identifier_scanning",
        "value": "\\A(104[0-9]{13}|Y?1010[0-9]{10})\\z"
      },
      {
        "type": "security_code",
        "value": "ABC734"
      },
      {
        "type": "recipient_payment_confirmation",
        "value": "12.3"
      },
      {
        "type": "custom",
        "value": "Custom requirement message"
      },
      {
        "type": "courier_requirements",
        "value": "some requirement"
      }
    ]
  },
  "packages": [
    {
      "weight": 5,
      "height": 20,
      "width": 10,
      "length": 30,
      "description": "A fish",
      "size": "L",
      "identifier": "667C5E8D3523C5A9",
      "external_id:   `some_external_123`": "Hello, world!",
      "non_rotatable": false
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "web_hook_url": {
      "type": "string",
      "description": "an optional parameter with an URL to be notified when the order's state changes. Please check the [WebHooks](#web-hooks) to learn more about web hooks."
    },
    "external_id": {
      "type": "string",
      "description": "an optional parameter with custom id that enables connecting tiramizoo orders with your internal infrastructure. This id needs to be unique and can have variable length. (max length: 255 chars)"
    },
    "pickup": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Sender's name"
        },
        "email": {
          "type": "string",
          "description": "Sender's email"
        },
        "address_line": {
          "type": "string",
          "description": "Sender's address"
        },
        "country_code": {
          "type": "string",
          "description": "Sender's country code"
        },
        "postal_code": {
          "type": "string",
          "description": "Sender's postal code"
        },
        "city": {
          "type": "string",
          "description": "Sender's city"
        },
        "phone_number": {
          "type": "string",
          "description": "Sender's phone number"
        },
        "after": {
          "type": "string",
          "description": "Pickup after"
        },
        "before": {
          "type": "string",
          "description": "Pickup before"
        },
        "information": {
          "type": "string",
          "description": "Pickup information for a courier"
        },
        "service_time": {
          "type": "string",
          "description": "Additional service time"
        },
        "requirements": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "age",
                    "security_code",
                    "loading_assistance",
                    "custom",
                    "signature",
                    "external_identifier_scanning",
                    "dedicated_delivery",
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "Requirement value. `types: loading_assistance, dedicated_delivery and signature` doesn’t have value parameter."
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "signature"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "loading_assistance"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "external_identifier_scanning"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "scanning regex"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "security_code"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "security code"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "courier's identifier"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "custom"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "custom requirement message"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "one of courier's skills defined inside process 'Activate custom named requirements' feature"
                }
              }
            }
          ],
          "description": "Requirements to be performed on pickup"
        }
      },
      "description": "pickup data"
    },
    "delivery": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Recipient's name"
        },
        "email": {
          "type": "string",
          "description": "Recipient's email"
        },
        "address_line": {
          "type": "string",
          "description": "Recipient's address"
        },
        "country_code": {
          "type": "string",
          "description": "Recipient's country code"
        },
        "postal_code": {
          "type": "string",
          "description": "Recipient's postal code"
        },
        "city": {
          "type": "string",
          "description": "Recipient's city"
        },
        "phone_number": {
          "type": "string",
          "description": "Recipient's phone number"
        },
        "after": {
          "type": "string",
          "description": "Delivery after"
        },
        "before": {
          "type": "string",
          "description": "Delivery before"
        },
        "information": {
          "type": "string",
          "description": "Delivery information for a courier"
        },
        "service_time": {
          "type": "string",
          "description": "Additional service time"
        },
        "requirements": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "age",
                    "security_code",
                    "loading_assistance",
                    "custom",
                    "signature",
                    "external_identifier_scanning",
                    "dedicated_delivery",
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "requirement type value. Requirements `type: loading_assistance and signature` doesn’t have value parameter."
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "signature"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "loading_assistance"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "external_identifier_scanning"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "scanning regex"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "security_code"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "security code"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "recipient_payment_confirmation"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "value to be paid"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "custom"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "custom requirement message"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "one of courier's skills defined inside process 'Activate custom named requirements' process feature"
                }
              }
            }
          ],
          "description": "Requirements to be performed on delivery"
        }
      },
      "description": "delivery data"
    },
    "packages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "weight": {
            "type": "number",
            "description": "Package weight"
          },
          "height": {
            "type": "number",
            "description": "Package height"
          },
          "width": {
            "type": "number",
            "description": "Package width"
          },
          "length": {
            "type": "number",
            "description": "Package length"
          },
          "description": {
            "type": "string",
            "description": "Package description"
          },
          "size": {
            "type": "string",
            "description": "Package size"
          },
          "identifier": {
            "type": "string",
            "description": "Package identifier"
          },
          "external_id:   `some_external_123`": {
            "type": "string",
            "description": "Package external id"
          },
          "non_rotatable": {
            "type": "boolean",
            "description": "Specify if package can be rotated during transport"
          }
        }
      },
      "description": "Order packages"
    }
  }
}
Request  Create Order 'Volume based package input'
HideShow
Headers
Content-Type: application/json
Body
{
  "web_hook_url": "http://api.myshop.com/deliveries/update_state",
  "external_id": "12345",
  "pickup": {
    "name": "I.P. Freely",
    "email": "alice@icealay.de",
    "address_line": "Im Dol 2",
    "country_code": "de",
    "postal_code": "14195",
    "city": "Berlin",
    "phone_number": "+491234567890",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "information": "pickup-instructions",
    "service_time": "3",
    "requirements": [
      {
        "type": "age",
        "value": "20"
      },
      {
        "type": "signature"
      },
      {
        "type": "loading_assistance"
      },
      {
        "type": "dedicated_delivery"
      },
      {
        "type": "external_identifier_scanning",
        "value": "\\A(104[0-9]{13}|Y?1010[0-9]{10})\\z"
      },
      {
        "type": "security_code",
        "value": "ABC734"
      },
      {
        "type": "courier",
        "value": "DB1KWL"
      },
      {
        "type": "custom",
        "value": "Custom requirement message"
      }
    ]
  },
  "delivery": {
    "name": "I.P. Freely",
    "email": "bob@obbay.de",
    "address_line": "Thujaweg 1",
    "country_code": "de",
    "postal_code": "12437",
    "city": "Berlin",
    "phone_number": "30049223333",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "information": "delivery-instructions",
    "service_time": "5",
    "requirements": [
      {
        "type": "age",
        "value": "20"
      },
      {
        "type": "signature"
      },
      {
        "type": "loading_assistance"
      },
      {
        "type": "dedicated_delivery"
      },
      {
        "type": "external_identifier_scanning",
        "value": "\\A(104[0-9]{13}|Y?1010[0-9]{10})\\z"
      },
      {
        "type": "security_code",
        "value": "ABC734"
      },
      {
        "type": "recipient_payment_confirmation",
        "value": "12.3"
      },
      {
        "type": "custom",
        "value": "Custom requirement message"
      }
    ]
  },
  "packages": [
    {
      "weight": 5,
      "volume": 0.000001,
      "description": "A fish",
      "size": "L",
      "identifier": "667C5E8D3523C5A9",
      "external_id:   `some_external_123`": "Hello, world!",
      "non_rotatable": false
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "web_hook_url": {
      "type": "string",
      "description": "an optional parameter with an URL to be notified when the order's state changes. Please check the [WebHooks](#web-hooks) to learn more about web hooks."
    },
    "external_id": {
      "type": "string",
      "description": "an optional parameter with custom id that enables connecting tiramizoo orders with your internal infrastructure. This id needs to be unique and can have variable length. (max length: 255 chars)"
    },
    "pickup": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Sender's name"
        },
        "email": {
          "type": "string",
          "description": "Sender's email"
        },
        "address_line": {
          "type": "string",
          "description": "Sender's address"
        },
        "country_code": {
          "type": "string",
          "description": "Sender's country code"
        },
        "postal_code": {
          "type": "string",
          "description": "Sender's postal code"
        },
        "city": {
          "type": "string",
          "description": "Sender's city"
        },
        "phone_number": {
          "type": "string",
          "description": "Sender's phone number"
        },
        "after": {
          "type": "string",
          "description": "Pickup after"
        },
        "before": {
          "type": "string",
          "description": "Pickup before"
        },
        "information": {
          "type": "string",
          "description": "Pickup information for a courier"
        },
        "service_time": {
          "type": "string",
          "description": "Additional service time"
        },
        "requirements": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "age",
                    "security_code",
                    "loading_assistance",
                    "custom",
                    "signature",
                    "external_identifier_scanning",
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "Requirement value. `types: loading_assistance, dedicated_delivery and signature` doesn’t have value parameter."
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "signature"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "loading_assistance"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "external_identifier_scanning"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "scanning regex"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "security_code"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "security code"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "courier's identifier"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "custom"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "custom requirement message"
                }
              }
            }
          ],
          "description": "Requirements to be performed on pickup"
        }
      },
      "description": "pickup data"
    },
    "delivery": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Recipient's name"
        },
        "email": {
          "type": "string",
          "description": "Recipient's email"
        },
        "address_line": {
          "type": "string",
          "description": "Recipient's address"
        },
        "country_code": {
          "type": "string",
          "description": "Recipient's country code"
        },
        "postal_code": {
          "type": "string",
          "description": "Recipient's postal code"
        },
        "city": {
          "type": "string",
          "description": "Recipient's city"
        },
        "phone_number": {
          "type": "string",
          "description": "Recipient's phone number"
        },
        "after": {
          "type": "string",
          "description": "Delivery after"
        },
        "before": {
          "type": "string",
          "description": "Delivery before"
        },
        "information": {
          "type": "string",
          "description": "Delivery information for a courier"
        },
        "service_time": {
          "type": "string",
          "description": "Additional service time"
        },
        "requirements": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "age",
                    "security_code",
                    "loading_assistance",
                    "custom",
                    "signature",
                    "external_identifier_scanning",
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "requirement type value. Requirements `type: loading_assistance, dedicated_delivery and signature` doesn’t have value parameter."
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "signature"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "loading_assistance"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "external_identifier_scanning"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "scanning regex"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "security_code"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "security code"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "recipient_payment_confirmation"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "value to be paid"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "custom"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "custom requirement message"
                }
              }
            }
          ],
          "description": "Requirements to be performed on delivery"
        }
      },
      "description": "delivery data"
    },
    "packages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "weight": {
            "type": "number",
            "description": "Package weight"
          },
          "volume": {
            "type": "number",
            "description": "Package volume"
          },
          "description": {
            "type": "string",
            "description": "Package description"
          },
          "size": {
            "type": "string",
            "description": "Package size"
          },
          "identifier": {
            "type": "string",
            "description": "Package identifier"
          },
          "external_id:   `some_external_123`": {
            "type": "string",
            "description": "Package external id"
          },
          "non_rotatable": {
            "type": "boolean",
            "description": "Specify if package can be rotated during transport"
          }
        }
      },
      "description": "Order packages"
    }
  }
}
Response  201
HideShow

pickup_signature, delivery_signature, return_signature - are optional

Headers
Content-Type: application/json
Body
{
  "uuid": "53b78d27-f07c-448d-9763-cd5d072670ad",
  "courier_information": "pickup-instructions; delivery-instructions",
  "external_id": "external id",
  "secondary_external_id": "Second ID",
  "web_hook_url": "http://api.myshop.com/deliveries/update_state",
  "hazard_index": 10,
  "identifier": "XVCN6W",
  "timezone": "Europe/Berlin",
  "state": "created",
  "delivery_type": "standard",
  "created_at": "2012-04-16T09:00:00+02:00",
  "dispatched_at": null,
  "picked_up_at": null,
  "pickup_failed_at": null,
  "delivered_to": null,
  "delivered_at": null,
  "delivery_failed_at": null,
  "returned_at": null,
  "cancelled_at": null,
  "cancellation_reason": null,
  "tracking_url": "http://app.tiramizoo.local/orders/HSQ973JR7XOFL/tracking_status?locale=en",
  "tracking_code": "HSQ97-3JR7-XOFL",
  "cancellable": true,
  "pickup": {
    "name": "Alice Icealay",
    "phone_number": "+491234567890",
    "email": "alice@icealay.de",
    "address_line": "Im Dol 1",
    "city": "Berlin",
    "postal_code": "14195",
    "country_code": "de",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "requirements": [
      {
        "type": "custom",
        "value": "please knock twice"
      }
    ],
    "information": "pickup-instructions",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "delivery": {
    "name": "Bob Obbay",
    "phone_number": "+490987654321",
    "email": "bob@obbay.de",
    "address_line": "Thujaweg 1",
    "city": "Berlin",
    "postal_code": "12437",
    "country_code": "de",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "time_window_label": null,
    "requirements": [
      {
        "type": "custom",
        "value": "please knock twice"
      },
      {
        "type": "signature"
      }
    ],
    "information": "delivery-instructions",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "packages": [
    {
      "width": 2,
      "height": 8,
      "length": 5,
      "weight": 2,
      "quantity": 1,
      "description": null,
      "category": null,
      "identifier": "21C8FF082F55EB3F",
      "unpackable": false,
      "non_rotatable": false,
      "external_id": null,
      "custom_data": null,
      "barcode": {
        "symbology": "QR Code",
        "data": "21C8FF082F55EB3F",
        "url": "http://app.tiramizoo.local/api/v1/barcodes/21C8FF082F55EB3F.png"
      },
      "state": "pending"
    }
  ],
  "signature": {
    "url": null,
    "name": null
  },
  "labels_url": "http://app.tiramizoo.local/orders/HSQ973JR7XOFL/labels.pdf",
  "events": [],
  "history": [],
  "tour_identifier": null,
  "courier_identifier": null,
  "courier_name": null,
  "courier_company_identifier": null,
  "courier_company_name": null,
  "vehicle": null
}
Response  422
HideShow

422 Validation Error - some of required parameters are missing or
invalid in the request. Please fix parameters and retry the request.

Headers
Content-Type: application/json
Body
{
  "code": "validation_error",
  "message": "validation error",
  "errors": [
    {
      "field": "delivery_name",
      "code": "blank",
      "message": "Delivery name can't be blank"
    }
  ]
}
Response  401
HideShow

Unauthorized request

Request  Quick Delivery
HideShow
Headers
Content-Type: application/json
Body
{
  "delivery_type": "express",
  "web_hook_url": "http://api.myshop.com/deliveries/update_state",
  "external_id": "12345",
  "pickup": {
    "name": "I.P. Freely",
    "email": "alice@icealay.de",
    "address_line": "Im Dol 2",
    "country_code": "de",
    "postal_code": "14195",
    "city": "Berlin",
    "phone_number": "+491234567890",
    "information": "pickup-instructions",
    "requirements": [
      {
        "type": "age",
        "value": "20"
      },
      {
        "type": "signature"
      },
      {
        "type": "loading_assistance"
      },
      {
        "type": "dedicated_delivery"
      },
      {
        "type": "external_identifier_scanning",
        "value": "\\A(104[0-9]{13}|Y?1010[0-9]{10})\\z"
      },
      {
        "type": "security_code",
        "value": "ABC734"
      },
      {
        "type": "courier",
        "value": "DB1KWL"
      },
      {
        "type": "custom",
        "value": "Custom requirement message"
      },
      {
        "type": "courier_requirements",
        "value": "some requirement"
      }
    ]
  },
  "delivery": {
    "name": "I.P. Freely",
    "email": "bob@obbay.de",
    "address_line": "Thujaweg 1",
    "country_code": "de",
    "postal_code": "12437",
    "city": "Berlin",
    "phone_number": "30049223333",
    "information": "delivery-instructions",
    "requirements": [
      {
        "type": "age",
        "value": "20"
      },
      {
        "type": "signature"
      },
      {
        "type": "loading_assistance"
      },
      {
        "type": "dedicated_delivery"
      },
      {
        "type": "external_identifier_scanning",
        "value": "\\A(104[0-9]{13}|Y?1010[0-9]{10})\\z"
      },
      {
        "type": "security_code",
        "value": "ABC734"
      },
      {
        "type": "courier",
        "value": "DB1KWL"
      },
      {
        "type": "custom",
        "value": "Custom requirement message"
      },
      {
        "type": "courier_requirements",
        "value": "some requirement"
      }
    ]
  },
  "packages": [
    {
      "weight": 5,
      "height": 20,
      "width": 10,
      "length": 30,
      "description": "A fish",
      "size": "L",
      "identifier": "667C5E8D3523C5A9",
      "non_rotatable": false
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "delivery_type": {
      "type": "string",
      "enum": [
        "express"
      ]
    },
    "web_hook_url": {
      "type": "string",
      "description": "an optional parameter with an URL to be notified when the order's state changes. Please check the [WebHooks](#web-hooks) to learn more about web hooks."
    },
    "external_id": {
      "type": "string",
      "description": "an optional parameter with custom id that enables connecting tiramizoo orders with your internal infrastructure. This id needs to be unique and can have variable length. (max length: 255 chars)"
    },
    "pickup": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Sender's name"
        },
        "email": {
          "type": "string",
          "description": "Sender's email"
        },
        "address_line": {
          "type": "string",
          "description": "Sender's address"
        },
        "country_code": {
          "type": "string",
          "description": "Sender's country code"
        },
        "postal_code": {
          "type": "string",
          "description": "Sender's postal code"
        },
        "city": {
          "type": "string",
          "description": "Sender's city"
        },
        "phone_number": {
          "type": "string",
          "description": "Sender's phone number"
        },
        "information": {
          "type": "string",
          "description": "Pickup information for a courier"
        },
        "requirements": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "age",
                    "security_code",
                    "loading_assistance",
                    "custom",
                    "signature",
                    "external_identifier_scanning",
                    "dedicated_delivery",
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "requirement type value. Requirements `type: loading_assistance, dedicated_delivery and signature` doesn’t have value parameter."
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "signature"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "loading_assistance"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "external_identifier_scanning"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "scanning regex"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "security_code"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "security code"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "courier's identifier"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "custom"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "custom requirement message"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "one of courier's skills defined inside process 'Activate custom named requirements' process feature"
                }
              }
            }
          ],
          "description": "Requirements to be performed on pickup"
        }
      },
      "description": "pickup data"
    },
    "delivery": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Recipient's name"
        },
        "email": {
          "type": "string",
          "description": "Recipient's email"
        },
        "address_line": {
          "type": "string",
          "description": "Recipient's address"
        },
        "country_code": {
          "type": "string",
          "description": "Recipient's country code"
        },
        "postal_code": {
          "type": "string",
          "description": "Recipient's postal code"
        },
        "city": {
          "type": "string",
          "description": "Recipient's city"
        },
        "phone_number": {
          "type": "string",
          "description": "Recipient's phone number"
        },
        "information": {
          "type": "string",
          "description": "Delivery information for a courier"
        },
        "requirements": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "age",
                    "security_code",
                    "loading_assistance",
                    "custom",
                    "signature",
                    "external_identifier_scanning",
                    "dedicated_delivery",
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "requirement type value. Requirements `type: loading_assistance, dedicated_delivery and signature` doesn’t have value parameter.ring]) - requirement type value"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "signature"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "loading_assistance"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "dedicated_delivery"
                  ],
                  "description": "requirement type"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "external_identifier_scanning"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "scanning regex"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "security_code"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "security code"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "courier's identifier"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "custom"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "custom requirement message"
                }
              }
            },
            {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "courier_requirements"
                  ],
                  "description": "requirement type"
                },
                "value": {
                  "type": "string",
                  "description": "one of courier's skills defined inside process 'Activate custom named requirements' process feature"
                }
              }
            }
          ],
          "description": "Requirements to be performed on delivery"
        }
      },
      "description": "delivery data"
    },
    "packages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "weight": {
            "type": "number",
            "description": "Package weight"
          },
          "height": {
            "type": "number",
            "description": "Package height"
          },
          "width": {
            "type": "number",
            "description": "Package width"
          },
          "length": {
            "type": "number",
            "description": "Package length"
          },
          "description": {
            "type": "string",
            "description": "Package description"
          },
          "size": {
            "type": "string",
            "description": "Package size"
          },
          "identifier": {
            "type": "string",
            "description": "Package identifier"
          },
          "non_rotatable": {
            "type": "boolean",
            "description": "Specify if package can be rotated during transport"
          }
        }
      },
      "description": "Order packages"
    }
  },
  "required": [
    "delivery_type"
  ]
}
Response  201
HideShow

pickup_signature, delivery_signature, return_signature - are optional

Headers
Content-Type: application/json
Body
{
  "uuid": "7710e3a3-8b9f-4e73-93c3-1ab0bee8a540",
  "courier_information": "pickup-instructions; delivery-instructions",
  "external_id": "external id",
  "secondary_external_id": null,
  "web_hook_url": "http://api.myshop.com/deliveries/update_state",
  "hazard_index": 10,
  "identifier": "QEI3DS",
  "timezone": "Europe/Berlin",
  "state": "created",
  "delivery_type": "express",
  "created_at": "2012-04-16T09:00:00+02:00",
  "dispatched_at": null,
  "picked_up_at": null,
  "pickup_failed_at": null,
  "delivered_to": null,
  "delivered_at": null,
  "delivery_failed_at": null,
  "returned_at": null,
  "cancelled_at": null,
  "cancellation_reason": null,
  "tracking_url": "http://app.tiramizoo.local/orders/WLFVSU1ZXA8XL/tracking_status?locale=en",
  "tracking_code": "WLFVS-U1ZX-A8XL",
  "cancellable": false,
  "pickup": {
    "name": "Alice Icealay",
    "phone_number": "+491234567890",
    "email": "alice@icealay.de",
    "address_line": "Im Dol 1",
    "city": "Berlin",
    "postal_code": "14195",
    "country_code": "de",
    "after": "2012-04-16T09:00:00+02:00",
    "before": "2012-04-16T11:00:00+02:00",
    "requirements": [],
    "information": "pickup-instructions",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "delivery": {
    "name": "Bob Obbay",
    "phone_number": "+490987654321",
    "email": "bob@obbay.de",
    "address_line": "Thujaweg 1",
    "city": "Berlin",
    "postal_code": "12437",
    "country_code": "de",
    "after": "2012-04-16T09:00:00+02:00",
    "before": "2012-04-16T11:00:00+02:00",
    "time_window_label": null,
    "requirements": [
      {
        "type": "signature"
      }
    ],
    "information": "delivery-instructions",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "packages": [
    {
      "width": 2,
      "height": 8,
      "length": 5,
      "weight": 2,
      "quantity": 1,
      "description": null,
      "category": null,
      "identifier": "DD68B0CC95731D33",
      "unpackable": false,
      "non_rotatable": false,
      "external_id": null,
      "barcode": {
        "symbology": "QR Code",
        "data": "DD68B0CC95731D33",
        "url": "http://app.tiramizoo.local/api/v1/barcodes/DD68B0CC95731D33.png"
      },
      "state": "pending",
      "custom_data": {}
    }
  ],
  "signature": {
    "url": null,
    "name": null
  },
  "labels_url": "http://app.tiramizoo.local/orders/WLFVSU1ZXA8XL/labels.pdf",
  "events": [],
  "history": [],
  "tour_identifier": null,
  "courier_identifier": null,
  "courier_name": null,
  "courier_company_identifier": null,
  "courier_company_name": null,
  "vehicle": null
}
Response  422
HideShow

422 Validation Error - some of required parameters are missing or
invalid in the request. Please fix parameters and retry the request.

Headers
Content-Type: application/json
Body
{
  "code": "validation_error",
  "message": "validation error",
  "errors": [
    {
      "field": "pickup_name",
      "code": "blank",
      "message": "Pickup name can't be blank"
    }
  ]
}
Response  401
HideShow

Unauthorized request

Show Order
GET/orders/{id}{?api_token}

Example URI

GET https://sandbox.tiramizoo.com/api/v1/orders/VZQSWU?api_token=jksdorj23hh
URI Parameters
HideShow
api_token
string (required) Example: jksdorj23hh

authentication token

id
string (required) Example: VZQSWU

unique order identifier, could be either:

  • VZQSWU - identifier, or

  • a505ff78-67c5-4fbd-ab4f-a8db81f2c45a - uuid

Request
HideShow
Headers
Content-Type: application/json
Response  200
HideShow

pickup_signature, delivery_signature, return_signature - are optional

Headers
Content-Type: application/json
Body
{
  "uuid": "7ef15e0a-726b-4ca1-a2ed-27c1b98cc274",
  "courier_information": "go go go; now now now",
  "external_id": "6ULZI9",
  "secondary_external_id": null,
  "web_hook_url": null,
  "hazard_index": 0,
  "identifier": "4SUX7T",
  "timezone": "Europe/Berlin",
  "state": "created",
  "delivery_type": "standard",
  "created_at": "2012-04-16T05:00:00+02:00",
  "dispatched_at": null,
  "picked_up_at": null,
  "pickup_failed_at": null,
  "delivered_to": null,
  "delivered_at": null,
  "delivery_failed_at": null,
  "returned_at": null,
  "cancelled_at": null,
  "cancellation_reason": null,
  "tracking_url": "http://app.tiramizoo.local/orders/TN8Y966CTG850/tracking_status?locale=en",
  "tracking_code": "TN8Y9-66CT-G850",
  "cancellable": false,
  "pickup": {
    "name": "I.P. Freely",
    "phone_number": "30049223333",
    "email": null,
    "address_line": "Im Dol 2",
    "city": "Berlin",
    "postal_code": "14195",
    "country_code": "de",
    "after": "2012-04-16T07:00:00+02:00",
    "before": "2012-04-16T07:30:00+02:00",
    "requirements": [],
    "information": "go go go",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "delivery": {
    "name": "Mike Rotch",
    "phone_number": "30049224444",
    "email": null,
    "address_line": "Im Dol 48",
    "city": "Berlin",
    "postal_code": "14195",
    "country_code": "de",
    "after": "2012-04-16T07:30:00+02:00",
    "before": "2012-04-16T09:00:00+02:00",
    "time_window_label": null,
    "requirements": [],
    "information": "now now now",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "packages": [
    {
      "width": 10,
      "height": 20,
      "length": 30,
      "weight": 5,
      "quantity": 1,
      "description": "A fish",
      "category": null,
      "identifier": "79217B17B324A984",
      "unpackable": false,
      "non_rotatable": false,
      "external_id": null,
      "barcode": {
        "symbology": "QR Code",
        "data": "79217B17B324A984",
        "url": "http://app.tiramizoo.local/api/v1/barcodes/79217B17B324A984.png"
      },
      "state": "pending",
      "custom_data": {}
    }
  ],
  "signature": {
    "url": null,
    "name": null
  },
  "labels_url": "http://app.tiramizoo.local/orders/TN8Y966CTG850/labels.pdf",
  "events": [],
  "history": [],
  "tour_identifier": null,
  "courier_identifier": null,
  "courier_name": null,
  "courier_company_identifier": null,
  "courier_company_name": null,
  "vehicle": null
}

Cancel Order
PUT/orders/{id}

Only orders in cancellable state can be cancelled

{
  // ...
  "cancellable": true
  // ...
}

Example URI

PUT https://sandbox.tiramizoo.com/api/v1/orders/VZQSWU
URI Parameters
HideShow
id
string (required) Example: VZQSWU

unique order identifier, could be either:

  • VZQSWU - identifier, or

  • a505ff78-67c5-4fbd-ab4f-a8db81f2c45a - uuid

Request
HideShow
Headers
Content-Type: application/json
Body
{
  "api_token": "jksdorj23hh",
  "state": "cancelled",
  "external_id": "AABBCC"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "api_token": {
      "type": "string",
      "description": "authentication token"
    },
    "state": {
      "type": "string"
    },
    "external_id": {
      "type": "string",
      "description": "custom id that enables connecting tiramizoo order with your internal infrastructure. This id does not need to be unique and can have variable length."
    }
  },
  "required": [
    "api_token",
    "state"
  ]
}
Response  200
HideShow

pickup_signature, delivery_signature, return_signature - are optional

Headers
Content-Type: application/json
Body
{
  "uuid": "e6a28c9e-6e5c-4200-978b-0522a9b47bb0",
  "courier_information": "go go go; now now now",
  "external_id": "AABBCC",
  "secondary_external_id": null,
  "web_hook_url": null,
  "hazard_index": 0,
  "identifier": "TVWW0A",
  "timezone": "Europe/Berlin",
  "state": "delivery_failed",
  "delivery_type": "standard",
  "created_at": "2012-04-16T05:00:00+02:00",
  "dispatched_at": "2012-04-16T05:05:00+02:00",
  "picked_up_at": "2012-04-16T07:10:00+02:00",
  "pickup_failed_at": null,
  "delivered_to": null,
  "delivered_at": null,
  "delivery_failed_at": "2012-04-16T09:00:00+02:00",
  "returned_at": null,
  "cancelled_at": null,
  "cancellation_reason": null,
  "tracking_url": "http://app.tiramizoo.local/orders/9YLWBEM6HQ54U/tracking_status?locale=en",
  "tracking_code": "9YLWB-EM6H-Q54U",
  "cancellable": false,
  "pickup": {
    "name": "I.P. Freely",
    "phone_number": "30049223333",
    "email": null,
    "address_line": "Im Dol 2",
    "city": "Berlin",
    "postal_code": "14195",
    "country_code": "de",
    "after": "2012-04-16T07:00:00+02:00",
    "before": "2012-04-16T07:30:00+02:00",
    "requirements": [],
    "information": "go go go",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "delivery": {
    "name": "Mike Rotch",
    "phone_number": "30049224444",
    "email": null,
    "address_line": "Im Dol 48",
    "city": "Berlin",
    "postal_code": "14195",
    "country_code": "de",
    "after": "2012-04-16T07:30:00+02:00",
    "before": "2012-04-16T09:00:00+02:00",
    "time_window_label": null,
    "requirements": [],
    "information": "now now now",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "packages": [
    {
      "width": 10,
      "height": 20,
      "length": 30,
      "weight": 5,
      "quantity": 1,
      "description": "A fish",
      "category": null,
      "identifier": "03FFCF87C5FC9F87",
      "unpackable": false,
      "non_rotatable": false,
      "external_id": null,
      "barcode": {
        "symbology": "QR Code",
        "data": "03FFCF87C5FC9F87",
        "url": "http://app.tiramizoo.local/api/v1/barcodes/03FFCF87C5FC9F87.png"
      },
      "state": "not_delivered",
      "custom_data": {}
    }
  ],
  "signature": {
    "url": null,
    "name": null
  },
  "labels_url": "http://app.tiramizoo.local/orders/9YLWBEM6HQ54U/labels.pdf",
  "events": [
    {
      "retry_at": null,
      "type": "abort_delivery",
      "recorded_at": "2012-04-16T09:00:00+02:00",
      "signature": {
        "url": null,
        "name": null
      },
      "photo_proof": {
        "url": null,
        "name": null
      },
      "photo_proofs": {
        "name": null,
        "urls": []
      },
      "current_state": "delivery_failed"
    }
  ],
  "history": [
    {
      "retry_at": null,
      "type": "abort_delivery",
      "recorded_at": "2012-04-16T09:00:00+02:00",
      "signature": {
        "url": null,
        "name": null
      },
      "photo_proof": {
        "url": null,
        "name": null
      },
      "photo_proofs": {
        "name": null,
        "urls": []
      },
      "current_state": "delivery_failed"
    }
  ],
  "tour_identifier": null,
  "courier_identifier": null,
  "courier_name": null,
  "courier_company_identifier": "UCR9CG",
  "courier_company_name": "Company 1",
  "vehicle": null
}

Order Drafts

Create Order Draft

Create Order Draft
POST/order_drafts


Attribute name Type Required Description
pickup_identifier string Identifier of the pickup place (warehouse) the order should be sent from. If not provided, then pickup contact associated with given process is taken
delivery_identifier string X Identifier of the delivery place the order should be sent to
identifier string X Identifier of the commercial order
webhook_url string Information about order status updates will be sent to this URL when provided
information_to_sender string Information that sender can read before creating order
products: array X Order draft products
identifier string X Product identifier
height integer Product height
length integer Product length
width integer Product width
weight float Product weight
hazard_index integer Product hazard index
description string Product description

Example URI

POST https://sandbox.tiramizoo.com/api/v1/order_drafts
Request  Create Order Draft
HideShow
Headers
Content-Type: application/json
Api-Token: jksdorj23hh
Body
{
  "pickup_identifier": "12345",
  "delivery_identifier": "12345",
  "identifier": "12345",
  "information_to_sender": "Some explanation",
  "webhook_url": "https://example.com/webhook",
  "products": [
    {
      "identifier": "667C5E8D3523C5A9",
      "weight": 5,
      "length": 5,
      "height": 5,
      "width": 5,
      "hazard_index": 5,
      "description": "A fish"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "pickup_identifier": {
      "type": "string",
      "description": "Identifier of the pickup place (warehouse) the order should be sent from. If not provided, then pickup contact associated with given process is taken"
    },
    "delivery_identifier": {
      "type": "string",
      "description": "Identifier of the delivery place the order should be sent to"
    },
    "identifier": {
      "type": "string",
      "description": "an optional parameter with custom id that enables connecting tiramizoo orders with your internal infrastructure. This id needs to be unique and can have variable length. (max length: 255 chars)"
    },
    "information_to_sender": {
      "type": "string",
      "description": "Information that sender can read before creating order"
    },
    "webhook_url": {
      "type": "string",
      "description": "URL to be notified when the order's state changes"
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "identifier": {
            "type": "string",
            "description": "Product identifier"
          },
          "weight": {
            "type": "number",
            "description": "Product weight"
          },
          "length": {
            "type": "number",
            "description": "Product length"
          },
          "height": {
            "type": "number",
            "description": "Product height"
          },
          "width": {
            "type": "number",
            "description": "Product width"
          },
          "hazard_index": {
            "type": "number",
            "description": "Product hazard index"
          },
          "description": {
            "type": "string",
            "description": "Product description"
          }
        }
      },
      "description": "Order draft products"
    }
  }
}
Response  201
HideShow

Order draft created successfully

Headers
Content-Type: application/json
Response  422
HideShow

422 Validation Error - some of required parameters are missing or
invalid in the request. Please fix parameters and retry the request.

Headers
Content-Type: application/json
Response  401
HideShow

Unauthorized request

Return process

Return process is activated in case order has been picked up, but for some reason it can not be delivered.
By default order will be delivered to pickup location in next 24 hours.

States involved

  • delivery_failed - courier went to delivery location but couldn’t deliver. Delivery is gonna be returned to pickup location

  • returned - courier returned delivery to pickup location

Additional information

When courier fails to deliver order state changes to delivery_failed and events parameter contains failure details

{
  // ...
  "state": "delivery_failed"
  "events": [
    type: "package_was_not_ordered",
    recorded_at: "2015-05-27T14:25:37+02:00",
    signature_name: "Bob Obbay",
    signature_url: "http://sandbox.tiramizoo.com/courier_api/v1/signatures/16e813d2-e054-4901-8b06-b8f7102f10fb.png"
  ]
  // ...
}

Possible delivery failure reasons (event types):

  • abort_delivery

  • address_not_found

  • failed_due_to_business_closed

  • name_not_found_on_doorbell

  • no_attempt_due_to_being_late

  • not_enough_money_for_payment

  • package_is_damaged

  • package_was_delivered_too_late

  • package_was_not_accepted

  • package_was_not_ordered

  • recipient_was_not_at_home

Service Areas

Show Service Area

Show Service Area
GET/service_area{?api_token}

Service area is returned with time windows (limited by default to next 7 days)

Example URI

GET https://sandbox.tiramizoo.com/api/v1/service_area?api_token=b612a4efd56151b5c0f79bd5631f0ad1
URI Parameters
HideShow
api_token
string (required) Example: b612a4efd56151b5c0f79bd5631f0ad1

Authentication token

Request
HideShow
Headers
Content-Type: application/json
Response  200
HideShow
Body
{
  "time_zone": "Europe/Berlin",
  "postal_codes": [
    "12437",
    "14195"
  ],
  "postal_codes_country_codes": [
    {
      "postal_code": "12437",
      "country_code": "de"
    },
    {
      "postal_code": "14195",
      "country_code": "de"
    }
  ],
  "express_availability": {
    "from": "2018-04-10T08:39:00Z",
    "to": "2018-04-10T16:00:00Z",
    "earliest_possible_order_time": "2018-04-10T08:39:00Z",
    "latest_possible_order_time": "2018-04-10T14:00:00Z",
    "length": 120,
    "cut_off": 0
  },
  "special_days": [
    {
      "date": "2018-04-12",
      "closed": false,
      "open_from": "2018-04-12T10:00:00Z",
      "open_to": "2018-04-12T11:00:00Z"
    }
  ],
  "time_windows": [
    {
      "delivery_type": "express",
      "cut_off": 0,
      "cut_off_two_man_handling": 0,
      "weekend": false,
      "availability": "open",
      "preferred": true,
      "pickup": {
        "from": "2018-04-10T08:39:00Z",
        "to": "2018-04-10T10:39:00Z"
      },
      "delivery": {
        "from": "2018-04-10T08:39:00Z",
        "to": "2018-04-10T10:39:00Z"
      }
    },
    {
      "delivery_type": "standard",
      "cut_off": 30,
      "cut_off_two_man_handling": 240,
      "weekend": false,
      "availability": "open",
      "preferred": true,
      "pickup": {
        "from": "2018-04-11T07:00:00Z",
        "to": "2018-04-11T09:00:00Z"
      },
      "delivery": {
        "from": "2018-04-11T07:00:00Z",
        "to": "2018-04-11T09:00:00Z"
      }
    },
    {
      "delivery_type": "standard",
      "cut_off": 30,
      "cut_off_two_man_handling": 240,
      "weekend": false,
      "availability": "open",
      "preferred": true,
      "pickup": {
        "from": "2018-04-13T07:00:00Z",
        "to": "2018-04-13T09:00:00Z"
      },
      "delivery": {
        "from": "2018-04-13T07:00:00Z",
        "to": "2018-04-13T09:00:00Z"
      }
    },
    {
      "delivery_type": "standard",
      "cut_off": 30,
      "cut_off_two_man_handling": 240,
      "weekend": true,
      "availability": "open",
      "preferred": true,
      "pickup": {
        "from": "2018-04-14T07:00:00Z",
        "to": "2018-04-14T09:00:00Z"
      },
      "delivery": {
        "from": "2018-04-14T07:00:00Z",
        "to": "2018-04-14T09:00:00Z"
      }
    },
    {
      "delivery_type": "standard",
      "cut_off": 30,
      "cut_off_two_man_handling": 240,
      "weekend": true,
      "availability": "open",
      "preferred": true,
      "pickup": {
        "from": "2018-04-15T07:00:00Z",
        "to": "2018-04-15T09:00:00Z"
      },
      "delivery": {
        "from": "2018-04-15T07:00:00Z",
        "to": "2018-04-15T09:00:00Z"
      }
    },
    {
      "delivery_type": "standard",
      "cut_off": 30,
      "cut_off_two_man_handling": 240,
      "weekend": false,
      "availability": "open",
      "preferred": true,
      "pickup": {
        "from": "2018-04-16T07:00:00Z",
        "to": "2018-04-16T09:00:00Z"
      },
      "delivery": {
        "from": "2018-04-16T07:00:00Z",
        "to": "2018-04-16T09:00:00Z"
      }
    },
    {
      "delivery_type": "standard",
      "cut_off": 30,
      "cut_off_two_man_handling": 240,
      "weekend": false,
      "availability": "open",
      "preferred": true,
      "pickup": {
        "from": "2018-04-17T07:00:00Z",
        "to": "2018-04-17T09:00:00Z"
      },
      "delivery": {
        "from": "2018-04-17T07:00:00Z",
        "to": "2018-04-17T09:00:00Z"
      }
    }
  ]
}

Time Windows

List Time Windows

List Time Windows
GET/time_windows{?api_token,from_date,to_date}

The API returns time windows (limited by default to next 7 days).

Example URI

GET https://sandbox.tiramizoo.com/api/v1/time_windows?api_token=b612a4efd56151b5c0f79bd5631f0ad1&from_date=2018-04-10T08:29:00Z&to_date=2018-04-15T08:29:00Z
URI Parameters
HideShow
api_token
string (required) Example: b612a4efd56151b5c0f79bd5631f0ad1

Authentication token

from_date
string (optional) Example: 2018-04-10T08:29:00Z

Date and time as UTC in ISO 8601 format. Does not need to be provided together with to_date. Allows to specify start time for time windows, earliest pickup_from for an order.

to_date
string (optional) Example: 2018-04-15T08:29:00Z

Date and time as UTC in ISO 8601 format. Does not need to be provided together with from_date parameter, in this case from_date is set to current time. Allows to specify end time for time windows, latest delivery_to for an order. Can not exceed 7 days limit.

Request
HideShow
Headers
Content-Type: application/json
Response  200
HideShow
Body
[
  {
    "delivery_type": "express",
    "cut_off": 0,
    "cut_off_two_man_handling": 0,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T07:10:00Z",
      "to": "2019-02-18T09:10:00Z"
    },
    "delivery": {
      "from": "2019-02-18T07:10:00Z",
      "to": "2019-02-18T09:10:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T09:00:00Z",
      "to": "2019-02-18T11:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T09:00:00Z",
      "to": "2019-02-18T11:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T10:00:00Z",
      "to": "2019-02-18T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T10:00:00Z",
      "to": "2019-02-18T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T11:00:00Z",
      "to": "2019-02-18T13:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T11:00:00Z",
      "to": "2019-02-18T13:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T12:00:00Z",
      "to": "2019-02-18T14:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T12:00:00Z",
      "to": "2019-02-18T14:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T13:00:00Z",
      "to": "2019-02-18T15:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T13:00:00Z",
      "to": "2019-02-18T15:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T14:00:00Z",
      "to": "2019-02-18T16:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T14:00:00Z",
      "to": "2019-02-18T16:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T15:00:00Z",
      "to": "2019-02-18T17:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T15:00:00Z",
      "to": "2019-02-18T17:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T16:00:00Z",
      "to": "2019-02-18T18:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T16:00:00Z",
      "to": "2019-02-18T18:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T17:00:00Z",
      "to": "2019-02-18T19:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T17:00:00Z",
      "to": "2019-02-18T19:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T18:00:00Z",
      "to": "2019-02-18T20:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T18:00:00Z",
      "to": "2019-02-18T20:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-18T19:00:00Z",
      "to": "2019-02-18T21:00:00Z"
    },
    "delivery": {
      "from": "2019-02-18T19:00:00Z",
      "to": "2019-02-18T21:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T07:00:00Z",
      "to": "2019-02-19T09:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T07:00:00Z",
      "to": "2019-02-19T09:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T08:00:00Z",
      "to": "2019-02-19T10:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T08:00:00Z",
      "to": "2019-02-19T10:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T09:00:00Z",
      "to": "2019-02-19T11:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T09:00:00Z",
      "to": "2019-02-19T11:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T10:00:00Z",
      "to": "2019-02-19T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T10:00:00Z",
      "to": "2019-02-19T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T11:00:00Z",
      "to": "2019-02-19T13:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T11:00:00Z",
      "to": "2019-02-19T13:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T12:00:00Z",
      "to": "2019-02-19T14:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T12:00:00Z",
      "to": "2019-02-19T14:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T13:00:00Z",
      "to": "2019-02-19T15:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T13:00:00Z",
      "to": "2019-02-19T15:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T14:00:00Z",
      "to": "2019-02-19T16:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T14:00:00Z",
      "to": "2019-02-19T16:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T15:00:00Z",
      "to": "2019-02-19T17:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T15:00:00Z",
      "to": "2019-02-19T17:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T16:00:00Z",
      "to": "2019-02-19T18:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T16:00:00Z",
      "to": "2019-02-19T18:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T17:00:00Z",
      "to": "2019-02-19T19:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T17:00:00Z",
      "to": "2019-02-19T19:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T18:00:00Z",
      "to": "2019-02-19T20:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T18:00:00Z",
      "to": "2019-02-19T20:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-19T19:00:00Z",
      "to": "2019-02-19T21:00:00Z"
    },
    "delivery": {
      "from": "2019-02-19T19:00:00Z",
      "to": "2019-02-19T21:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T07:00:00Z",
      "to": "2019-02-20T09:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T07:00:00Z",
      "to": "2019-02-20T09:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T08:00:00Z",
      "to": "2019-02-20T10:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T08:00:00Z",
      "to": "2019-02-20T10:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T09:00:00Z",
      "to": "2019-02-20T11:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T09:00:00Z",
      "to": "2019-02-20T11:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T10:00:00Z",
      "to": "2019-02-20T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T10:00:00Z",
      "to": "2019-02-20T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T11:00:00Z",
      "to": "2019-02-20T13:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T11:00:00Z",
      "to": "2019-02-20T13:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T12:00:00Z",
      "to": "2019-02-20T14:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T12:00:00Z",
      "to": "2019-02-20T14:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T13:00:00Z",
      "to": "2019-02-20T15:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T13:00:00Z",
      "to": "2019-02-20T15:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T14:00:00Z",
      "to": "2019-02-20T16:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T14:00:00Z",
      "to": "2019-02-20T16:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T15:00:00Z",
      "to": "2019-02-20T17:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T15:00:00Z",
      "to": "2019-02-20T17:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T16:00:00Z",
      "to": "2019-02-20T18:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T16:00:00Z",
      "to": "2019-02-20T18:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T17:00:00Z",
      "to": "2019-02-20T19:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T17:00:00Z",
      "to": "2019-02-20T19:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T18:00:00Z",
      "to": "2019-02-20T20:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T18:00:00Z",
      "to": "2019-02-20T20:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-20T19:00:00Z",
      "to": "2019-02-20T21:00:00Z"
    },
    "delivery": {
      "from": "2019-02-20T19:00:00Z",
      "to": "2019-02-20T21:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T07:00:00Z",
      "to": "2019-02-21T09:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T07:00:00Z",
      "to": "2019-02-21T09:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T08:00:00Z",
      "to": "2019-02-21T10:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T08:00:00Z",
      "to": "2019-02-21T10:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T09:00:00Z",
      "to": "2019-02-21T11:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T09:00:00Z",
      "to": "2019-02-21T11:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T10:00:00Z",
      "to": "2019-02-21T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T10:00:00Z",
      "to": "2019-02-21T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T11:00:00Z",
      "to": "2019-02-21T13:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T11:00:00Z",
      "to": "2019-02-21T13:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T12:00:00Z",
      "to": "2019-02-21T14:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T12:00:00Z",
      "to": "2019-02-21T14:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T13:00:00Z",
      "to": "2019-02-21T15:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T13:00:00Z",
      "to": "2019-02-21T15:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T14:00:00Z",
      "to": "2019-02-21T16:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T14:00:00Z",
      "to": "2019-02-21T16:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T15:00:00Z",
      "to": "2019-02-21T17:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T15:00:00Z",
      "to": "2019-02-21T17:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T16:00:00Z",
      "to": "2019-02-21T18:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T16:00:00Z",
      "to": "2019-02-21T18:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T17:00:00Z",
      "to": "2019-02-21T19:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T17:00:00Z",
      "to": "2019-02-21T19:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T18:00:00Z",
      "to": "2019-02-21T20:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T18:00:00Z",
      "to": "2019-02-21T20:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-21T19:00:00Z",
      "to": "2019-02-21T21:00:00Z"
    },
    "delivery": {
      "from": "2019-02-21T19:00:00Z",
      "to": "2019-02-21T21:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T07:00:00Z",
      "to": "2019-02-22T09:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T07:00:00Z",
      "to": "2019-02-22T09:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T08:00:00Z",
      "to": "2019-02-22T10:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T08:00:00Z",
      "to": "2019-02-22T10:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T09:00:00Z",
      "to": "2019-02-22T11:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T09:00:00Z",
      "to": "2019-02-22T11:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T10:00:00Z",
      "to": "2019-02-22T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T10:00:00Z",
      "to": "2019-02-22T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T11:00:00Z",
      "to": "2019-02-22T13:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T11:00:00Z",
      "to": "2019-02-22T13:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T12:00:00Z",
      "to": "2019-02-22T14:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T12:00:00Z",
      "to": "2019-02-22T14:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T13:00:00Z",
      "to": "2019-02-22T15:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T13:00:00Z",
      "to": "2019-02-22T15:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T14:00:00Z",
      "to": "2019-02-22T16:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T14:00:00Z",
      "to": "2019-02-22T16:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T15:00:00Z",
      "to": "2019-02-22T17:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T15:00:00Z",
      "to": "2019-02-22T17:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T16:00:00Z",
      "to": "2019-02-22T18:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T16:00:00Z",
      "to": "2019-02-22T18:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T17:00:00Z",
      "to": "2019-02-22T19:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T17:00:00Z",
      "to": "2019-02-22T19:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T18:00:00Z",
      "to": "2019-02-22T20:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T18:00:00Z",
      "to": "2019-02-22T20:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-22T19:00:00Z",
      "to": "2019-02-22T21:00:00Z"
    },
    "delivery": {
      "from": "2019-02-22T19:00:00Z",
      "to": "2019-02-22T21:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-23T09:00:00Z",
      "to": "2019-02-23T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-23T09:00:00Z",
      "to": "2019-02-23T12:00:00Z"
    },
    "max_delivery_available_km": 52.5,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T07:00:00Z",
      "to": "2019-02-24T09:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T07:00:00Z",
      "to": "2019-02-24T09:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T08:00:00Z",
      "to": "2019-02-24T10:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T08:00:00Z",
      "to": "2019-02-24T10:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T09:00:00Z",
      "to": "2019-02-24T11:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T09:00:00Z",
      "to": "2019-02-24T11:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T10:00:00Z",
      "to": "2019-02-24T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T10:00:00Z",
      "to": "2019-02-24T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T11:00:00Z",
      "to": "2019-02-24T13:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T11:00:00Z",
      "to": "2019-02-24T13:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T12:00:00Z",
      "to": "2019-02-24T14:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T12:00:00Z",
      "to": "2019-02-24T14:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T13:00:00Z",
      "to": "2019-02-24T15:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T13:00:00Z",
      "to": "2019-02-24T15:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T14:00:00Z",
      "to": "2019-02-24T16:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T14:00:00Z",
      "to": "2019-02-24T16:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T15:00:00Z",
      "to": "2019-02-24T17:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T15:00:00Z",
      "to": "2019-02-24T17:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T16:00:00Z",
      "to": "2019-02-24T18:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T16:00:00Z",
      "to": "2019-02-24T18:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T17:00:00Z",
      "to": "2019-02-24T19:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T17:00:00Z",
      "to": "2019-02-24T19:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T18:00:00Z",
      "to": "2019-02-24T20:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T18:00:00Z",
      "to": "2019-02-24T20:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": true,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-24T19:00:00Z",
      "to": "2019-02-24T21:00:00Z"
    },
    "delivery": {
      "from": "2019-02-24T19:00:00Z",
      "to": "2019-02-24T21:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T07:00:00Z",
      "to": "2019-02-25T09:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T07:00:00Z",
      "to": "2019-02-25T09:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T08:00:00Z",
      "to": "2019-02-25T10:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T08:00:00Z",
      "to": "2019-02-25T10:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T09:00:00Z",
      "to": "2019-02-25T11:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T09:00:00Z",
      "to": "2019-02-25T11:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T10:00:00Z",
      "to": "2019-02-25T12:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T10:00:00Z",
      "to": "2019-02-25T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T11:00:00Z",
      "to": "2019-02-25T13:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T11:00:00Z",
      "to": "2019-02-25T13:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T12:00:00Z",
      "to": "2019-02-25T14:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T12:00:00Z",
      "to": "2019-02-25T14:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T13:00:00Z",
      "to": "2019-02-25T15:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T13:00:00Z",
      "to": "2019-02-25T15:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T14:00:00Z",
      "to": "2019-02-25T16:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T14:00:00Z",
      "to": "2019-02-25T16:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T15:00:00Z",
      "to": "2019-02-25T17:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T15:00:00Z",
      "to": "2019-02-25T17:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T16:00:00Z",
      "to": "2019-02-25T18:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T16:00:00Z",
      "to": "2019-02-25T18:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T17:00:00Z",
      "to": "2019-02-25T19:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T17:00:00Z",
      "to": "2019-02-25T19:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T18:00:00Z",
      "to": "2019-02-25T20:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T18:00:00Z",
      "to": "2019-02-25T20:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  },
  {
    "delivery_type": "standard",
    "cut_off": 60,
    "cut_off_two_man_handling": 240,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "preferred": true,
    "pickup": {
      "from": "2019-02-25T19:00:00Z",
      "to": "2019-02-25T21:00:00Z"
    },
    "delivery": {
      "from": "2019-02-25T19:00:00Z",
      "to": "2019-02-25T21:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": null
  }
]

Web Hooks

Order

Order
POST/web_hook_url

You can easily avoid pulling API by providing web_hook_url parameter while creating an order.
If so, we will POST to provided web_hook_url whenever order change state

To ensure that your API received, understood and accepted the request, we’ll check your response status code.
With response status code other than 2xx we assume that request has failed.
If so, we’ll retry with an exponential backoff using the formula (retry_count 4 + 15) i.e. 15, 16, 31, 96, 271, … seconds.
It will perform 25 retries over approximately 20 days.

The webhook payload contains exactly the same fields as the response body from Show Order request.

Keep in mind that the order of the webhook requests is not guaranteed,
though usually they are ordered by the timestamp of the status change.

Example URI

POST https://sandbox.tiramizoo.com/api/v1/web_hook_url
Request
HideShow
Headers
Content-Type: application/json
Body
{
  "uuid": "53b78d27-f07c-448d-9763-cd5d072670ad",
  "courier_information": "pickup-instructions; delivery-instructions",
  "external_id": "external id",
  "secondary_external_id": "Second ID",
  "web_hook_url": "http://api.myshop.com/deliveries/update_state",
  "hazard_index": 10,
  "identifier": "XVCN6W",
  "timezone": "Europe/Berlin",
  "state": "created",
  "delivery_type": "standard",
  "created_at": "2012-04-16T09:00:00+02:00",
  "dispatched_at": null,
  "picked_up_at": null,
  "pickup_failed_at": null,
  "delivered_to": null,
  "delivered_at": null,
  "delivery_failed_at": null,
  "returned_at": null,
  "cancelled_at": null,
  "cancellation_reason": null,
  "tracking_url": "http://app.tiramizoo.local/orders/HSQ973JR7XOFL/tracking_status?locale=en",
  "tracking_code": "HSQ97-3JR7-XOFL",
  "cancellable": true,
  "pickup": {
    "name": "Alice Icealay",
    "phone_number": "+491234567890",
    "email": "alice@icealay.de",
    "address_line": "Im Dol 1",
    "city": "Berlin",
    "postal_code": "14195",
    "country_code": "de",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "requirements": [
      {
        "type": "custom",
        "value": "please knock twice"
      }
    ],
    "information": "pickup-instructions",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "delivery": {
    "name": "Bob Obbay",
    "phone_number": "+490987654321",
    "email": "bob@obbay.de",
    "address_line": "Thujaweg 1",
    "city": "Berlin",
    "postal_code": "12437",
    "country_code": "de",
    "after": "2012-04-17T10:00:00+02:00",
    "before": "2012-04-17T12:00:00+02:00",
    "time_window_label": null,
    "requirements": [
      {
        "type": "custom",
        "value": "please knock twice"
      },
      {
        "type": "signature"
      }
    ],
    "information": "delivery-instructions",
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": null
  },
  "packages": [
    {
      "width": 2,
      "height": 8,
      "length": 5,
      "weight": 2,
      "quantity": 1,
      "description": null,
      "category": null,
      "identifier": "21C8FF082F55EB3F",
      "unpackable": false,
      "non_rotatable": false,
      "external_id": null,
      "custom_data": null,
      "barcode": {
        "symbology": "QR Code",
        "data": "21C8FF082F55EB3F",
        "url": "http://app.tiramizoo.local/api/v1/barcodes/21C8FF082F55EB3F.png"
      },
      "state": "pending"
    }
  ],
  "signature": {
    "url": null,
    "name": null
  },
  "labels_url": "http://app.tiramizoo.local/orders/HSQ973JR7XOFL/labels.pdf",
  "events": [],
  "history": [],
  "tour_identifier": null,
  "courier_identifier": null,
  "courier_name": null,
  "courier_company_identifier": null,
  "courier_company_name": null,
  "vehicle": null
}
Response  200

Tour plan

Tour plan
POST/tour_plan_web_hook_url

We send information to the base location’s tour_plan_web_hook_url
whenever a new tour (which starts from this particular base location) is created.

Please respond to our POST request with the appropriate HTTP status code.

Example URI

POST https://sandbox.tiramizoo.com/api/v1/tour_plan_web_hook_url
Request
HideShow
Headers
Content-Type: application/json
Body
{
  "time_window": {
    "from": "2016-06-08T08:00:00+02:00",
    "to": "2016-06-08T11:00:00+02:00"
  },
  "tours": [
    {
      "id": "EDFIL1-1",
      "courier": "N1",
      "pick_up_at": "2016-06-08T08:00:00+02:00",
      "orders": [
        {
          "id": "ID1-0",
          "delivery_eta": "2016-06-08T08:00:00+02:00",
          "packages": [
            {
              "id": "AAAAAAAAAAAAA100",
              "size": "L"
            },
            {
              "id": "AAAAAAAAAAAAA101",
              "size": "L"
            }
          ]
        },
        {
          "id": "ID1-1",
          "delivery_eta": "2016-06-08T08:01:00+02:00",
          "packages": [
            {
              "id": "AAAAAAAAAAAAA110",
              "size": "L"
            },
            {
              "id": "AAAAAAAAAAAAA111",
              "size": "L"
            }
          ]
        },
        {
          "id": "ID1-2",
          "delivery_eta": "2016-06-08T08:02:00+02:00",
          "packages": [
            {
              "id": "AAAAAAAAAAAAA120",
              "size": "L"
            },
            {
              "id": "AAAAAAAAAAAAA121",
              "size": "L"
            }
          ]
        }
      ]
    },
    {
      "id": "EDFIL1-2",
      "courier": "N2",
      "pick_up_at": "2016-06-08T08:00:00+02:00",
      "orders": [
        {
          "id": "ID2-0",
          "delivery_eta": "2016-06-08T08:00:00+02:00",
          "packages": [
            {
              "id": "AAAAAAAAAAAAA200",
              "size": "L"
            },
            {
              "id": "AAAAAAAAAAAAA201",
              "size": "L"
            }
          ]
        },
        {
          "id": "ID2-1",
          "delivery_eta": "2016-06-08T08:01:00+02:00",
          "packages": [
            {
              "id": "AAAAAAAAAAAAA210",
              "size": "L"
            },
            {
              "id": "AAAAAAAAAAAAA211",
              "size": "L"
            }
          ]
        },
        {
          "id": "ID2-2",
          "delivery_eta": "2016-06-08T08:02:00+02:00",
          "packages": [
            {
              "id": "AAAAAAAAAAAAA220",
              "size": "L"
            },
            {
              "id": "AAAAAAAAAAAAA221",
              "size": "L"
            }
          ]
        }
      ]
    }
  ]
}
Response  200

Package Labelling Process

On order creation process tiramizoo service generates unique identifier for each package.

Generate identifier for a package

Packages representation
"packages": [
  {
    "width": 2,
    "height": 8.2,
    "length": 5,
    "weight": 2,
    "quantity": 1,
    "description": "chunky bacon",
    "category": null,
    "identifier": "3E39C50E40226436",
    "unpackable": false,
    "non_rotatable": false,
    "external_id": null,
    "barcode": {
      "symbology": "QR Code",
      "data": "3E39C50E40226436",
      "url": "https://sandbox.tiramizoo.com/api/v1/barcodes/3E39C50E40226436.png"
    },
    "pickup_state": "pending"
  },
  ...
]
  • barcode.symbology - QR Code

  • barcode.data - Data encoded

  • barcode.url - URL to download QR code label

Example barcode

Barcode

Tracking Page

For the successfully created order the response contains tracking_url parameter.

{
  ...
  "tracking_url" : "https://sandbox.tiramizoo.com/orders/TRACKING_CODE/tracking_status",
  ...
}

TRACKING_CODE - uniq, alphanumeric tracking code. Pattern:

  • the length could be from 8 to 13 characters *

  • the first 1 to 5 characters are associated with the account or are configurable *

  • last 8 characters are randomly generated and always uppercased

* - If your account has feature api_enabled than you are able to edit tracking code prefix, called short_code. Short-code must contain 1 to 5 alphanumeric characters. To do so please go to account’s dashboard

Examples:

  • DWJHREONREDW7 - with short_code provided DWJHR

  • EONREDW7 - without short_code:

On tracking page, you can check the current status of your order. Tracking Page example

Shipment module

Order creation process

  • get contact’s (recipient’s) time_window identifier - optional, unless you need to check time windows configuration,

  • create an order - using recipient identifier post data about the order.

Tiramizoo is using time windows to schedule a delivery to the destination location. Each contact has collection of time window identifiers, which are connecting the contact to configuration of delivery time windows.

In the Shipment module the time windows usually identify the region for specific delivery courier.

The lifecycle of creating a Shipment Order consists of the following stages:

Get Contact Time Window

You should have Contact identifier in your system, which you should use in request

GET shipment/api/v1/time_windows?api_token=abc123&contact_identifier=72999

As response you will receive a collection of time windows, where you can find time_window label (for each time_window) and identifier:

{
  ...
  "label": "704",
  "identifier": "704_2025-10-25"
  ...
}

select the time window with the parameters you want and go to the next step.

Creating a Shipment OrderDraft:

To create an Order you need:

  • Contact identifier - put it into recipient_identifier parameter,

  • commercial order - put it into secondary_external_id parameter,

  • time window identifier (frome the step before) - put it into time_window_identifier parameter,

  • packages data - list of objects with name, quantity and description, put it into package_bundles_attributes parameter

POST shipment/api/v1/orders?api_token=abc123

Body:

{
  "recipient_identifier": "72999",
  "secondary_external_id": "010XYZ",
  "time_window_identifier": "704_2025-10-25",
  "package_bundles_attributes": [
    { "name": "Packstück", "quantity": 1, "description": "Wipers" }
  ]
}

If you get the response 201 then the Order is created.

Closing a DispatcherTour:

This step should be done after finishing creating orders and after finishing the pick_ups. Closing DispatcherTour allows to optimize (calculate) the tour plan for courier.

In below request the 704 is a time_window label you used before and a date is a date of chosen time_window.

PATCH /dispatcher_tours/704/close?api_token=abc123&date=2025-12-25

Shipment Orders

Orders allows you to schedule a delivery to specific contact in selected region on specific date (represented by time window identifier).

Create Orders
POST/orders

The orders API provides a way to create an order and assign it to specific route based on time window label.

Request payload

Attribute name Type Required Description
recipient_identifier string X Identifier of the recipient the order should be sent from.
secondary_external_id string X Commercial order. Provided by sender. Exampels: '123456', 'ABC123'
time_window_identifier string X Identifier of time window, in format label_YYYY-MM-DD, where label is the label of the route and matching courier. Example: 701_2025-12-15, DIRECT01_2025-01-30
package_bundles_attributes: array X Array of package bundles for the order. Each package bundle is a hash with the following keys:
name string X Identifier of the package bundle
quantity integer X Number of packages in the bundle
description string X Description visible on the label

Use /shipment/api/v1/orders URL path.

The api token can be passed either in the headers on in the payload

Example URI

POST https://sandbox.tiramizoo.com/api/v1/orders
Request  Create Order
HideShow
Headers
Content-Type: application/json
Api-Token: apitoken123
Body
{
  "api_token": "apitoken123",
  "recipient_identifier": "12345",
  "secondary_external_id": "ABC123",
  "time_window_identifier": "101_2025-12-15",
  "package_bundles": [
    "...",
    {
      "name": "Packstück",
      "quantity": 1,
      "description": "engine 001"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "api_token": {
      "type": "string",
      "description": "Authentication token"
    },
    "recipient_identifier": {
      "type": "string",
      "description": "Identifier of the recipient."
    },
    "secondary_external_id": {
      "type": "string",
      "description": "Commercial order. Provided by sender."
    },
    "time_window_identifier": {
      "type": "string",
      "description": "Compound time window identifier, consisting of dentifier of the time window (courier assigned to the route) and the date in ISO8601 format, in format \"<identifier>_<date>."
    },
    "package_bundles": {
      "type": "array",
      "items": [
        {
          "type": "string"
        },
        {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "description": "Name of package type to use, refer to configuration for available values."
            },
            "quantity": {
              "type": "number",
              "description": "Number of packages."
            },
            "description": {
              "type": "string",
              "description": "Description, visible on the label."
            }
          },
          "required": [
            "name",
            "quantity",
            "description"
          ]
        }
      ],
      "description": "Array of package bundles with following attributes:"
    }
  },
  "required": [
    "recipient_identifier",
    "secondary_external_id",
    "time_window_identifier"
  ]
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "identifier": "7NCDAK",
  "external_id": "QaJuaS4cVnwe",
  "secondary_external_id": "123",
  "uuid": "7d5f5e9c-f51a-4932-9d69-36d0456316ed",
  "state": "created",
  "delivery_type": "standard",
  "courier_information": "",
  "web_hook_url": null,
  "hazard_index": 0,
  "time_zone": "Europe/Berlin",
  "created_at": "2025-10-15T23:50:48+02:00",
  "dispatched_at": null,
  "picked_up_at": null,
  "pickup_failed_at": null,
  "delivered_to": null,
  "delivered_at": null,
  "delivery_failed_at": null,
  "returned_at": null,
  "cancelled_at": null,
  "cancellation_reason": null,
  "tracking_code": "123-456-789",
  "cancellable": false,
  "pickup": {
    "name": "Warehouse",
    "phone_number": null,
    "email": null,
    "address_line": "Platz der Republik 1",
    "city": "Berlin",
    "postal_code": "11011",
    "country_code": "de",
    "after": "2025-10-15T09:20:00+02:00",
    "before": "2025-10-15T09:50:00+02:00",
    "requirements": [],
    "information": null,
    "eta": null,
    "allowed_delay": 0,
    "contact_identifier": "7777777"
  },
  "delivery": {
    "name": "Flower Girl",
    "phone_number": null,
    "email": null,
    "address_line": "Alexanderplatz 1",
    "city": "Berlin",
    "postal_code": "10178",
    "country_code": "de",
    "after": "2025-10-15T12:00:00+02:00",
    "before": "2025-10-15T14:00:00+02:00",
    "time_window_label": "703",
    "requirements": [
      {
        "type": "courier_requirements",
        "value": "703"
      },
      {
        "type": "signature"
      }
    ],
    "information": null,
    "eta": null,
    "allowed_delay": 180,
    "contact_identifier": "1000054"
  },
  "packages": [
    {
      "width": 3,
      "height": 15,
      "length": 10,
      "weight": "1.0",
      "description": "Packstück - engine",
      "category": null,
      "identifier": "4AB1DFADDEFC7860",
      "unpackable": false,
      "non_rotatable": false,
      "external_id": "c1ead1d50c6f",
      "barcode": {
        "symbology": "QR Code",
        "data": "4AB1DFADDEFC7860",
        "url": "https://staging.tiramizoo.com/api/v1/barcodes/4AB1DFADDEFC7860.png"
      },
      "state": "pending",
      "quantity": 1
    }
  ],
  "labels_url": "https://staging.tiramizoo.com/orders/GY2QWHLC9W1PM/labels.pdf",
  "events": [],
  "history": [],
  "order_legs": [
    {
      "state": "created",
      "tour_identifier": null,
      "courier_identifier": null,
      "courier_name": null,
      "courier_company_identifier": null,
      "courier_company_name": null,
      "signatures": {
        "pickup": {
          "url": null,
          "name": null
        },
        "delivery": {
          "url": null,
          "name": null
        },
        "return": {
          "url": null,
          "name": null
        }
      }
    },
    {
      "state": "created",
      "tour_identifier": null,
      "courier_identifier": null,
      "courier_name": null,
      "courier_company_identifier": null,
      "courier_company_name": null,
      "signatures": {
        "pickup": {
          "url": null,
          "name": null
        },
        "delivery": {
          "url": null,
          "name": null
        },
        "return": {
          "url": null,
          "name": null
        }
      }
    }
  ]
}
Response  422
HideShow

Validation error - some of the required parameters are missing or invalid in the request.

Headers
Content-Type: application/json
Body
[
  {
    "field": "recipient_identifier",
    "code": "",
    "message": "..."
  },
  {
    "field": "base",
    "code": "dispatcher_tour_closed",
    "message": "dispatcher tour closed"
  },
  {
    "field": "base",
    "code": "invlaid_package_bundle",
    "message": "..."
  }
]
Response  401
HideShow

Unauthorized request

Create Order Draft
POST/order_drafts


Attribute name Type Required Description
recipient_identifier string X Identifier of the recipient the order should be sent from.
secondary_external_id string X Commercial order. Provided by sender. Exampels: '123456', 'ABC123'
initial_packages_description string Description for all packages in the order (visible on the label)

Use /shipment/api/v1/order_drafts URL path.

The api token can be passed either in the headers on in the payload

Example URI

POST https://sandbox.tiramizoo.com/api/v1/order_drafts
Request  Create Order Draft
HideShow
Headers
Content-Type: application/json
Api-Token: apitoken123
Body
{
  "api_token": "apitoken123",
  "recipient_identifier": "12345",
  "secondary_external_id": "ABC123",
  "initial_packages_description": "Some description"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "api_token": {
      "type": "string",
      "description": "Authentication token"
    },
    "recipient_identifier": {
      "type": "string",
      "description": "Identifier of the recipient the order should be sent to."
    },
    "secondary_external_id": {
      "type": "string",
      "description": "Commercial order. Provided by sender. Exampels: '123456', 'ABC123'"
    },
    "initial_packages_description": {
      "type": "string",
      "description": "An optional parameter, description for all packages in the order (visible on the label)"
    }
  }
}
Response  204
HideShow

Order draft created successfully

Headers
Content-Type: application/json
Response  422
HideShow

422 Validation Error - some of required parameters are missing or invalid in the request.

Headers
Content-Type: application/json
Response  401
HideShow

Unauthorized request

Shipment Contacts

Contacts represent locations you can schedule a delivery to, with location, so you don’t have to repeat all the data and only refer to the contact by identifier.

Get Contact
GET/contacts/{id}{?api_token}

Use /shipment/api/v1/contacts/{id} URL path.

Example URI

GET https://sandbox.tiramizoo.com/api/v1/contacts/1234?api_token=apitoken123
URI Parameters
HideShow
api_token
string (optional) Example: apitoken123

Authentication Account token. Can be passed in the header instead.

id
string (required) Example: 1234

Contact identifier.

Request
HideShow
Headers
Content-Type: application/json
Api-Token: apitok123
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "name": "Name Surname",
  "address_line": "Address Line 123",
  "postal_code": "12345",
  "city": "Magdeburg",
  "country_code": "de",
  "identifier": "123123123",
  "group_id": "AN",
  "email": null,
  "phone_number": "n/a",
  "lat": 52.123456,
  "lng": 11.123456,
  "courier_information": null,
  "service_time_windows": [],
  "safe_place_permissions": [],
  "path": "/dashboard/contacts/72299/edit",
  "courier_requirements": []
}
Response  404
HideShow

404 Not Found - Cannot find matching Contact record.

Headers
Content-Type: application/json
Body
{
  "code": "not_found",
  "message": "Record not found"
}

Get Time Window
GET/time_windows/{?api_token,delivery_contact_identifier,from_date,to_date}

If the Contact does not have assigned time windows, the Account’s time windows will be returned.

Use /shipment/api/v1/time_windows URL path.

Example URI

GET https://sandbox.tiramizoo.com/api/v1/time_windows/?api_token=apitoken123&delivery_contact_identifier=1234&from_date=2018-04-10&to_date=2018-04-15
URI Parameters
HideShow
api_token
string (optional) Example: apitoken123

Authentication Account token. Can be passed in the header instead.

delivery_contact_identifier
string (required) Example: 1234

Contact identifier.

from_date
string (optional) Default: today Example: 2018-04-10

Date as UTC in ISO 8601 format. Specifies the start time for time windows.

to_date
string (optional) Default: 7 days from today Example: 2018-04-15

Date as UTC in ISO 8601 format. Specifies the end time for time windows.

Request
HideShow
Headers
Content-Type: application/json
Api-Token: apitoken123
Response  200
HideShow
Headers
Content-Type: application/json
Body
[
  {
    "delivery_type": "standard",
    "cut_off": 10,
    "cut_off_two_man_handling": 0,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "price": "10.0",
    "preferred": true,
    "pickup": {
      "from": "2025-10-07T10:00:00Z",
      "to": "2025-10-07T10:15:00Z"
    },
    "delivery": {
      "from": "2025-10-07T10:00:00Z",
      "to": "2025-10-07T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": "704",
    "identifier": "704_2025-10-07"
  },
  {
    "delivery_type": "standard",
    "cut_off": 10,
    "cut_off_two_man_handling": 0,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "price": "10.0",
    "preferred": true,
    "pickup": {
      "from": "2025-10-08T10:00:00Z",
      "to": "2025-10-08T10:15:00Z"
    },
    "delivery": {
      "from": "2025-10-08T10:00:00Z",
      "to": "2025-10-08T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": "704",
    "identifier": "704_2025-10-08"
  },
  {
    "delivery_type": "standard",
    "cut_off": 10,
    "cut_off_two_man_handling": 0,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "price": "10.0",
    "preferred": true,
    "pickup": {
      "from": "2025-10-09T10:00:00Z",
      "to": "2025-10-09T10:15:00Z"
    },
    "delivery": {
      "from": "2025-10-09T10:00:00Z",
      "to": "2025-10-09T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": "704",
    "identifier": "704_2025-10-09"
  },
  {
    "delivery_type": "standard",
    "cut_off": 10,
    "cut_off_two_man_handling": 0,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "price": "10.0",
    "preferred": true,
    "pickup": {
      "from": "2025-10-10T10:00:00Z",
      "to": "2025-10-10T10:15:00Z"
    },
    "delivery": {
      "from": "2025-10-10T10:00:00Z",
      "to": "2025-10-10T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": "704",
    "identifier": "704_2025-10-10"
  },
  {
    "delivery_type": "standard",
    "cut_off": 10,
    "cut_off_two_man_handling": 0,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "price": "10.0",
    "preferred": true,
    "pickup": {
      "from": "2025-10-13T10:00:00Z",
      "to": "2025-10-13T10:15:00Z"
    },
    "delivery": {
      "from": "2025-10-13T10:00:00Z",
      "to": "2025-10-13T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": "704",
    "identifier": "704_2025-10-13"
  },
  {
    "delivery_type": "standard",
    "cut_off": 10,
    "cut_off_two_man_handling": 0,
    "weekend": false,
    "order_limit_exceeded": false,
    "order_near_limit_exceeded": false,
    "used_availability_percentage": 0,
    "availability": "open",
    "precalculation_in_progress": false,
    "price": "10.0",
    "preferred": true,
    "pickup": {
      "from": "2025-10-14T10:00:00Z",
      "to": "2025-10-14T10:15:00Z"
    },
    "delivery": {
      "from": "2025-10-14T10:00:00Z",
      "to": "2025-10-14T12:00:00Z"
    },
    "max_delivery_available_km": 35,
    "label": "704",
    "identifier": "704_2025-10-14"
  }
]
Response  422
HideShow

422 Validation Error - some of required parameters are missing or have invalid value.

Headers
Content-Type: application/json
Body
{
  "code": "invalid_parameter",
  "message": "delivery contact not found"
}

Shipment Dispatcher Tour

Dispatcher tour is a tour schuled to run on specific date and time, connecting couriers through handover location if needed. The dispatcher tour contains collection of orders created beforehand. The tour the order is assigned to is selected by time window identifier.

Close Dispatcher Tour
PATCH/dispatcher_tours/{label}/close{?api_token,date}

Dispatcher Tour should be closed after finishing creating orders for tour.

Closed Dispatcher Tour blocks possibility to add new order to the tour. It also allows courier finish loading and allows to optimize (calculate) the routes for couriers involved in the tour.

Use /shipment/api/v1/dispatcher_tours/{label}/close URL path.

Example URI

PATCH https://sandbox.tiramizoo.com/api/v1/dispatcher_tours/1234/close?api_token=apitoken123&date=2018-04-10
URI Parameters
HideShow
api_token
string (optional) Example: apitoken123

Authentication Account token. Can be passed in the header instead.

label
string (required) Example: 1234

The time_window label.

date
string (optional) Example: 2018-04-10

Date as UTC in ISO8601 format. Date of the dispatcher tour.

Request
HideShow
Headers
Content-Type: application/json
Api-Token: apitok123
Response  204
HideShow
Headers
Content-Type: application/json
Response  404
HideShow

404 Not Found Error - cannot find Dispatcher Tour record to close.

Headers
Content-Type: application/json
Body
{
  "code": "not_found",
  "message": "Record not found"
}
Response  422
HideShow

422 Validation Error - some of required parameters are missing or have invalid value.

Headers
Content-Type: application/json
Body
{
  "code": "bad_request",
  "message": "required parameter missing: date"
}

Generated by aglio on 30 Oct 2025