Skip to main content

Shipping Profiles

Shipping profiles are practical tools used to set specific rules for how products are shipped. They define logistical details for different types of orders or customers. By using shipping profiles partners make the shipping process more flexible to adapt to the variety of customer needs and by that improve the customer satisfaction.

Partner endpoints for shipping profiles

Shipping profiles can now be created, updated and deleted using the ShippingProfiles-API. Information about the created shipping profiles can also be retrieved. Additionally, the API offers detailed control over delivery times, for example Cut-Off-Time, working days and also the delivery time is split up into two the different parameters defaultProcessingTime and transportTime ensuring precise and efficient management of shipping details.

To link SKUs to shipping profiles, please use the: Availability-interface.

Common use cases

Create a new shipping profile

A Shipping profile can be created at any time after ensuring it is not a duplicate. To create a shipping profile this REST call can be used.

POST /v1/shipping-profiles

Update an existing shipping profile

A shipping profile can be updated at any time. deliveryType is the only field which cannot be updated. In this case, a new shipping profile with the respective deliveryType must be created. To update a shipping profile this REST call can be used.

PUT /v1/shipping-profiles/{shippingProfileId}

Delete a shipping profile

A shipping profile can be deleted at any time. A deleted shipping profile is final, no restoration possible. To delete a shipping profile this REST call can be used.

DELETE /v1/shipping-profiles/{shippingProfileId}

Retrieve a list of all shipping profiles

Fetch all shipping profiles. The result will have 200 shipping profiles max. The rest of the profiles are paginated.

GET /v1/shipping-profiles

Retrieve a specific shipping profile

Fetch a single shipping profile by shippingProfileId.

GET /v1/shipping-profiles/{shippingProfileId}

Rate Limiting

Endpoint pathHTTP methodMax requests per time unit
/v1/shipping-profilesPOST10 per second
/v1/shipping-profilesGET10 per second
/v1/shipping-profiles/{shippingProfileId}GET10 per second
/v1/shipping-profiles/{shippingProfileId}PUT10 per second
/v1/shipping-profiles/{shippingProfileId}DELETE10 per second

Pagination

Pagination is used to limit the number of shipping profiles returned in a single response. By default, the response is paginated with a page size of 200. To navigate through the pages, use the cursor parameter in the query string.

{
"results": [
{
"shippingProfileId": "38427776-7383-4d65-82c9-dbe949d0573a",
"shippingProfileName": "TestShippingProfile",
"workingDays": [ "Monday" ],
"orderCutoff": "23:30",
"deliveryType": "PARCEL",
"defaultProcessingTime": 2,
"transportTime": 2
}
],
"links": {
"rel": "next",
"href": "/v1/shipping-profiles?cursor=YmExMjU4MGMtZGJhNS00NTY5LWI4NWMtN2RmNmJmMmU2Mzc1sWkpQYnA="
}
}

To fetch the next set of shipping profiles, use the cursor value from the links object in the response:

GET /v1/shipping-profiles?cursor=YmExMjU4MGMtZGJhNS00NTY5LWI4NWMtN2RmNmJmMmU2Mzc1sWkpQYnA=

If there are more shipping profiles to be fetched, the response will include a links object with a href field containing the URL for the next page.

Glossary

  • shippingProfileName - shippingProfileName allows the partner to assign a descriptive and unique name for a shipping profile
  • workingDays - workingDays describe the specific days of the week on which the partner is available to process orders
  • deliveryType - DeliveryType describes how the product is being shipped. At the moment we support "PARCEL", "FORWARDER_PREFERREDLOCATION", "FORWARDER_CURBSIDE" and "FORWARDER_HEAVYDUTY"
  • orderCutoff - OrderCutoff specifies the time for orders to be placed, so the ProcessingTime starts within the same day.
    This must be in half hour duration in (HH:MM) 24 hours format. The cut-off time must be specified in CET time.
  • transportTime - The time the carrier needs from collecting the order from partners warehouse until the first delivery attempt. Must be between 1 to 99.
    If more than 72 days are transmitted in the TransportTime, the product is marked as sold out on otto.de and cannot be ordered. This is also the case if the DefaultProcessingTime and TransportTime add up to a value greater than 72.
  • defaultProcessingTime - The time the partner needs to prepare the order for a shipment. Must be between 1 to 99.
    If more than 72 days are transmitted in the DefaultProcessingTime, the product is marked as sold out on otto.de and cannot be ordered. This is also the case if the DefaultProcessingTime and TransportTime add up to a value greater than 72. "1" day is considered as same-day shipping (0 days) until the cut-off time is reached.