Quotation with minimum details

A complete quotation request and response with only the mandatory fields.

A quotation for a domestic shipment (Berlin → Paderborn, one pallet) with only the mandatory fields:

🧪

Try it in the sandbox

This example uses the sandbox (https://api-sandbox.cargoboard.com), so no real transport is triggered. Use an upcoming pickup date — the dates below are examples only.

Request

curl --request POST \
     --url https://api-sandbox.cargoboard.com/v1/quotations \
     --header 'Content-Type: application/json' \
     --header 'X-API-KEY: YourKeyHere' \
     --data '
{
     "product": "STANDARD",
     "shipper": {
          "address": {
               "postCode": "10115",
               "countryCode": "DE",
               "city": "Berlin"
          },
          "pickupOn": "2024-12-11"
     },
     "consignee": {
          "address": {
               "countryCode": "DE",
               "postCode": "33100",
               "city": "Paderborn"
          }
     },
     "lines": [
          {
               "unitQuantity": 1,
               "unitPackageType": "EP",
               "content": "furniture",
               "unitLength": 120,
               "unitWidth": 80,
               "unitHeight": 120,
               "unitWeight": 200
          }
     ]
}
'

Response

{
    "data": {
        "id": "cm33264tt04i0qt0dluradaf6",
        "costItems": [
            {
                "description": "Frachtkosten",
                "type": "SHIPMENT",
                "subtype": null,
                "price": {
                    "amount": 90.18,
                    "currency": "EUR"
                },
                "pricePartVat": {
                    "amount": 17.13,
                    "percentage": 19,
                    "currency": "EUR"
                }
            },
            {
                "description": "Klimaschutzbeitrag",
                "type": "CLIMATE_COMPENSATION_SURCHARGE",
                "subtype": null,
                "price": {
                    "amount": 0.67,
                    "currency": "EUR"
                },
                "pricePartVat": {
                    "amount": 0.13,
                    "percentage": 19,
                    "currency": "EUR"
                }
            }
        ],
        "pickupOn": "2024-12-11T07:00:00.000Z",
        "pickupAtFrom": "2024-12-11T07:00:00.000Z",
        "pickupAtUntil": "2024-12-11T15:00:00.000Z",
        "price": {
            "amount": 90.85,
            "currency": "EUR",
            "grossAmount": 108.11,
            "vatAmount": 17.26
        },
        "priceStandard": {
            "amount": 90.85,
            "currency": "EUR"
        },
        "runtime": {
            "daysMin": 1,
            "daysMax": 2
        },
        "delivery": {
            "earliest": "2024-12-12T07:00:00.000Z",
            "latest": "2024-12-13T15:00:00.000Z"
        },
        "product": "STANDARD",
        "transportType": "GROUPAGE",
        "co2Emission": {
            "amount": 0.67,
            "value": 33.88,
            "unit": "KG"
        }
    },
    "links": [
        {
            "description": "Get another quotation.",
            "href": "https://api-sandbox.cargoboard.com/v1/quotations",
            "method": "POST",
            "rel": "self"
        },
        {
            "rel": "quotationBook",
            "method": "POST",
            "description": "Book transport based on this quotation.",
            "href": "https://api-sandbox.cargoboard.com/v1/quotations/cm33264tt04i0qt0dluradaf6/book"
        }
    ]
}

What's in the response

  • data.id — the quotation ID. Use it to get the quotation again or to book it.
  • data.price — net price (amount), plus vatAmount and grossAmount. The individual charges are listed in data.costItems.
  • data.runtime and data.delivery — expected transit time and delivery window.
  • links — follow-up actions. The quotationBook link books an order based on this quotation.

Next steps