Addons
Additional services from transporters and how to use them
Addons are optional services that can be attached to a shipment booking. These addons provide flexibility for specific delivery requirements, such as requiring a recipient signature, enabling notifications, or specifying delivery instructions.
Some examples include:
- ID Check: Verifies the recipient's identity using a national proof of identity (available, for example, with )Budbee home
- Insurance: Adds insurance coverage to the shipment (available, for example, with )DHL Parcel
- Doorcode: Specifies a door code for secure delivery locations (available, for example, with )Early Bird
Skrym Universal Addon Structure
Skrym provides a standardized layer of addons to ensure a consistent implementation, regardless of the transporter used. This abstraction allows you to work with multiple transporters while maintaining uniform addon behavior in your API requests.
Looking at the examples above, this means the following:
- Instead of having to pass in
identificationCheckRequired
, which is the term used by Budbee, you can pass in the universal codeidentification-by-national-id
, which will also work for any other transporter that offers this addon. - By passing in
freight-insurance
, Skrym will automatically translate the addon to the terms used by DHL. - Using
door-code
will work for any transporter that supports this addon, not just Early Bird.
This mapping ensures that customers can apply a single Skrym addon without needing to worry about transporter-specific implementations.
Types of Addons
Addons in the system can have different data types depending on their purpose.
NoteWhile the Skrym codes for addons are the same across transporters, the data types can sometimes vary between transporters due to additional data being needed.
Boolean
These addons toggle specific options on or off. For our example above with true
or false
value.
Note that you need to pass these as strings due to a constraint on our side. For example, you would include the following in your request to our Booking API.
{"addons": {"identification-by-national-id": "true"}}
String
Some addons require textual input, such as door-code
for enabling access to the recipient's apartment building.
In this case, you simply pass the door code as a string in your request.
{"addons": {"door-code": "1234"}}
Number
Used for numeric values, such as specifying the number of retries for a delivery attempt.
Note that you need to pass these as strings due to a constraint on our side. For example, you would include the following in your request to our Booking API.
{"addons": {"number-of-delivery-retries": "3"}}
Enum
Predefined selectable values, such as different notification methods. Note that the available options are not consistent across transporters.
For example, using this with doorbell
, knock-on-door
, or none
.
{"addons": {"notify-home-delivery-by": "doorbell"}}
Object
These addons can contain multiple properties, such as notify-before-delivery-by-driver-call
, which requires you to provide a valid phone number.
{"addons": {"notify-before-delivery-by-driver-call": {"phone": "+46701234567"}}}
Get available addons
To simplify the process of finding which addon options are available for a given transport method, you can use our utility endpoint.
If you have any questions or need help setting up addons, don't hesitate to reach out to us.