Skip to main content

GetShippingMethods

Retrieve available shipping methods for a destination country via the Shipping API. The endpoint queries our shipping provider checkout options and returns normalized shipping methods.

Provide exactly one shipment input: either the models array with modelId values, or the package object with package information. Do not send both in the same request.

API Playground

Get checkout shipping methods for a destination country. Provide either models or package information, not both.

Your authentication token will be sent as: Authorization: Bearer <token>
Destination country code (ISO-2, uppercase).
Array of models with modelId and quantity. Provide this OR package, not both.
Package information. Provide this OR models, not both. Weight is required in grams; dimensions are centimeters.

Endpoint

POST https://devapi.marketiger3d.com/v2/Shipping/GetShippingMethods

Authentication

This endpoint requires a Bearer token. Include the token in the Authorization header:

Authorization: Bearer <your_access_token>

Request Body

Using model IDs:

{
"country": "NL",
"models": [
{
"modelId": "123e4567-e89b-12d3-a456-426614174000",
"quantity": 1
}
]
}

Using package information:

{
"country": "NL",
"package": {
"weight": 1000,
"length": 20,
"width": 15,
"height": 10
}
}

Request Body Schema

FieldTypeRequiredDescription
countrystringYesDestination country code (ISO-2, uppercase).
modelsarrayRequired without packageArray of model orders (same structure as used when creating orders). Do not send with package.
models[].modelIdstringYes, when using modelsGUID of the model that will be shipped.
models[].quantitynumberYes, when using modelsQuantity of the model (minimum 1).
packageobjectRequired without modelsPackage details for a shipment that is not based on uploaded models. Do not send with models.
package.weightnumberYes, when using packagePackage weight in grams. Must be greater than 0.
package.lengthnumberOptionalPackage length in centimeters. If any dimension is supplied, all dimensions are required.
package.widthnumberOptionalPackage width in centimeters. If any dimension is supplied, all dimensions are required.
package.heightnumberOptionalPackage height in centimeters. If any dimension is supplied, all dimensions are required.

Package Data Example

Use the package object when you already know the parcel details and do not want the API to derive the shipment from uploaded models.

Minimal package data:

{
"country": "NL",
"package": {
"weight": 1000
}
}

Package data with dimensions:

{
"country": "NL",
"package": {
"weight": 1000,
"length": 20,
"width": 15,
"height": 10
}
}

Example Request

Using model IDs:

curl -X POST "https://devapi.marketiger3d.com/v2/Shipping/GetShippingMethods" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-d '{
"country": "US",
"models": [
{ "modelId": "123e4567-e89b-12d3-a456-426614174000", "quantity": 1 },
{ "modelId": "223e4567-e89b-12d3-a456-426614174000", "quantity": 2 }
]
}'

Using package information:

curl -X POST "https://devapi.marketiger3d.com/v2/Shipping/GetShippingMethods" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-d '{
"country": "US",
"package": {
"weight": 1000,
"length": 20,
"width": 15,
"height": 10
}
}'

Success Response (200 OK)

{
"success": true,
"data": {
"methods": [
{
"shippingMethodId": 9059,
"carrier": "dhl",
"method": "home_delivery",
"servicePoint": false,
"price": 850,
"minDeliveryTime": "2025-12-18T00:00:00Z",
"maxDeliveryTime": "2025-12-20T00:00:00Z",
"estimatedDeliveryTime": "2025-12-18T00:00:00Z"
}
]
}
}

Response Schema

FieldTypeDescription
successbooleanIndicates whether the request succeeded.
dataobjectContainer for the response payload.
data.methodsarrayArray of available shipping methods.
data.methods[].shippingMethodIdnumberShipping method ID to use when creating an order.
data.methods[].carrierstringCarrier code (e.g., dhl).
data.methods[].methodstringDelivery method (e.g., home_delivery).
data.methods[].servicePointbooleanWhether the method uses a service point.
data.methods[].pricenumberPrice in cents.
data.methods[].minDeliveryTimestringEarliest expected delivery time (ISO 8601 UTC).
data.methods[].maxDeliveryTimestringLatest expected delivery time (ISO 8601 UTC).
data.methods[].estimatedDeliveryTimestringEstimated delivery time (ISO 8601 UTC).
errorobjectPresent when success is false; contains type and message.

Error Responses

Validation errors return HTTP 400 Bad Request with success: false in the response body.

{
"success": false,
"error": {
"type": "INCORRECT_PARAMETERS",
"message": "Request body is empty."
}
}
{
"success": false,
"error": {
"type": "INCORRECT_PARAMETERS",
"message": "Country is not set."
}
}
{
"success": false,
"error": {
"type": "INCORRECT_PARAMETERS",
"message": "Either models or package is required."
}
}
{
"success": false,
"error": {
"type": "INCORRECT_PARAMETERS",
"message": "Package weight is required and must be greater than 0 grams."
}
}
{
"success": false,
"error": {
"type": "INCORRECT_PARAMETERS",
"message": "Package length, width, and height are required when dimensions are supplied and must be greater than 0 centimeters."
}
}
{
"success": false,
"error": {
"type": "INTERNAL_ERROR",
"message": "Error message from exception"
}
}

Note: Always check the success field in the response body to determine if the request was successful.

Notes

  • country is uppercased on the server before querying the shipping provider.
  • methods is the normalized list of available shipping methods for the destination country.
  • Provide either models or package; do not provide both.
  • When using models, the API uses the model ID array for validation and applies the default shipping weight behind the scenes.
  • When using package, weight is required in grams. Dimensions are optional, but length, width, and height must be supplied together when any dimension is supplied.