# Book a transport

Endpoint to book a transport

Endpoint: POST /booking/publish
Version: 1.0.0
Security: bearerAuth

## Request fields (application/json):

  - `items` (array)

  - `items.quantity` (integer)
    Example: 3

  - `items.length` (integer)
    Example: 120

  - `items.width` (integer)
    Example: 100

  - `items.height` (integer)
    Example: 80

  - `items.weight` (integer)
    Example: 320

  - `items.name` (string)
    Example: "Product Name"

  - `vehicle_type` (integer)
    Example: 11

  - `additional_information` (string)
    Example: "Attention: highly flammable goods"

  - `loadings` (array)

  - `loadings.company_name` (string)
    Example: "zipmend GmbH"

  - `loadings.first_name` (string)
    Example: "John"

  - `loadings.last_name` (string)
    Example: "Smith"

  - `loadings.address_line_1` (string)
    Example: "Große Reichenstraße 27"

  - `loadings.address_line_2` (string)
    Example: "Floor 3"

  - `loadings.country` (string)
    Example: "DE"

  - `loadings.zip` (string)
    Example: "28779"

  - `loadings.city` (string)
    Example: "Hamburg"

  - `loadings.phone` (string)
    Phone number (optional).
    Example: "+491234567890"

  - `loadings.reference_number` (string)
    Example: "Ref12345"

  - `loadings.dates` (array)

  - `loadings.dates.start` (string)
    Example: "2024-09-19T09:00:00+02:00"

  - `loadings.dates.end` (string)
    Example: "2024-09-19T09:00:00+02:00"

  - `unloadings` (array)

## Response 200 fields (application/json):

  - `message` (string, required)
    Example: "Booking created successfully."

  - `data` (object, required)

  - `data.id` (string, required)
    Example: "68ca7c622436dd852703e2b2"

  - `data.order_number` (integer, required)
    Example: 200949

  - `data.items` (array, required)

  - `data.items.category` (string)
    Example: "other"

  - `data.items.is_stackable` (boolean)

  - `data.items.quantity` (integer)
    Example: 1

  - `data.items.name` (string)
    Example: "Tannenbaum"

  - `data.items.weight` (integer)
    Example: 320

  - `data.items.length` (integer)
    Example: 120

  - `data.items.width` (integer)
    Example: 100

  - `data.items.height` (integer)
    Example: 80

  - `data.additional_information` (string)
    Example: "Achtung leicht entzündliche Ware"

  - `data.loadings` (array, required)

  - `data.unloadings` (array, required)

## Response 401 fields (application/json):

  - `message` (string, required)
    A descriptive error message.
    Example: "Bad Request"

  - `errors` (object, required)


