Create Shipment
POST
https://api.cargopanel.co/v1/shipments/domesticPOST
https://sandbox-api.cargopanel.co/v1/shipments/domesticCreate a new domestic shipment within Turkey and receive a shipment ID.
This API requires a contract. Get in touch with cargopanel Support Team.
Sandbox API is used for testing purposes. It does not create a real shipment.
Request Fields
modulestringrequiredModule name.
packagesarrayrequiredArray of package details. Each package must include:
quantity- Number of pieces (number)weight- Weight in kg (number)dimensions.width- Width in cm (number)dimensions.length- Length in cm (number)dimensions.height- Height in cm (number)dimensions.unit- Dimension unit (string, e.g.cm)
chargeableWeightnumberrequiredTotal billable weight in kg.
carrierobjectrequiredCarrier information.
id- Carrier ID identifier. You can find the full list of supported carrier ID on the Carriers page. (string)
senderobjectrequiredSender information. Both sender and receiver must be within Turkey.
firstName- First name (string)lastName- Last name (string)companyName- Company name (string, optional)email- Email (string)phone.code- Phone country code (string)phone.number- Phone number (string)address.line1- Address line 1 (string)address.city- City (string)address.zipCode- Zip code (string)address.country.code- Country code, must beTR(string)
receiverobjectrequiredReceiver information. Must be within Turkey.
firstName- First name (string)lastName- Last name (string)companyName- Company name (string, optional)email- Email (string)phone.code- Phone country code (string)phone.number- Phone number (string)address.line1- Address line 1 (string)address.city- City (string)address.zipCode- Zip code (string)address.country.code- Country code, must beTR(string)
Request Body
The request body should be a JSON object containing the following structure:
{
"module": "domestic",
"packages": [
{
"quantity": <number>,
"weight": <number>,
"dimensions": {
"width": <number>,
"length": <number>,
"height": <number>,
"unit": "<string>"
}
}
],
"chargeableWeight": <number>,
"carrier": {
"id": "<string>"
},
"sender": {
"firstName": "<string>",
"lastName": "<string>",
"companyName": "<string>",
"phone": {
"code": "<string>",
"number": "<string>"
},
"email": "<string>",
"address": {
"line1": "<string>",
"city": "<string>",
"zipCode": "<string>",
"country": {
"name": "Turkey",
"code": "TR"
}
}
},
"receiver": {
"firstName": "<string>",
"lastName": "<string>",
"companyName": "<string>",
"phone": {
"code": "<string>",
"number": "<string>"
},
"email": "<string>",
"address": {
"line1": "<string>",
"city": "<string>",
"zipCode": "<string>",
"country": {
"name": "Turkey",
"code": "TR"
}
}
}
}Example Response
201
{
"id": "98765432",
"carrier": {
"id": "YURTICI_KARGO",
"name": "Yurtiçi Kargo",
"price": 0,
"currency": "TRY"
},
"sender": {
"country": "TR",
"city": "İstanbul"
},
"receiver": {
"country": "TR",
"city": "Ankara"
},
"chargeableWeight": 5,
"status": [
{
"status": "pending",
"date": "2026-04-07T10:32:41.503Z",
"milestone": "pending"
}
],
"createdAt": "2026-04-07T10:32:41.503Z"
}Responses
201Shipment successfully created
400Invalid request (missing or incorrect parameters)
401Unauthorized (invalid or missing token)
422Validation error (submitted data is not valid)
500Internal server error