DHL Express Overview

Please find the documentation for the DHL Express below.

Supported Methods
Shipping Account  âœ” Ship  âœ” Rate  âœ” Track  âœ” Pickup  âœ” Dopu  âœ” Pickup_availability  âœ” Validate_credentials  âœ” Webhook  âœ”


Authentication

The Zenkraft API uses a bearer token to authenticate. If you do not have one, please contact support.

zkkey : your_api_key
Base URL
https://api.zenkraft.com

/shippingaccount POST

The /shippingaccount endpoint enables you to use your carrier account credentials to create a Shipping Acccount ID in the Zenkraft system. This is used for all future API calls listed below.

POST Request Parameters
Field Possible Values Example
shipping_account object required
auth object Carrier credentials which are specific to each carrier {'site_id': 'Site ID', 'password': 'Password', 'account_number': 'Account Number', 'api_key': 'API Key', 'dhl_api_key': 'DHL API Key', 'mydhl_username': 'MyDHL Username', 'mydhl_password': 'MyDHL Password'}
account_number string Account Number required Account Number
api_key string API Key API Key
dhl_api_key string DHL API Key DHL API Key
mydhl_password string MyDHL Password MyDHL Password
mydhl_username string MyDHL Username MyDHL Username
password string Password required Password
site_id string Site ID required Site ID
billing_address object
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ IM GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR CL RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE MF TW ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
carrier string Carrier slug required dhl
country string required GU CU LR LC BH ZM BZ NZ KZ PM GP DE KY HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH JP LB RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
defaults object
currency string BOB BDT SPL TND QAR OMR CRC CUC MYR LSL NGN AED CNY BSD MAD AUD MNT KES LBP SEK TMT LRD DOP STN SVC TWD SGD BIF BYN MDL BHD FJD WST HUF AZN KHR COP JOD XOF DZD VUV ILS EUR MRU ISK GYD MKD XAF BRL KWD LYD IDR PHP LAK TTD ZMW BAM CDF UGX YER PYG ANG AMD PKR DKK SLL HNL MGA CLP AOA SDG THB RWF PLN NOK SOS KZT GHS ARS GBP KMF RON KGS DJF TVD XCD CUP MVR INR TZS BGN LKR ERN AFN XDR VEF CAD MXN TJS SHP GGP JEP UAH SZL RSD AWG BTN NIO GNF MOP SRD MUR VND ALL KPW SBD BND BWP GEL BZD HKD SYP ETB BBD CVE GIP HRK SCR FKP SAR MZN IRR IQD PEN CHF UZS TOP KYD ZAR JMD ZWD PGK TRY NZD HTG JPY NPR EGP KRW XPF IMP RUB BMD GMD MMK CZK NAD UYU USD GTQ MWK PAB
dim_units string Dimension units of the packages, inches or centimeters CM IN IN
label_type string Label Type EPL2 ZPL2 ZPL2__8X4_thermal ZPL2__6X4_thermal PDF PDF__8X4_A4_PDF PDF__8X4_A4_TC_PDF PDF__8X4_CI_PDF PDF__6X4_A4_PDF PDF__6X4_PDF PDF__8X4_PDF PNG PDF
packaging_type string Packaging Type jumbo_document customer-provided_dc_document dhl_flyer domestic express_document dhl_express_envelope_fr_freight jumbo_box jumbo_junior_document junior_jumbo_box jumbo_junior_parcel other_dhl_packaging_pa_parcel your_packaging jumbo_parcel jumbo_document
service string Service Type domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
weight_units string Weight units of the packages, pounds or kilograms LB KG LB
location_id string Location ID 0d349ee54a8c4d0dbc61b1a3ac1ab1f4
name string Account name My dhl test account
parent_shipping_account string Shipping account key to link this account to. This is useful when you want to create a sub-account
test boolean If you specify test flag and omit `auth` key, we'll try to create a shipping account with our test credentials for the carrier/country combination specified


Successful Response
Field Possible Values Example
shipping_account object
auth object Carrier credentials which are specific to each carrier {'site_id': 'Site ID', 'password': 'Password', 'account_number': 'Account Number', 'api_key': 'API Key', 'dhl_api_key': 'DHL API Key', 'mydhl_username': 'MyDHL Username', 'mydhl_password': 'MyDHL Password'}
account_number string Account Number required Account Number
api_key string API Key API Key
dhl_api_key string DHL API Key DHL API Key
mydhl_password string MyDHL Password MyDHL Password
mydhl_username string MyDHL Username MyDHL Username
password string Password required Password
site_id string Site ID required Site ID
carrier string Carrier slug required dhl
country string required GU CU LR LC BH ZM BZ NZ KZ PM GP DE KY HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH JP LB RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
defaults object required
currency string BOB BDT SPL TND QAR OMR CRC CUC MYR LSL NGN AED CNY BSD MAD AUD MNT KES LBP SEK TMT LRD DOP STN SVC TWD SGD BIF BYN MDL BHD FJD WST HUF AZN KHR COP JOD XOF DZD VUV ILS EUR MRU ISK GYD MKD XAF BRL KWD LYD IDR PHP LAK TTD ZMW BAM CDF UGX YER PYG ANG AMD PKR DKK SLL HNL MGA CLP AOA SDG THB RWF PLN NOK SOS KZT GHS ARS GBP KMF RON KGS DJF TVD XCD CUP MVR INR TZS BGN LKR ERN AFN XDR VEF CAD MXN TJS SHP GGP JEP UAH SZL RSD AWG BTN NIO GNF MOP SRD MUR VND ALL KPW SBD BND BWP GEL BZD HKD SYP ETB BBD CVE GIP HRK SCR FKP SAR MZN IRR IQD PEN CHF UZS TOP KYD ZAR JMD ZWD PGK TRY NZD HTG JPY NPR EGP KRW XPF IMP RUB BMD GMD MMK CZK NAD UYU USD GTQ MWK PAB
dim_units string Dimension units of the packages, inches or centimeters CM IN IN
label_type string Label Type EPL2 ZPL2 ZPL2__8X4_thermal ZPL2__6X4_thermal PDF PDF__8X4_A4_PDF PDF__8X4_A4_TC_PDF PDF__8X4_CI_PDF PDF__6X4_A4_PDF PDF__6X4_PDF PDF__8X4_PDF PNG PDF
packaging_type string Packaging Type jumbo_document customer-provided_dc_document dhl_flyer domestic express_document dhl_express_envelope_fr_freight jumbo_box jumbo_junior_document junior_jumbo_box jumbo_junior_parcel other_dhl_packaging_pa_parcel your_packaging jumbo_parcel jumbo_document
service string Service Type domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
weight_units string Weight units of the packages, pounds or kilograms LB KG LB
id string Shipping account number required 5190163571408896
location_id string Location ID 0d349ee54a8c4d0dbc61b1a3ac1ab1f4
name string Account name My dhl test account
parent_shipping_account string Shipping account key to link this account to. This is useful when you want to create a sub-account
test boolean If you specify test flag and omit `auth` key, we'll try to create a shipping account with our test credentials for the carrier/country combination specified


Error Response
Field Possible Values Example
error object
code string Standardized error code required master_test_shipping_account_not_found schema_validation_error shipping_account_wrong_carrier schema_field_required missing_api_key wrong_api_key shipping_account_not_found unexpected_exception master_test_shipping_account_not_found
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message object Error message required Master shipping account for fedex in US does not exist
Example Request / Response
{
    "shipping_account": {
        "name": "Test",
        "carrier": "dhl",
        "auth": {
            "site_id": "Site ID",
            "password": "Password",
            "account_number": "Account Number",
            "api_key": "API Key",
            "dhl_api_key": "DHL API Key",
            "mydhl_username": "MyDHL Username",
            "mydhl_password": "MyDHL Password"
        },
        "country": "US",
        "test" : true
    }
}
                curl --request POST \
--url https://api.zenkraft.com/shippingaccount \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "shipping_account": {
        "name": "Test",
        "carrier": "dhl",
        "auth": {
            "site_id": "Site ID",
            "password": "Password",
            "account_number": "Account Number",
            "api_key": "API Key",
            "dhl_api_key": "DHL API Key",
            "mydhl_username": "MyDHL Username",
            "mydhl_password": "MyDHL Password"
        },
        "country": "US",
        "test" : true
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "shipping_account": {
        "name": "Test",
        "carrier": "dhl",
        "auth": {
            "site_id": "Site ID",
            "password": "Password",
            "account_number": "Account Number",
            "api_key": "API Key",
            "dhl_api_key": "DHL API Key",
            "mydhl_username": "MyDHL Username",
            "mydhl_password": "MyDHL Password"
        },
        "country": "US",
        "test" : true
    }
}
url = "https://api.zenkraft.com/shippingaccount"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
    "shipping_account": {
        "name": "My FedEx test account",
        "carrier": "dhl",
        "country": "US",
        "auth": {
            "site_id": "Site ID",
            "password": "Password",
            "account_number": "Account Number",
            "api_key": "API Key",
            "dhl_api_key": "DHL API Key",
            "mydhl_username": "MyDHL Username",
            "mydhl_password": "MyDHL Password"
        },
        "test": false,
        "id": "567293923024"
    }
}

/ship POST

The shipping endpoint is used to book shipments with DHL Express. It will return a shipping label and tracking number in the response.

POST Request Parameters
Field Possible Values Example
shipment object Definition of the shipment payload required
combined_labels boolean Optional flag indicating whether package labels should be combined
currency string BOB BDT SPL TND QAR OMR CRC CUC MYR LSL NGN AED CNY BSD MAD AUD MNT KES LBP SEK TMT LRD DOP STN SVC TWD SGD BIF BYN MDL BHD FJD WST HUF AZN KHR COP JOD XOF DZD VUV ILS EUR MRU ISK GYD MKD XAF BRL KWD LYD IDR PHP LAK TTD ZMW BAM CDF UGX YER PYG ANG AMD PKR DKK SLL HNL MGA CLP AOA SDG THB RWF PLN NOK SOS KZT GHS ARS GBP KMF RON KGS DJF TVD XCD CUP MVR INR TZS BGN LKR ERN AFN XDR VEF CAD MXN TJS SHP GGP JEP UAH SZL RSD AWG BTN NIO GNF MOP SRD MUR VND ALL KPW SBD BND BWP GEL BZD HKD SYP ETB BBD CVE GIP HRK SCR FKP SAR MZN IRR IQD PEN CHF UZS TOP KYD ZAR JMD ZWD PGK TRY NZD HTG JPY NPR EGP KRW XPF IMP RUB BMD GMD MMK CZK NAD UYU USD GTQ MWK PAB
debug boolean calls with debug=true will be logged
dim_units string Dimension units of the packages, inches or centimeters required CM IN IN
documents array
document string document content
document_type string file format of the document pdf
id string uploaded document ID
include_base64_label boolean If this is enabled, base64 label is returned
label_size string 8X4_thermal 8X4_A4_TC_PDF 6X4_PDF 8X4_CI_PDF 6X4_A4_PDF 8X4_A4_PDF 8X4_PDF 6X4_thermal 8X4_thermal
label_type string the label format of the shipping labels required EPL2 ZPL2 ZPL2__8X4_thermal ZPL2__6X4_thermal PDF PDF__8X4_A4_PDF PDF__8X4_A4_TC_PDF PDF__8X4_CI_PDF PDF__6X4_A4_PDF PDF__6X4_PDF PDF__8X4_PDF PNG PDF
notifications array
type string type of the notification needed email message email
value string value of the notification notification1@example.com
packages array required
height number height of the package according to units specified under dim_units 5
length number length of the package according to units specified under dim_units. ususally the length needs to be the largest of length, width, height 11
value number value of the package according to currency specified 25
weight number weight of the package according to units specified under weight_units 4.2
width number width of the package according to units specified under dim_units 8.5
packaging string the packaging type required your_packaging your_packaging
recipient object required
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
references array
type string type of reference customer_reference
value string value of the reference ABC-000123
sender object required
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
service string the service type required domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
ship_date string shipping date in the ISO format 2021-06-07
shipping_account string Shipping account number required 5190163571408896
special_services array hide_account duties_and_taxes_paid lithium_ion_pi965_section_ii lithium_ion_pi967_section_ii dry_ice_un1845 lithium_ion_pi965_966_section_ii excepted_quantity consumer_commodities no_signature_required insurance paperless_trade data_staging_03 data_staging_06 data_staging_12 data_staging_24 neutral_delivery importer_of_record cod saturday_delivery include_qr breakbulk broker_notification [hide_account ]
test boolean calls created with test = true will be directed to the carrier test servers
type string outbound or return shipments outbound return outbound
weight_units string Weight units of the packages, pounds or kilograms required LB KG LB


Successful Response
Most important parts of the response:
  • tracking_number which can be used to track the shipments in the track endpoint
  • label for each package which needs to be printed and attached to the shipment
Field Possible Values Example
shipment object
context object this object can contain custom data returned by the carrier
costs object Additional information about packages
base_charge number gross amount 100
discounts number the cost of discounts applied 0
net_charge number net amount 80
surcharges number additional fees 0
taxes number the cost of taxes 20
id string shipment ID 1f02d12868a54ed88b6cb4dafaad325d
label_size string 8X4_thermal 8X4_A4_TC_PDF 6X4_PDF 8X4_CI_PDF 6X4_A4_PDF 8X4_A4_PDF 8X4_PDF 6X4_thermal 8X4_thermal
packages array
height number height of the package according to units specified under dim_units 5
label string base64 label if you specify include_base64_label flag in your request or an URL to the generated label
length number length of the package according to units specified under dim_units. ususally the length needs to be the largest of length, width, height 11
tracking_number string Tracking number of shipment 567293923024
value number value of the package according to currency specified 25
weight number weight of the package according to units specified under weight_units 4.2
width number width of the package according to units specified under dim_units 8.5
shipping_documents object Additional information about packages
description string description of this customs item required Commercial Invoice
document string base64 document contents required
document_type string file format of the document required PDF
special_services object hide_account duties_and_taxes_paid lithium_ion_pi965_section_ii lithium_ion_pi967_section_ii dry_ice_un1845 lithium_ion_pi965_966_section_ii excepted_quantity consumer_commodities no_signature_required insurance paperless_trade data_staging_03 data_staging_06 data_staging_12 data_staging_24 neutral_delivery importer_of_record cod saturday_delivery include_qr breakbulk broker_notification [hide_account ]
tracking_number string Tracking number of shipment 567293923024


Error Response
Field Possible Values Example
error object
code string Standardized error code required carrier_http_exception carrier_throttling schema_validation_error carrier_exception ship_date_past shipping_account_wrong_carrier carrier_timeout invalid_phone_number schema_field_required missing_api_key carrier_unsupported_method wrong_api_key shipping_account_not_found carrier_label_generation_failed carrier_shipment_generation_failed carrier_authentication unexpected_exception carrier_failed_connection carrier_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message object Error message required FedEx API: The origin country code XX could not be found. Please check the country code.
Service Types
Name API value Code Domestic / international
DOMESTIC EXPRESS 12:00 domestic_express_1200 âžž 1
B2C 2 b2c2 âžž 2
B2C 3 b2c3 âžž 3
JETLINE jetline âžž 4
SPRINTLINE sprintline âžž 5
EXPRESS EASY 7 express_easy_7 âžž 7
EXPRESS EASY 8 express_easy_8 âžž 8
EUROPACK 9 europack_9 âžž 9
BREAKBULK ECONOMY breakbulk_economy âžž A
BREAKBULK EXPRESS breakbulk_express âžž B
MEDICAL EXPRESS C medical_express_c âžž C
EXPRESS WORLDWIDE D express_worldwide_d âžž D
EXPRESS 9:00 E express_900_e âžž E
FREIGHT WORLDWIDE freight_worldwide âžž F
DOMESTIC ECONOMY SELECT domestic_economy_select âžž G
ECONOMY SELECT H economy_select_h âžž H
DOMESTIC EXPRESS 9:00 I domestic_express_900_i âžž I
JUMBO BOX jumbo_box âžž J
EXPRESS 9:00 express_900 âžž K
EXPRESS 10:30 L express_1030_l âžž L
EXPRESS 10:30 M express_1030_m âžž M
DOMESTIC EXPRESS domestic_express âžž N
DOMESTIC EXPRESS 10:30 domestic_express_1030 âžž O
EXPRESS WORLDWIDE P express_worldwide_p âžž P
MEDICAL EXPRESS Q medical_express_q âžž Q
GLOBALMAIL BUSINESS globalmail_business âžž R
SAME DAY same_day âžž S
EXPRESS 12:00 T express_1200_t âžž T
EXPRESS WORLDWIDE U express_worldwide_u âžž U
EUROPACK V europack_v âžž V
ECONOMY SELECT W economy_select_w âžž W
EXPRESS ENVELOPE express_envelope âžž X
EXPRESS 12:00 Y express_1200_y âžž Y
Show more

Packaging Types
Name API value Domestic / international
Jumbo Document jumbo_document âžž
Customer-provided DC - Document customer-provided_dc_document âžž
DHL Flyer dhl_flyer âžž
Domestic domestic âžž
Express Document express_document âžž
DHL Express Envelope FR - Freight dhl_express_envelope_fr_freight âžž
Jumbo box jumbo_box âžž
Jumbo Junior Document jumbo_junior_document âžž
Junior jumbo Box junior_jumbo_box âžž
Jumbo Junior Parcel jumbo_junior_parcel âžž
Other DHL Packaging Pa - Parcel other_dhl_packaging_pa_parcel âžž
Your packaging your_packaging âžž
Jumbo Parcel jumbo_parcel âžž

Billing Fields
Name API value Domestic / international
Shipping Payment Type shipping_payment_type
Billing Account Number billing_account_number
Duty Payment Type duty_payment_type
Duty Account Number duty_account_number
BillToCity bill_to_city
BillToAddressLine1 bill_to_street1
BillToAddressLine2 bill_to_street2
BillToAddressLine3 bill_to_street3
BillToState bill_to_state
BillToCountryCode bill_to_country
BillToCountryName bill_to_country_name
BillToCompanyName bill_to_company
BillToContactName bill_to_name
BillToPostcode bill_to_postal_code
BillToSuburb bill_to_suburb
BillToPhoneNumber bill_to_phone
BillToPhoneNumberExtn bill_to_phone_extn
Bill to VAT/GST bill_to_tax_id
Bill to EORI Number bill_to_eori_number
Bill to IOSS Number bill_to_ioss_number
Bill To Trader Type bill_to_trader_type

Special Services
Name API value Code
Hide account hide_account Y
Duties & Taxes Paid duties_and_taxes_paid DD
Lithium Ion PI965 Section II lithium_ion_pi965_section_ii HB
Lithium Ion PI967 Section II lithium_ion_pi967_section_ii HV
Dry Ice UN1845 dry_ice_un1845 HC
Lithium Ion PI965-966 Section II lithium_ion_pi965_966_section_ii HD
Excepted Quantity excepted_quantity HH
Consumer Commodities consumer_commodities HK
No Signature Required no_signature_required SX
Insurance insurance II
Paperless Trade paperless_trade WY
Data Staging 3 Months data_staging_03 PT
Data Staging 6 Months data_staging_06 PU
Data Staging 12 Months data_staging_12 PV
Data Staging 24 Months data_staging_24 PW
Neutral Delivery neutral_delivery NN
Importer of Record importer_of_record DU
Collect On Delivery cod KB
Saturday Delivery saturday_delivery AA
Include QR include_qr include_qr
Breakbulk breakbulk breakbulk
Broker Notification broker_notification WG

Package Special Services
Name API value Code
Dangerous Goods dangerous_goods HE

Custom Fields
Name API value Possible Values Required
Description description False
International Transaction Number international_transaction_number False

Customs
Name API value Possible Values Node Required
Quantity quantity customs_item False
Quantity Unit quantity_unit 2no, box, 2gm, 2m, 2m3, 3m3, m3, dpr, doz, pcs, gm, grs, kg, l, m, 3gm, 3l, x, no, 2kg, prs, 2l, 3kg, cm2, 2m2, 3m2, m2, 4m2, 3m, cm, cone, ct, ea, lbs, rill, roll, set, tu, yds customs_item False
Description description customs_item False
Value value customs_item False
Commodity Code commodity_code customs_item False
Weight weight customs_item True
Gross Weight gross_weight customs_item False
License Number license_number customs_item False
License Expiry Date license_expiry_date customs_item False
Manufacture Country Code manufacture_country_code customs_item True
ECCN eccn shipment False
Signature Name signature_name shipment False
Signature Title signature_title shipment False
Export Reason export_reason shipment False
Export Reason Code export_reason_code permanent, temporary, re_export, used_exhibition_goods_to_origin, intercompany_use, commercial_purpose_or_sale, personal_belongings_or_personal_use, sample, gift, return_to_origin, warranty_replacement, diplmatic_goods, defenece_material shipment False
Sed Number sed_number ftsr, xtn shipment False
Invoice Number invoice_number shipment False
Invoice Date invoice_date shipment False
Remarks remarks shipment False
Other Charges other_charges shipment False
Freight Cost freight_cost shipment False
Terms Of Payment terms_of_payment shipment False
VAT/GST vatgst shipment False
Receiver Reference receiver_reference shipment False
Exporter Id exporter_id shipment False
Exporter Code exporter_code shipment False
Package Marks package_marks shipment False
Other Remarks 2 other_remarks_2 shipment False
Other Remarks 3 other_remarks_3 shipment False
Add Decl Text add_decl_text shipment False
Add Decl Text 2 add_decl_text_2 shipment False
Add Decl Text 3 add_decl_text_3 shipment False
Terms of Trade terms_of_trade EXW, FCA, CPT, CFR, CIP, CIF, DAT, DAP, DDP, FAS, FOB, DAF, DDU, DEQ, DES, DVU, DPU shipment False
Place of Incoterms place_of_incoterms shipment False

References
Name API value Code
Customer Reference ref REF
Reference reference REF
Mother Tracking Number mother_tracking_number mother_tracking_number
Mother Piece Tracking Number mother_piece_tracking_number mother_piece_tracking_number

Address Fields
Name API value Possible Values Node Required
Residential residential False
Tax ID tax_id False
IOSS Number ioss_number False
EORI Number eori_number False
Personal ID Number personal_id_number False
Trader Type trader_type business, direct_consumer, government, other, private, reseller False
Example Request / Response
{
    "shipment": {
        "carrier": "dhl",
        "currency": "GBP",
        "debug": true,
        "dim_units": "CM",
        "include_base64_label": true,
        "label_type": "EPL2",
        "packages": [
            {
                "height": 1,
                "length": 1,
                "value": 1,
                "weight": 1,
                "width": 1,
                "special_services": [
                    "dangerous_goods"
                ]
            }
        ],
        "packaging": "your_packaging",
        "recipient": {
            "city": "london",
            "company": "Zenkraft User",
            "country": "GB",
            "email": "testexample@gmail.com",
            "name": "Test User",
            "phone": "01222 555 555",
            "postal_code": "EC1R 4UG",
            "state": "",
            "street1": "1 Hardwick Street",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "sender": {
            "city": "Bath",
            "company": "TestCompany",
            "country": "GB",
            "email": "uk@testing.com",
            "name": "TestCompany Name",
            "phone": "",
            "postal_code": "EC2R 6PJ",
            "street1": "30 Moorgate",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "service": "domestic_express_1200",
        "ship_date": "2026-07-03",
        "shipping_account": "811195730",
        "test": true,
        "type": "outbound",
        "weight_units": "KG",
        "customs_items": [
            {
                "quantity": 1,
                "quantity_unit": "2no",
                "description": "Description",
                "value": 10.1,
                "commodity_code": "Commodity Code",
                "weight": 10.1,
                "gross_weight": 10.1,
                "license_number": "License Number",
                "license_expiry_date": "2026-07-03",
                "manufacture_country_code": "Manufacture Country Code"
            }
        ],
        "eccn": "ECCN",
        "signature_name": "Signature Name",
        "signature_title": "Signature Title",
        "export_reason": "Export Reason",
        "export_reason_code": "permanent",
        "sed_number": "ftsr",
        "invoice_number": "Invoice Number",
        "invoice_date": "2026-07-03",
        "remarks": "Remarks",
        "other_charges": 10.1,
        "freight_cost": 10.1,
        "terms_of_payment": "Terms Of Payment",
        "vatgst": "VAT/GST",
        "receiver_reference": "Receiver Reference",
        "exporter_id": "Exporter Id",
        "exporter_code": "Exporter Code",
        "package_marks": "Package Marks",
        "other_remarks_2": "Other Remarks 2",
        "other_remarks_3": "Other Remarks 3",
        "add_decl_text": "Add Decl Text",
        "add_decl_text_2": "Add Decl Text 2",
        "add_decl_text_3": "Add Decl Text 3",
        "terms_of_trade": "EXW",
        "place_of_incoterms": "Place of Incoterms",
        "notifications": [
            {
                "type": "email",
                "value": "email"
            },
            {
                "type": "message",
                "value": "message"
            }
        ],
        "references": [
            {
                "type": "ref",
                "value": "Customer Reference"
            },
            {
                "type": "reference",
                "value": "Reference"
            },
            {
                "type": "mother_tracking_number",
                "value": "Mother Tracking Number"
            },
            {
                "type": "mother_piece_tracking_number",
                "value": "Mother Piece Tracking Number"
            }
        ],
        "label_size": "8X4_thermal",
        "special_services": [
            "hide_account"
        ]
    }
}
                curl --request POST \
--url https://api.zenkraft.com/ship \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "shipment": {
        "carrier": "dhl",
        "currency": "GBP",
        "debug": true,
        "dim_units": "CM",
        "include_base64_label": true,
        "label_type": "EPL2",
        "packages": [
            {
                "height": 1,
                "length": 1,
                "value": 1,
                "weight": 1,
                "width": 1,
                "special_services": [
                    "dangerous_goods"
                ]
            }
        ],
        "packaging": "your_packaging",
        "recipient": {
            "city": "london",
            "company": "Zenkraft User",
            "country": "GB",
            "email": "testexample@gmail.com",
            "name": "Test User",
            "phone": "01222 555 555",
            "postal_code": "EC1R 4UG",
            "state": "",
            "street1": "1 Hardwick Street",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "sender": {
            "city": "Bath",
            "company": "TestCompany",
            "country": "GB",
            "email": "uk@testing.com",
            "name": "TestCompany Name",
            "phone": "",
            "postal_code": "EC2R 6PJ",
            "street1": "30 Moorgate",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "service": "domestic_express_1200",
        "ship_date": "2026-07-03",
        "shipping_account": "811195730",
        "test": true,
        "type": "outbound",
        "weight_units": "KG",
        "customs_items": [
            {
                "quantity": 1,
                "quantity_unit": "2no",
                "description": "Description",
                "value": 10.1,
                "commodity_code": "Commodity Code",
                "weight": 10.1,
                "gross_weight": 10.1,
                "license_number": "License Number",
                "license_expiry_date": "2026-07-03",
                "manufacture_country_code": "Manufacture Country Code"
            }
        ],
        "eccn": "ECCN",
        "signature_name": "Signature Name",
        "signature_title": "Signature Title",
        "export_reason": "Export Reason",
        "export_reason_code": "permanent",
        "sed_number": "ftsr",
        "invoice_number": "Invoice Number",
        "invoice_date": "2026-07-03",
        "remarks": "Remarks",
        "other_charges": 10.1,
        "freight_cost": 10.1,
        "terms_of_payment": "Terms Of Payment",
        "vatgst": "VAT/GST",
        "receiver_reference": "Receiver Reference",
        "exporter_id": "Exporter Id",
        "exporter_code": "Exporter Code",
        "package_marks": "Package Marks",
        "other_remarks_2": "Other Remarks 2",
        "other_remarks_3": "Other Remarks 3",
        "add_decl_text": "Add Decl Text",
        "add_decl_text_2": "Add Decl Text 2",
        "add_decl_text_3": "Add Decl Text 3",
        "terms_of_trade": "EXW",
        "place_of_incoterms": "Place of Incoterms",
        "notifications": [
            {
                "type": "email",
                "value": "email"
            },
            {
                "type": "message",
                "value": "message"
            }
        ],
        "references": [
            {
                "type": "ref",
                "value": "Customer Reference"
            },
            {
                "type": "reference",
                "value": "Reference"
            },
            {
                "type": "mother_tracking_number",
                "value": "Mother Tracking Number"
            },
            {
                "type": "mother_piece_tracking_number",
                "value": "Mother Piece Tracking Number"
            }
        ],
        "label_size": "8X4_thermal",
        "special_services": [
            "hide_account"
        ]
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "shipment": {
        "carrier": "dhl",
        "currency": "GBP",
        "debug": true,
        "dim_units": "CM",
        "include_base64_label": true,
        "label_type": "EPL2",
        "packages": [
            {
                "height": 1,
                "length": 1,
                "value": 1,
                "weight": 1,
                "width": 1,
                "special_services": [
                    "dangerous_goods"
                ]
            }
        ],
        "packaging": "your_packaging",
        "recipient": {
            "city": "london",
            "company": "Zenkraft User",
            "country": "GB",
            "email": "testexample@gmail.com",
            "name": "Test User",
            "phone": "01222 555 555",
            "postal_code": "EC1R 4UG",
            "state": "",
            "street1": "1 Hardwick Street",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "sender": {
            "city": "Bath",
            "company": "TestCompany",
            "country": "GB",
            "email": "uk@testing.com",
            "name": "TestCompany Name",
            "phone": "",
            "postal_code": "EC2R 6PJ",
            "street1": "30 Moorgate",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "service": "domestic_express_1200",
        "ship_date": "2026-07-03",
        "shipping_account": "811195730",
        "test": true,
        "type": "outbound",
        "weight_units": "KG",
        "customs_items": [
            {
                "quantity": 1,
                "quantity_unit": "2no",
                "description": "Description",
                "value": 10.1,
                "commodity_code": "Commodity Code",
                "weight": 10.1,
                "gross_weight": 10.1,
                "license_number": "License Number",
                "license_expiry_date": "2026-07-03",
                "manufacture_country_code": "Manufacture Country Code"
            }
        ],
        "eccn": "ECCN",
        "signature_name": "Signature Name",
        "signature_title": "Signature Title",
        "export_reason": "Export Reason",
        "export_reason_code": "permanent",
        "sed_number": "ftsr",
        "invoice_number": "Invoice Number",
        "invoice_date": "2026-07-03",
        "remarks": "Remarks",
        "other_charges": 10.1,
        "freight_cost": 10.1,
        "terms_of_payment": "Terms Of Payment",
        "vatgst": "VAT/GST",
        "receiver_reference": "Receiver Reference",
        "exporter_id": "Exporter Id",
        "exporter_code": "Exporter Code",
        "package_marks": "Package Marks",
        "other_remarks_2": "Other Remarks 2",
        "other_remarks_3": "Other Remarks 3",
        "add_decl_text": "Add Decl Text",
        "add_decl_text_2": "Add Decl Text 2",
        "add_decl_text_3": "Add Decl Text 3",
        "terms_of_trade": "EXW",
        "place_of_incoterms": "Place of Incoterms",
        "notifications": [
            {
                "type": "email",
                "value": "email"
            },
            {
                "type": "message",
                "value": "message"
            }
        ],
        "references": [
            {
                "type": "ref",
                "value": "Customer Reference"
            },
            {
                "type": "reference",
                "value": "Reference"
            },
            {
                "type": "mother_tracking_number",
                "value": "Mother Tracking Number"
            },
            {
                "type": "mother_piece_tracking_number",
                "value": "Mother Piece Tracking Number"
            }
        ],
        "label_size": "8X4_thermal",
        "special_services": [
            "hide_account"
        ]
    }
}
url = "https://api.zenkraft.com/ship"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "shipment": {
    "carrier": "dhl",
    "shipping_account": "5190163571408896",
    "test": true,
    "debug": false,
    "ship_date": "2026-07-03",
    "type": "outbound",
    "combined_labels": false,
    "service": "domestic_express_1200",
    "special_services": [
      "saturday_delivery"
    ],
    "packaging": "your_packaging",
    "dim_units": "IN",
    "weight_units": "LB",
    "currency": "USD",
    "sender": {
      "name": "Jack O'Rogers",
      "company": "Burlington Textiles Corp of America",
      "street1": "525 S. ZENKRAFT Ave",
      "street2": "suite 120",
      "email": "jrogers@example.com",
      "phone": "(336) 222-7000",
      "city": "Burlington",
      "state": "NC",
      "postal_code": "27215",
      "country": "US"
    },
    "recipient": {
      "name": "Jack O'Rogers",
      "company": "Burlington Textiles Corp of America",
      "street1": "525 S. ZENKRAFT Ave",
      "street2": "suite 120",
      "email": "jrogers@example.com",
      "phone": "(336) 222-7000",
      "city": "Burlington",
      "state": "NC",
      "postal_code": "27215",
      "country": "US"
    },
    "packages": [
      {
        "weight": 4.2,
        "value": 25,
        "length": 11,
        "width": 8.5,
        "height": 5,
        "tracking_number": "567293923024",
        "label": "string"
      }
    ],
    "label_type": "PDF",
    "include_base64_label": false,
    "references": [
      {
        "type": "customer_reference",
        "value": "ABC-000123"
      }
    ],
    "notifications": [
      {
        "type": "email",
        "value": "notification1@example.com"
      }
    ],
    "costs": {
      "base_charge": 100,
      "net_charge": 80,
      "taxes": 20,
      "surcharges": 0,
      "discounts": 0
    },
    "id": "1f02d12868a54ed88b6cb4dafaad325d",
    "tracking_number": "567293923024",
    "shipping_documents": [{
      "description": "Commercial Invoice",
      "document_type": "PDF",
      "document": "string"
    }],
    "context": {}
  }
}

/ship GET

This endpoint allows you to retrieve previously created shipments

GET Request Parameters
Field Possible Values Example
shipment_id object ID of the previously created shipment returned from POST on /ship required


Successful Response
Field Possible Values Example
shipment object
carrier string the carrier name dhl
created string when was this object created 2021-06-02T07:22:43.000
id string shipment ID 1f02d12868a54ed88b6cb4dafaad325d
label string base64 label
label_type string the label format of the shipping labels EPL2 ZPL2 ZPL2__8X4_thermal ZPL2__6X4_thermal PDF PDF__8X4_A4_PDF PDF__8X4_A4_TC_PDF PDF__8X4_CI_PDF PDF__6X4_A4_PDF PDF__6X4_PDF PDF__8X4_PDF PNG PDF
shipping_account string Shipping account number 5190163571408896
status string Standardized shipment status success pending success
tracking_number string Tracking number of shipment 567293923024
updated string when was this object updated 2021-06-02T13:10:02.000


Error Response
Field Possible Values Example
error object
code string Standardized error code required carrier_http_exception carrier_throttling schema_validation_error carrier_exception shipping_account_wrong_carrier carrier_no_shipment_found carrier_timeout schema_field_required missing_api_key carrier_unsupported_method wrong_api_key shipping_account_not_found carrier_label_generation_failed carrier_authentication unexpected_exception carrier_failed_connection carrier_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message object Error message required DHL Global Forwarding API: Your shipment was rejected due to an unpaid invoice on your previous shipment. Contact DHL support to resolve the issue.
Example Request / Response
https://api.zenkraft.com/ship/b87ff34556ec4dba9e724963216d2dd7
                curl --request GET \
--url https://api.zenkraft.com/ship/b87ff34556ec4dba9e724963216d2dd7 \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = None
url = "https://api.zenkraft.com/ship/b87ff34556ec4dba9e724963216d2dd7"

response = requests.request(url=url, method='GET', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "shipment": {
    "carrier": "dhl",
    "shipping_account": "5190163571408896",
    "test": true,
    "debug": false,
    "ship_date": "2026-07-03",
    "type": "outbound",
    "combined_labels": false,
    "service": "domestic_express_1200",
    "special_services": [
      "saturday_delivery"
    ],
    "packaging": "your_packaging",
    "dim_units": "IN",
    "weight_units": "LB",
    "currency": "USD",
    "sender": {
      "name": "Jack O'Rogers",
      "company": "Burlington Textiles Corp of America",
      "street1": "525 S. ZENKRAFT Ave",
      "street2": "suite 120",
      "email": "jrogers@example.com",
      "phone": "(336) 222-7000",
      "city": "Burlington",
      "state": "NC",
      "postal_code": "27215",
      "country": "US"
    },
    "recipient": {
      "name": "Jack O'Rogers",
      "company": "Burlington Textiles Corp of America",
      "street1": "525 S. ZENKRAFT Ave",
      "street2": "suite 120",
      "email": "jrogers@example.com",
      "phone": "(336) 222-7000",
      "city": "Burlington",
      "state": "NC",
      "postal_code": "27215",
      "country": "US"
    },
    "packages": [
      {
        "weight": 4.2,
        "value": 25,
        "length": 11,
        "width": 8.5,
        "height": 5,
        "tracking_number": "567293923024",
        "label": "string"
      }
    ],
    "label_type": "PDF",
    "include_base64_label": false,
    "references": [
      {
        "type": "customer_reference",
        "value": "ABC-000123"
      }
    ],
    "notifications": [
      {
        "type": "email",
        "value": "notification1@example.com"
      }
    ],
    "costs": {
      "base_charge": 100,
      "net_charge": 80,
      "taxes": 20,
      "surcharges": 0,
      "discounts": 0
    },
    "id": "1f02d12868a54ed88b6cb4dafaad325d",
    "tracking_number": "567293923024",
    "shipping_documents": [{
      "description": "Commercial Invoice",
      "document_type": "PDF",
      "document": "string"
    }],
    "context": {}
  }
}

/rate POST

The rating endpoint is used to return estimated costs & time in transit data from the carrier. Zenkraft normalize this data across carriers providing a standardized date and cost format from the carriers (where the functionality is supported).

POST Request Parameters
Field Possible Values Example
shipment object Definition of the shipment payload required
currency string BOB BDT SPL TND QAR OMR CRC CUC MYR LSL NGN AED CNY BSD MAD AUD MNT KES LBP SEK TMT LRD DOP STN SVC TWD SGD BIF BYN MDL BHD FJD WST HUF AZN KHR COP JOD XOF DZD VUV ILS EUR MRU ISK GYD MKD XAF BRL KWD LYD IDR PHP LAK TTD ZMW BAM CDF UGX YER PYG ANG AMD PKR DKK SLL HNL MGA CLP AOA SDG THB RWF PLN NOK SOS KZT GHS ARS GBP KMF RON KGS DJF TVD XCD CUP MVR INR TZS BGN LKR ERN AFN XDR VEF CAD MXN TJS SHP GGP JEP UAH SZL RSD AWG BTN NIO GNF MOP SRD MUR VND ALL KPW SBD BND BWP GEL BZD HKD SYP ETB BBD CVE GIP HRK SCR FKP SAR MZN IRR IQD PEN CHF UZS TOP KYD ZAR JMD ZWD PGK TRY NZD HTG JPY NPR EGP KRW XPF IMP RUB BMD GMD MMK CZK NAD UYU USD GTQ MWK PAB
debug boolean calls with debug=true will be logged
dim_units string Dimension units of the packages, inches or centimeters required CM IN IN
packages array required
height number height of the package according to units specified under dim_units 5
length number length of the package according to units specified under dim_units. ususally the length needs to be the largest of length, width, height 11
value number value of the package according to currency specified 25
weight number weight of the package according to units specified under weight_units 4.2
width number width of the package according to units specified under dim_units 8.5
packaging string the packaging type required your_packaging your_packaging
recipient object required
city string the city of the recipient Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
sender object required
city string the city of the recipient Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
service string if you specify the service type, you'll get rates only for this service domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
ship_date string shipping date in the ISO format 2021-06-07
shipping_account string Shipping account number required 5190163571408896
special_services array hide_account duties_and_taxes_paid lithium_ion_pi965_section_ii lithium_ion_pi967_section_ii dry_ice_un1845 lithium_ion_pi965_966_section_ii excepted_quantity consumer_commodities no_signature_required insurance paperless_trade data_staging_03 data_staging_06 data_staging_12 data_staging_24 neutral_delivery importer_of_record cod saturday_delivery include_qr breakbulk broker_notification [hide_account ]
test boolean calls created with test = true will be directed to the carrier test servers
type string outbound or return shipments outbound return outbound
weight_units string Weight units of the packages, pounds or kilograms required LB KG LB


Successful Response
Field Possible Values Example
rates array
currency string USD AED AFN ALL AMD ANG AOA ARS AUD AWG AZN BAM BBD BDT BGN BHD BIF BMD BND BOB BRL BSD BTN BWP BYN BZD CAD CDF CHF CLP CNY COP CRC CUC CUP CVE CZK DJF DKK DOP DZD EGP ERN ETB EUR FJD FKP GBP GEL GGP GHS GIP GMD GNF GTQ GYD HKD HNL HRK HTG HUF IDR ILS IMP INR IQD IRR ISK JEP JMD JOD JPY KES KGS KHR KMF KPW KRW KWD KYD KZT LAK LBP LKR LRD LSL LYD MAD MDL MGA MKD MMK MNT MOP MRU MUR MVR MWK MXN MYR MZN NAD NGN NIO NOK NPR NZD OMR PAB PEN PGK PHP PKR PLN PYG QAR RON RSD RUB RWF SAR SBD SCR SDG SEK SGD SHP SLL SOS SPL SRD STN SVC SYP SZL THB TJS TMT TND TOP TRY TTD TVD TWD TZS UAH UGX UYU UZS VEF VND VUV WST XAF XCD XDR XOF XPF YER ZAR ZMW ZWD
delivery_day string Day of the week of the delivery. This field is optional depending on the carrier Mon
estimated_date string Number of days to ship. This field is optional depending on the carrier 2021-06-04
service_name string carrier supplied name of this service FedEx Freight
service_type string service slug which can be used when selecting a service in /ship domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
total_cost string total estimated price for this shipment 192.16
transit_days integer Number of days to ship. This field is optional depending on the carrier 3


Error Response
Field Possible Values Example
error object
code string Standardized error code required carrier_http_exception carrier_throttling schema_validation_error carrier_exception ship_date_past shipping_account_wrong_carrier carrier_timeout schema_field_required missing_api_key carrier_unsupported_method wrong_api_key shipping_account_not_found carrier_authentication unexpected_exception carrier_failed_connection carrier_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message object Error message required FedEx API: The origin country code XX could not be found. Please check the country code.
Example Request / Response
{
    "shipment": {
        "carrier": "dhl",
        "currency": "GBP",
        "debug": true,
        "dim_units": "CM",
        "include_base64_label": true,
        "label_type": "EPL2",
        "packages": [
            {
                "height": 1,
                "length": 1,
                "value": 1,
                "weight": 1,
                "width": 1,
                "special_services": [
                    "dangerous_goods"
                ]
            }
        ],
        "packaging": "your_packaging",
        "recipient": {
            "city": "london",
            "company": "Zenkraft User",
            "country": "GB",
            "email": "testexample@gmail.com",
            "name": "Test User",
            "phone": "01222 555 555",
            "postal_code": "EC1R 4UG",
            "state": "",
            "street1": "1 Hardwick Street",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "sender": {
            "city": "Bath",
            "company": "TestCompany",
            "country": "GB",
            "email": "uk@testing.com",
            "name": "TestCompany Name",
            "phone": "",
            "postal_code": "EC2R 6PJ",
            "street1": "30 Moorgate",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "service": "domestic_express_1200",
        "ship_date": "2026-07-03",
        "shipping_account": "811195730",
        "test": true,
        "type": "outbound",
        "weight_units": "KG",
        "customs_items": [
            {
                "quantity": 1,
                "quantity_unit": "2no",
                "description": "Description",
                "value": 10.1,
                "commodity_code": "Commodity Code",
                "weight": 10.1,
                "gross_weight": 10.1,
                "license_number": "License Number",
                "license_expiry_date": "2026-07-03",
                "manufacture_country_code": "Manufacture Country Code"
            }
        ],
        "eccn": "ECCN",
        "signature_name": "Signature Name",
        "signature_title": "Signature Title",
        "export_reason": "Export Reason",
        "export_reason_code": "permanent",
        "sed_number": "ftsr",
        "invoice_number": "Invoice Number",
        "invoice_date": "2026-07-03",
        "remarks": "Remarks",
        "other_charges": 10.1,
        "freight_cost": 10.1,
        "terms_of_payment": "Terms Of Payment",
        "vatgst": "VAT/GST",
        "receiver_reference": "Receiver Reference",
        "exporter_id": "Exporter Id",
        "exporter_code": "Exporter Code",
        "package_marks": "Package Marks",
        "other_remarks_2": "Other Remarks 2",
        "other_remarks_3": "Other Remarks 3",
        "add_decl_text": "Add Decl Text",
        "add_decl_text_2": "Add Decl Text 2",
        "add_decl_text_3": "Add Decl Text 3",
        "terms_of_trade": "EXW",
        "place_of_incoterms": "Place of Incoterms",
        "notifications": [
            {
                "type": "email",
                "value": "email"
            },
            {
                "type": "message",
                "value": "message"
            }
        ],
        "references": [
            {
                "type": "ref",
                "value": "Customer Reference"
            },
            {
                "type": "reference",
                "value": "Reference"
            },
            {
                "type": "mother_tracking_number",
                "value": "Mother Tracking Number"
            },
            {
                "type": "mother_piece_tracking_number",
                "value": "Mother Piece Tracking Number"
            }
        ],
        "label_size": "8X4_thermal",
        "special_services": [
            "hide_account"
        ]
    }
}
                curl --request POST \
--url https://api.zenkraft.com/rate \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "shipment": {
        "carrier": "dhl",
        "currency": "GBP",
        "debug": true,
        "dim_units": "CM",
        "include_base64_label": true,
        "label_type": "EPL2",
        "packages": [
            {
                "height": 1,
                "length": 1,
                "value": 1,
                "weight": 1,
                "width": 1,
                "special_services": [
                    "dangerous_goods"
                ]
            }
        ],
        "packaging": "your_packaging",
        "recipient": {
            "city": "london",
            "company": "Zenkraft User",
            "country": "GB",
            "email": "testexample@gmail.com",
            "name": "Test User",
            "phone": "01222 555 555",
            "postal_code": "EC1R 4UG",
            "state": "",
            "street1": "1 Hardwick Street",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "sender": {
            "city": "Bath",
            "company": "TestCompany",
            "country": "GB",
            "email": "uk@testing.com",
            "name": "TestCompany Name",
            "phone": "",
            "postal_code": "EC2R 6PJ",
            "street1": "30 Moorgate",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "service": "domestic_express_1200",
        "ship_date": "2026-07-03",
        "shipping_account": "811195730",
        "test": true,
        "type": "outbound",
        "weight_units": "KG",
        "customs_items": [
            {
                "quantity": 1,
                "quantity_unit": "2no",
                "description": "Description",
                "value": 10.1,
                "commodity_code": "Commodity Code",
                "weight": 10.1,
                "gross_weight": 10.1,
                "license_number": "License Number",
                "license_expiry_date": "2026-07-03",
                "manufacture_country_code": "Manufacture Country Code"
            }
        ],
        "eccn": "ECCN",
        "signature_name": "Signature Name",
        "signature_title": "Signature Title",
        "export_reason": "Export Reason",
        "export_reason_code": "permanent",
        "sed_number": "ftsr",
        "invoice_number": "Invoice Number",
        "invoice_date": "2026-07-03",
        "remarks": "Remarks",
        "other_charges": 10.1,
        "freight_cost": 10.1,
        "terms_of_payment": "Terms Of Payment",
        "vatgst": "VAT/GST",
        "receiver_reference": "Receiver Reference",
        "exporter_id": "Exporter Id",
        "exporter_code": "Exporter Code",
        "package_marks": "Package Marks",
        "other_remarks_2": "Other Remarks 2",
        "other_remarks_3": "Other Remarks 3",
        "add_decl_text": "Add Decl Text",
        "add_decl_text_2": "Add Decl Text 2",
        "add_decl_text_3": "Add Decl Text 3",
        "terms_of_trade": "EXW",
        "place_of_incoterms": "Place of Incoterms",
        "notifications": [
            {
                "type": "email",
                "value": "email"
            },
            {
                "type": "message",
                "value": "message"
            }
        ],
        "references": [
            {
                "type": "ref",
                "value": "Customer Reference"
            },
            {
                "type": "reference",
                "value": "Reference"
            },
            {
                "type": "mother_tracking_number",
                "value": "Mother Tracking Number"
            },
            {
                "type": "mother_piece_tracking_number",
                "value": "Mother Piece Tracking Number"
            }
        ],
        "label_size": "8X4_thermal",
        "special_services": [
            "hide_account"
        ]
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "shipment": {
        "carrier": "dhl",
        "currency": "GBP",
        "debug": true,
        "dim_units": "CM",
        "include_base64_label": true,
        "label_type": "EPL2",
        "packages": [
            {
                "height": 1,
                "length": 1,
                "value": 1,
                "weight": 1,
                "width": 1,
                "special_services": [
                    "dangerous_goods"
                ]
            }
        ],
        "packaging": "your_packaging",
        "recipient": {
            "city": "london",
            "company": "Zenkraft User",
            "country": "GB",
            "email": "testexample@gmail.com",
            "name": "Test User",
            "phone": "01222 555 555",
            "postal_code": "EC1R 4UG",
            "state": "",
            "street1": "1 Hardwick Street",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "sender": {
            "city": "Bath",
            "company": "TestCompany",
            "country": "GB",
            "email": "uk@testing.com",
            "name": "TestCompany Name",
            "phone": "",
            "postal_code": "EC2R 6PJ",
            "street1": "30 Moorgate",
            "residential": false,
            "tax_id": "Tax ID",
            "ioss_number": "IOSS Number",
            "eori_number": "EORI Number",
            "personal_id_number": "Personal ID Number",
            "trader_type": "business"
        },
        "service": "domestic_express_1200",
        "ship_date": "2026-07-03",
        "shipping_account": "811195730",
        "test": true,
        "type": "outbound",
        "weight_units": "KG",
        "customs_items": [
            {
                "quantity": 1,
                "quantity_unit": "2no",
                "description": "Description",
                "value": 10.1,
                "commodity_code": "Commodity Code",
                "weight": 10.1,
                "gross_weight": 10.1,
                "license_number": "License Number",
                "license_expiry_date": "2026-07-03",
                "manufacture_country_code": "Manufacture Country Code"
            }
        ],
        "eccn": "ECCN",
        "signature_name": "Signature Name",
        "signature_title": "Signature Title",
        "export_reason": "Export Reason",
        "export_reason_code": "permanent",
        "sed_number": "ftsr",
        "invoice_number": "Invoice Number",
        "invoice_date": "2026-07-03",
        "remarks": "Remarks",
        "other_charges": 10.1,
        "freight_cost": 10.1,
        "terms_of_payment": "Terms Of Payment",
        "vatgst": "VAT/GST",
        "receiver_reference": "Receiver Reference",
        "exporter_id": "Exporter Id",
        "exporter_code": "Exporter Code",
        "package_marks": "Package Marks",
        "other_remarks_2": "Other Remarks 2",
        "other_remarks_3": "Other Remarks 3",
        "add_decl_text": "Add Decl Text",
        "add_decl_text_2": "Add Decl Text 2",
        "add_decl_text_3": "Add Decl Text 3",
        "terms_of_trade": "EXW",
        "place_of_incoterms": "Place of Incoterms",
        "notifications": [
            {
                "type": "email",
                "value": "email"
            },
            {
                "type": "message",
                "value": "message"
            }
        ],
        "references": [
            {
                "type": "ref",
                "value": "Customer Reference"
            },
            {
                "type": "reference",
                "value": "Reference"
            },
            {
                "type": "mother_tracking_number",
                "value": "Mother Tracking Number"
            },
            {
                "type": "mother_piece_tracking_number",
                "value": "Mother Piece Tracking Number"
            }
        ],
        "label_size": "8X4_thermal",
        "special_services": [
            "hide_account"
        ]
    }
}
url = "https://api.zenkraft.com/rate"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "rates": [
    {
      "currency": "USD",
      "service_name": "Express",
      "service_type": "domestic_express_1200",
      "total_cost": "192.16",
      "estimated_date": "2026-07-03",
      "delivery_day": "Mon",
      
      "transit_days": 3
    }
  ]
}

/track POST

The track endpoint is used to track shipment status as it's being delivered.

POST Request Parameters
Field Possible Values Example
track object required
checkpoints boolean whether to include checkpoint events in the response or not
debug boolean calls with debug=true will be logged
locale string language used in the checkpoint response. Not all carriers support different languages it_IT shi_Latn_MA fr_FR fr_KM en_IL es_GT ar_EG fr_BJ de_BE ar_MA es_DO es_HN en_MT es_US zh_Hans_MO id_ID ki_KE en_MP kab_DZ gu_IN ro_RO sv_SE ar_IQ chr_US fr_GN si_LK en_NZ en_ZW ro_MD bn_BD om_KE sk_SK so_ET fr_GA en_GU mfe_MU ko_KR mk_MK es_CR luy_KE eu_ES teo_UG zh_Hans es_EC yue_Hant_HK to_TO kln_KE kam_KE ar_QA fr_CM gsw_CH am_ET te_IN da_DK is_IS fr_CD zh_Hant_TW es_PR ii_CN es_CL bo_CN km_KH ur_PK cy_GB sn_ZW kok_IN fr_CI bez_TZ af_ZA nl_NL fr_GP ha_Latn cs_CZ sr_Cyrl_BA sg_CF bs_BA pl_PL khq_ML sr_Latn_RS ti_ER fr_GQ tr_TR fr_LU th_TH fr_RE shi_Latn ne_NP pa_Guru_IN uz_Cyrl_UZ fr_RW lt_LT en_GB ak_GH ha_Latn_GH nn_NO sq_AL el_GR de_DE ms_MY seh_MZ ta_IN pt_MZ zh_Hant ebu_KE az_Latn en_IE fr_MC uz_Arab my_MM tzm_Latn_MA ps_AF en_MH ja_JP om_ET sr_Cyrl_ME en_PH kl_GL es_PA tzm_Latn et_EE zh_Hans_CN en_UM sw_KE rwk_TZ fr_TD fr_MF bm_ML fi_FI hu_HU ru_MD es_SV de_AT zh_Hant_MO en_HK fo_FO el_CY fr_BE he_IL ml_IN vun_TZ nl_BE teo_KE bn_IN es_NI fr_CF be_BY ff_SN saq_KE mg_MG mas_TZ asa_TZ as_IN hi_IN es_GQ uz_Arab_AF es_PY rw_RW ar_DZ es_VE ar_BH ar_TN ig_NG af_NA en_BZ es_419 fr_BL bg_BG de_CH rof_TZ ga_IE pa_Arab az_Cyrl_AZ zh_Hans_HK kde_TZ ti_ET lg_UG nd_ZW ru_UA fr_TG de_LU bo_IN en_US en_AU shi_Tfng uz_Cyrl xog_UG ar_YE naq_NA en_PK kn_IN sr_Latn_ME uz_Latn en_SG ar_SA guz_KE fr_BI fa_AF en_MU yo_NG kk_Cyrl sr_Latn ar_SD so_SO ar_SY es_MX mt_MT kw_GB kea_CV ca_ES en_IN es_UY so_DJ or_IN pa_Guru fr_CH sw_TZ pt_GW de_LI ee_GH ha_Latn_NE kk_Cyrl_KZ fr_SN en_BW ms_BN ar_LB jmc_TZ sr_Latn_BA vi_VN az_Latn_AZ haw_US zh_Hans_SG zh_Hant_HK fil_PH es_PE ta_LK luo_KE ses_ML en_TT az_Cyrl en_ZA ee_TG fr_MQ ka_GE pt_BR zu_ZA gl_ES ne_IN hr_HR cgg_UG en_NA nyn_UG sr_Cyrl ha_Latn_NG en_VI sr_Cyrl_RS mas_KE shi_Tfng_MA ur_IN pt_PT lv_LV mr_IN ar_OM hy_AM fa_IR pa_Arab_PK so_KE ar_JO nb_NO ru_RU es_BO es_CO sv_FI ar_KW es_AR fr_CG sl_SI ar_LY fr_MG en_AS fr_NE gv_GB dav_KE uk_UA bem_ZM en_BE fr_DJ rm_CH es_ES en_JM mer_KE it_CH ar_AE uz_Latn_UZ fr_CA fr_BF lag_TZ fr_ML en_CA en_US
refresh boolean whether to force calling live carrier API. By default, we might return a fresh result from the cache
shipping_account string Shipping account number required 5190163571408896
test boolean calls created with test = true will be directed to the carrier test servers
tracking_number string Tracking number of shipment required 567293923024
webhooks boolean whether to allow webhook functionality for this shipment


Successful Response
Field Possible Values Example
carrier string the carrier name dhl
checkpoints array
description string Delivered to a mailbox
status string the most recent important status description Delivered to a mailbox
time string 2021-06-07T10:46:07.000+1000
tracking_stage string the most recent important status standardized shipment stage CREATION_PENDING CREATED PICKED_UP IN_TRANSIT OUT_FOR_DELIVERY DRIVER_ASSIGNED CHECKED_IN DELIVERED SHIPMENT_VOIDED EXCEPTION DELIVERED
delivered boolean whether the shipment was successfully delivered
delivery_date string delivery date of this shipment 2021-06-07T00:00:00.000Z
estimated_delivery string estimated delivery date of this shipment 2021-06-07T00:00:00.000Z
locale string locale used in the checkpoint response. Not all carriers support different languages it_IT shi_Latn_MA fr_FR fr_KM en_IL es_GT ar_EG fr_BJ de_BE ar_MA es_DO es_HN en_MT es_US zh_Hans_MO en_MP id_ID kab_DZ ki_KE gu_IN ro_RO sv_SE ar_IQ chr_US fr_GN si_LK en_NZ en_ZW ro_MD bn_BD om_KE sk_SK so_ET fr_GA en_GU mfe_MU ko_KR mk_MK pa_Guru_IN es_CR luy_KE eu_ES teo_UG zh_Hans es_EC yue_Hant_HK to_TO kln_KE kam_KE uz_Cyrl_UZ ar_QA fr_CM gsw_CH am_ET te_IN da_DK is_IS fr_CD zh_Hant_TW es_PR ii_CN es_CL bo_CN km_KH ur_PK sn_ZW cy_GB kok_IN fr_CI bez_TZ af_ZA nl_NL fr_GP ha_Latn cs_CZ sr_Cyrl_BA pl_PL bs_BA khq_ML sg_CF sr_Latn_RS ti_ER fr_GQ tr_TR fr_LU th_TH fr_RE shi_Latn ne_NP fr_RW lt_LT en_GB ak_GH ha_Latn_GH nn_NO sq_AL el_GR de_DE ms_MY seh_MZ ta_IN pt_MZ zh_Hant ebu_KE az_Latn en_IE fr_MC uz_Arab my_MM tzm_Latn_MA ps_AF en_MH ja_JP om_ET sr_Cyrl_ME en_PH kl_GL es_PA tzm_Latn et_EE zh_Hans_CN en_UM sw_KE rwk_TZ fr_TD fr_MF bm_ML fi_FI hu_HU ru_MD es_SV de_AT zh_Hant_MO en_HK fo_FO el_CY fr_BE he_IL ml_IN vun_TZ nl_BE teo_KE bn_IN es_NI fr_CF be_BY ff_SN saq_KE mg_MG mas_TZ asa_TZ as_IN hi_IN es_GQ uz_Arab_AF es_PY rw_RW ar_DZ es_VE ar_BH ar_TN ig_NG af_NA en_BZ es_419 fr_BL bg_BG de_CH rof_TZ ga_IE pa_Arab az_Cyrl_AZ zh_Hans_HK kde_TZ ti_ET lg_UG nd_ZW ru_UA fr_TG de_LU bo_IN en_US en_AU shi_Tfng uz_Cyrl xog_UG ar_YE naq_NA en_PK kn_IN sr_Latn_ME uz_Latn en_SG ar_SA guz_KE fr_BI fa_AF en_MU yo_NG kk_Cyrl sr_Latn ar_SD so_SO ar_SY es_MX mt_MT kw_GB kea_CV ca_ES en_IN es_UY so_DJ or_IN pa_Guru fr_CH sw_TZ pt_GW de_LI ee_GH ha_Latn_NE kk_Cyrl_KZ fr_SN en_BW ms_BN ar_LB jmc_TZ sr_Latn_BA vi_VN az_Latn_AZ haw_US zh_Hans_SG zh_Hant_HK fil_PH es_PE ta_LK luo_KE ses_ML en_TT az_Cyrl en_ZA ee_TG fr_MQ ka_GE pt_BR zu_ZA gl_ES ne_IN hr_HR cgg_UG en_NA nyn_UG sr_Cyrl ha_Latn_NG en_VI sr_Cyrl_RS mas_KE shi_Tfng_MA ur_IN pt_PT lv_LV mr_IN ar_OM hy_AM fa_IR pa_Arab_PK so_KE ar_JO nb_NO ru_RU es_BO es_CO sv_FI ar_KW es_AR fr_CG sl_SI ar_LY fr_MG en_AS fr_NE gv_GB dav_KE uk_UA bem_ZM en_BE fr_DJ rm_CH es_ES en_JM mer_KE it_CH ar_AE uz_Latn_UZ fr_CA fr_BF lag_TZ fr_ML en_CA en_US
status string the most recent important status description Delivered to a mailbox
tracking_number string Tracking number of shipment 567293923024
tracking_stage string the most recent important status standardized shipment stage CREATION_PENDING CREATED PICKED_UP IN_TRANSIT OUT_FOR_DELIVERY DRIVER_ASSIGNED CHECKED_IN DELIVERED SHIPMENT_VOIDED EXCEPTION DELIVERED


Error Response
Field Possible Values Example
error object
code string Standardized error code required carrier_http_exception carrier_throttling schema_validation_error carrier_exception shipping_account_wrong_carrier carrier_no_shipment_found carrier_timeout schema_field_required missing_api_key carrier_unsupported_method wrong_api_key shipping_account_not_found carrier_authentication unexpected_exception carrier_failed_connection carrier_no_shipment_found
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message object Error message required FedEx API: No shipment found with tracking number: 567293923024
Available Languages

DHL Express supports returning tracking responses in a number of languages:

Name API value
Bashkir ba_BA
Bulgarian bg_BG
Czech cs_CZ
Danish da_DK
German de_DE
Greek el_GR
English en_US
Spanish es_ES
Estonian et_EE
Finnish fi_FI
French fr_FR
Italian it_IT
Hebrew he_IL
Japanese ja_JP
Lingala ln_CG
Lithuanian lt_LT
Latvian lv_LV
Macedonian mk_MK
Dutch nl_NL
Norwegian no_NO
Polish pl_PL
Portuguese pt_PT
Romanian ro_RO
Russian ru_RU
Slovak sk_SK
Slovenian sl_SI
Albanian sq_AL
Serbian sr_RS
Sudanese su_ID
Swedish sv_SE
Thai th_TH
Tagalog tl_PH
Turkish tr_TR
Twi tw_GH
Ukrainian uk_UA
Chinese zh_CN
Afar aa_ER
Abkhazian ab_AB
Afrikaans af_ZA
Amharic am_ET
Arabic ar_SA
Assamese as_IN
Aymara AY
Azerbaijani AZ
Byelorussian be_BY
Bulgarian bg
Bihari BH
Bislama bi_VU
Bengali Bangla bn_BD
Tibetan bo_CN
Breton br_FR
Catalan ca_ES
Corsican co_FR
Welsh cy_GB
Danish da
Bhutani dz_BT
Esperanto eo_EO
Basque eu_ES
Persian fa_IR
Fiji fj_FJ
Faeroese fo_FO
Frisian fy_NL
Irish ga_IE
Gaelic Scots Gaelic gd_GB
Galician gl_ES
Guarani gn_PY
Gujarati gu_IN
Hausa ha_NG
Hindi hi_IN
Interlingua IA
Interlingue IE
Inupiak IK
Indonesian id_ID
Icelandic is_IS
Yiddish JI
Javanese JW
Georgian ka_GE
Kazakh kk_KZ
Greenlandic kl_GL
Cambodian KM
Kannada kn_IN
Korean ko_KR
Kashmiri ks_IN
Kurdish ku_IQ
Kirghiz ky_KG
Latin LA
Laothian lo_LA
Malagasy mg_MG
Maori mi_NZ
Malayalam ml_IN
Mongolian mn_MN
Moldavian md_MO
Marathi mr_IN
Malay ms_MY
Maltese mt_MT
Burmese my_MM
Nauru na_NR
Nepali ne_NP
Occitan oc_FR
Oromo Afan om_ET
Oriya or_IN
Punjabi pa_IN
Pashto Pushto ps_AF
Portuguese pt_BR
Quechua qu_PE
Rhaeto_Romance rm_IT
Kirundi rn_BI
Kinyarwanda rw_RW
Sanskrit sa_IN
Sindhi sd_PK
Sangro sg_CF
Serbo_Croatian sh_HR
Singhalese si_LK
Samoan sm_WS
Shona sn_ZW
Somali so_SO
Siswati ss_SZ
Sesotho st_LS
Swahili sw_KE
Tamil ta_IN
Tegulu te_IN
Tajik tg_TJ
Tigrinya ti_ER
Turkmen tk_TM
Setswana tn_BW
Tonga to_TO
Tsonga ts_ZA
Tatar tt_RU
Urdu ur_PK
Uzbek uz_UZ
Vietnamese vi_VN
Volapuk VO
Wolof wo_SN
Xhosa xh_ZA
Yoruba yo_NG
Chinese zh_HK
Zulu zu_ZA
Show more
Example Request / Response
{
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
}
                curl --request POST \
--url https://api.zenkraft.com/track \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
}
url = "https://api.zenkraft.com/track"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "carrier": "dhl",
  "delivered": true,
  "estimated_delivery": "2021-06-07T00:00:00.000Z",
  "delivery_date": "2021-06-07T00:00:00.000Z",
  "tracking_number": "567293923024",
  "status": "Delivered to a mailbox",
  "tracking_stage": "DELIVERED",
  "checkpoints": [
    {
      "description": "Delivered to a mailbox",
      "status": "Delivered to a mailbox",
      "tracking_stage": "DELIVERED",
      "time": "2021-06-07T10:46:07.000+1000"
    }
  ]
}

Batch tracking

You can pass several track objects into your API request to get results.
Request and response details are the same and can be checked here.

Example Request / Response
[
  {
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
  },
  {
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
  }
]
                curl --request POST \
--url https://api.zenkraft.com/track \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '[
  {
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
  },
  {
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
  }
]'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = [
  {
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
  },
  {
    "track": {
      "test":false,
      "carrier": "dhl",
      "shipping_account": 00000000000000,
      "tracking_number": "1Z7881280399212000"
    }
  }
]
url = "https://api.zenkraft.com/track"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
[
  {
    "carrier": "dhl",
    "delivered": true,
    "estimated_delivery": "2021-06-07T00:00:00.000Z",
    "delivery_date": "2021-06-07T00:00:00.000Z",
    "tracking_number": "567293923024",
    "status": "Delivered to a mailbox",
    "tracking_stage": "DELIVERED",
    "checkpoints": [
      {
        "description": "Delivered to a mailbox",
        "status": "Delivered to a mailbox",
        "tracking_stage": "DELIVERED",
        "time": "2021-06-07T10:46:07.000+1000"
      }
    ]
  },
  {
    "carrier": "dhl",
    "delivered": true,
    "estimated_delivery": "2021-06-07T00:00:00.000Z",
    "delivery_date": "2021-06-07T00:00:00.000Z",
    "tracking_number": "567293923024",
    "status": "Delivered to a mailbox",
    "tracking_stage": "DELIVERED",
    "checkpoints": [
      {
        "description": "Delivered to a mailbox",
        "status": "Delivered to a mailbox",
        "tracking_stage": "DELIVERED",
        "time": "2021-06-07T10:46:07.000+1000"
      }
    ]
  }
]

/pickup POST

The pickup endpoint allows you to schedule pickups for one or more shipments.

POST Request Parameters
Field Possible Values Example
pickup object required
currency string BOB BDT SPL TND QAR OMR CRC CUC MYR LSL NGN AED CNY BSD MAD AUD MNT KES LBP SEK TMT LRD DOP STN SVC TWD SGD BIF BYN MDL BHD FJD WST HUF AZN KHR COP JOD XOF DZD VUV ILS EUR MRU ISK GYD MKD XAF BRL KWD LYD IDR PHP LAK TTD ZMW BAM CDF UGX YER PYG ANG AMD PKR DKK SLL HNL MGA CLP AOA SDG THB RWF PLN NOK SOS KZT GHS ARS GBP KMF RON KGS DJF TVD XCD CUP MVR INR TZS BGN LKR ERN AFN XDR VEF CAD MXN TJS SHP GGP JEP UAH SZL RSD AWG BTN NIO GNF MOP SRD MUR VND ALL KPW SBD BND BWP GEL BZD HKD SYP ETB BBD CVE GIP HRK SCR FKP SAR MZN IRR IQD PEN CHF UZS TOP KYD ZAR JMD ZWD PGK TRY NZD HTG JPY NPR EGP KRW XPF IMP RUB BMD GMD MMK CZK NAD UYU USD GTQ MWK PAB
debug boolean calls with debug=true will be logged
description string
dim_units string Dimension units of the packages, inches or centimeters required CM IN IN
location object required
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
email string the email address of the recipient jrogers@example.com
location_type string description of the pickup location required front
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient required (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
shipments array required
packages array required
height number height of the package according to units specified under dim_units 5
length number length of the package according to units specified under dim_units. ususally the length needs to be the largest of length, width, height 11
value number value of the package according to currency specified 25
weight number weight of the package according to units specified under weight_units 4.2
width number width of the package according to units specified under dim_units 8.5
recipient object
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ IM GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR CL RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE MF TW ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
service string the service type domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
shipping_account string Shipping account number required 5190163571408896
test boolean calls created with test = true will be directed to the carrier test servers
time object the date and time you want to create the pickup for. required
close_time string end of pickup time required 19:00
date string the date you want to create pickup for. required 2021-06-07
ready_time string start of pickup time required 12:30
weight_units string Weight units of the packages, pounds or kilograms required LB KG LB


Successful Response
Field Possible Values Example
pickup object
confirmation_number string reference number of this pickup. It can be used to cancel the pickup if the carrier allows it 123456789
currency string BOB BDT SPL TND QAR OMR CRC CUC MYR NGN LSL AED CNY BSD MAD AUD MNT KES LBP SEK TMT LRD DOP STN SVC TWD SGD BIF BYN MDL BHD FJD WST HUF AZN KHR COP JOD XOF DZD VUV ILS EUR MRU ISK GYD MKD XAF BRL KWD LYD IDR PHP LAK TTD ZMW BAM CDF UGX YER PYG ANG AMD PKR DKK SLL HNL MGA CLP AOA SDG THB RWF PLN NOK SOS KZT GHS ARS GBP KMF RON KGS DJF TVD XCD CUP MVR INR TZS BGN LKR ERN AFN XDR VEF CAD MXN TJS SHP GGP JEP UAH SZL RSD AWG BTN NIO GNF MOP SRD MUR VND ALL KPW SBD BND BWP GEL BZD HKD SYP ETB BBD CVE GIP HRK SCR FKP SAR MZN IRR IQD PEN CHF UZS TOP KYD ZAR JMD ZWD PGK TRY NZD HTG JPY NPR EGP KRW XPF IMP RUB BMD GMD MMK CZK NAD UYU USD GTQ MWK PAB
debug boolean calls with debug=true will be logged
description string
dim_units string Dimension units of the packages, inches or centimeters required CM IN IN
id string internal pickup ID cf8a402288034fd9941dc1efe22b0680
location object required
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ IM GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR CL RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE MF TW ML US
email string the email address of the recipient jrogers@example.com
location_type string description of the pickup location required front
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient required (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
shipments array required
packages array required
height number height of the package according to units specified under dim_units 5
length number length of the package according to units specified under dim_units. ususally the length needs to be the largest of length, width, height 11
value number value of the package according to currency specified 25
weight number weight of the package according to units specified under weight_units 4.2
width number width of the package according to units specified under dim_units 8.5
recipient object
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
service string the service type domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
shipping_account string Shipping account number required 5190163571408896
test boolean calls created with test = true will be directed to the carrier test servers
time object the date and time you want to create the pickup for. required
close_time string end of pickup time required 19:00
date string the date you want to create pickup for. required 2021-06-07
ready_time string start of pickup time required 12:30
weight_units string Weight units of the packages, pounds or kilograms required LB KG LB


Error Response
Field Possible Values Example
error object
code string Standardized error code required carrier_http_exception carrier_throttling schema_validation_error carrier_exception ship_date_past shipping_account_wrong_carrier carrier_timeout invalid_phone_number schema_field_required missing_api_key carrier_unsupported_method wrong_api_key shipping_account_not_found carrier_authentication unexpected_exception carrier_failed_connection carrier_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message object Error message required FedEx API: The origin country code XX could not be found. Please check the country code.
Example Request / Response
{
    "pickup": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "recipient": {
                    "country": "US"
                },
                "service": "express_worldwide_p"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "time": {
            "ready_time": "09:45",
            "close_time": "16:45",
            "date": "2021-05-20"
        },
        "weight_units": "LB"
    }
}
                curl --request POST \
--url https://api.zenkraft.com/pickup \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "pickup": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "recipient": {
                    "country": "US"
                },
                "service": "express_worldwide_p"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "time": {
            "ready_time": "09:45",
            "close_time": "16:45",
            "date": "2021-05-20"
        },
        "weight_units": "LB"
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "pickup": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "recipient": {
                    "country": "US"
                },
                "service": "express_worldwide_p"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "time": {
            "ready_time": "09:45",
            "close_time": "16:45",
            "date": "2021-05-20"
        },
        "weight_units": "LB"
    }
}
url = "https://api.zenkraft.com/pickup"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "pickup": {
    "confirmation_number": "123456789",
    "id": "cf8a402288034fd9941dc1efe22b0680",
    "carrier": "dhl",
    "shipping_account": "5190163571408896",
    "test": true,
    "debug": false,
    "description": "string",
    "currency": "USD",
    "dim_units": "IN",
    "weight_units": "LB",
    "location": {
      "name": "Jack O'Rogers",
      "company": "Burlington Textiles Corp of America",
      "street1": "525 S. ZENKRAFT Ave",
      "street2": "suite 120",
      "email": "jrogers@example.com",
      "phone": "(336) 222-7000",
      "city": "Burlington",
      "state": "NC",
      "postal_code": "27215",
      "country": "US",
      "location_type": "front"
    },
    "shipments": [
      {
        "recipient": {
          "name": "Jack O'Rogers",
          "company": "Burlington Textiles Corp of America",
          "street1": "525 S. ZENKRAFT Ave",
          "street2": "suite 120",
          "email": "jrogers@example.com",
          "phone": "(336) 222-7000",
          "city": "Burlington",
          "state": "NC",
          "postal_code": "27215",
          "country": "US"
        },
        "packages": [
          {
            "weight": 4.2,
            "value": 25,
            "length": 11,
            "width": 8.5,
            "height": 5
          }
        ],
        "service": "fedex_ground"
      }
    ],
    "time": {
      "close_time": "19:00",
      "ready_time": "12:30",
      "date": "2021-06-07"
    }
  }
}
/pickup cancel POST

You can also cancel pickups. All you need to do is to replace the request payload root node name with 'cancel'. Other request parameters are the same as here.

Example Request / Response
{
    "cancel": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "recipient": {
                    "country": "US"
                },
                "service": "express_worldwide_p"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "time": {
            "ready_time": "09:45",
            "close_time": "16:45",
            "date": "2021-05-20"
        },
        "weight_units": "LB"
    }
}
                curl --request POST \
--url https://api.zenkraft.com/pickup \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "cancel": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "recipient": {
                    "country": "US"
                },
                "service": "express_worldwide_p"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "time": {
            "ready_time": "09:45",
            "close_time": "16:45",
            "date": "2021-05-20"
        },
        "weight_units": "LB"
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "cancel": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "recipient": {
                    "country": "US"
                },
                "service": "express_worldwide_p"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "time": {
            "ready_time": "09:45",
            "close_time": "16:45",
            "date": "2021-05-20"
        },
        "weight_units": "LB"
    }
}
url = "https://api.zenkraft.com/pickup"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
    "cancel": {
        "confirmation_number": "123456789",
        "id": "cf8a402288034fd9941dc1efe22b0680",
        "carrier": "dhl",
        "shipping_account": "5190163571408896",
        "test": true,
        "debug": false,
    }
}

/dopu POST

The dopu endpoint is used to retrieve the list of possible drop off locations nearby.

POST Request Parameters
Field Possible Values Example
dopu object required
debug boolean calls with debug=true will be logged
location object required
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ IM GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR CL RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE MF TW ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
shipping_account string Shipping account number required 5190163571408896
test boolean calls created with test = true will be directed to the carrier test servers


Successful Response
Field Possible Values Example
locations array
city string Burlington
country string AD AE AF AG AI AL AM AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BJ BL BM BN BO BQ BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CW CX CY CZ DE DJ DK DM DO DZ EC EE EG EH ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR SS ST SV SX SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW US
distance number how far is it from the location described in the request to this pickup location 1.3
distance_units string km
lat string latitude -79.43575121732864
lng string longitude 36.089788917096016
location_code string carrier assigned location ID A4415567
location_name string name of the business/post office United States Postal Service
location_type string the type of this pickup location post_office
postal_code string 27215
state string NC
street1 string 405 Maple Ave


Error Response
Field Possible Values Example
error object
code string Standardized error code required carrier_http_exception carrier_throttling schema_validation_error carrier_exception shipping_account_wrong_carrier carrier_timeout schema_field_required missing_api_key carrier_unsupported_method wrong_api_key shipping_account_not_found carrier_authentication unexpected_exception carrier_failed_connection carrier_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message string Error message required FedEx API: Postal code specified is not in the correct format
Example Request / Response
{
    "dopu": {
        "carrier": "dhl",
        "location": {
            "city": "San Diego",
            "country": "US",
            "postal_code": "92131",
            "state": "CA",
            "street1": "1 Market Street"
        },
        "shipping_account": "673603996",
        "test": true
    }
}
                curl --request POST \
--url https://api.zenkraft.com/dopu \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "dopu": {
        "carrier": "dhl",
        "location": {
            "city": "San Diego",
            "country": "US",
            "postal_code": "92131",
            "state": "CA",
            "street1": "1 Market Street"
        },
        "shipping_account": "673603996",
        "test": true
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "dopu": {
        "carrier": "dhl",
        "location": {
            "city": "San Diego",
            "country": "US",
            "postal_code": "92131",
            "state": "CA",
            "street1": "1 Market Street"
        },
        "shipping_account": "673603996",
        "test": true
    }
}
url = "https://api.zenkraft.com/dopu"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "locations": [
    {
      "location_type": "post_office",
      "distance": 1.3,
      "distance_units": "km",
      "location_name": "United States Postal Service",
      "location_code": "A4415567",
      "city": "Burlington",
      "street1": "405 Maple Ave",
      "state": "NC",
      "postal_code": "27215",
      "country": "US",
      "lng": "36.089788917096016",
      "lat": "-79.43575121732864"
    }
  ]
}

/pickup/availability POST

Find the time slots between the start_date and the end_date during which the carrier can pick up the specified shipments.

POST Request Parameters
Field Possible Values Example
pickup_availability object required
close_time string Reserved for future use 2021-06-04
currency string BOB BDT SPL TND QAR OMR CRC CUC MYR NGN LSL AED CNY BSD MAD AUD MNT KES LBP SEK TMT LRD DOP STN SVC TWD SGD BIF BYN MDL BHD FJD WST HUF AZN KHR COP JOD XOF DZD VUV ILS EUR MRU ISK GYD MKD XAF BRL KWD LYD IDR PHP LAK TTD ZMW BAM CDF UGX YER PYG ANG AMD PKR DKK SLL HNL MGA CLP AOA SDG THB RWF PLN NOK SOS KZT GHS ARS GBP KMF RON KGS DJF TVD XCD CUP MVR INR TZS BGN LKR ERN AFN XDR VEF CAD MXN TJS SHP GGP JEP UAH SZL RSD AWG BTN NIO GNF MOP SRD MUR VND ALL KPW SBD BND BWP GEL BZD HKD SYP ETB BBD CVE GIP HRK SCR FKP SAR MZN IRR IQD PEN CHF UZS TOP KYD ZAR JMD ZWD PGK TRY NZD HTG JPY NPR EGP KRW XPF IMP RUB BMD GMD MMK CZK NAD UYU USD GTQ MWK PAB
debug boolean calls with debug=true will be logged
description string
dim_units string Dimension units of the packages, inches or centimeters required CM IN IN
end_date string End of the range of dates to check required 2021-06-04
location object required
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ IM GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR CL RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE MF TW ML US
email string the email address of the recipient jrogers@example.com
location_type string description of the pickup location required front
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient required (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
ready_time string Reserved for future use 2021-06-04
shipments array required
packages array required
height number height of the package according to units specified under dim_units 5
length number length of the package according to units specified under dim_units. ususally the length needs to be the largest of length, width, height 11
value number value of the package according to currency specified 25
weight number weight of the package according to units specified under weight_units 4.2
width number width of the package according to units specified under dim_units 8.5
recipient object
city string the city of the recipient required Burlington
company string the company name of the recipient Burlington Textiles Corp of America
country string required GU CU LR LC BH ZM BZ NZ KZ PM KY GP DE HR LK CX CY VE HK AR TJ CN TF KG TL GN BO MK YE MV SM SV PR SL PH AT FM AG PS UZ NL MW PK JM PF CI IN RW MA ER UG KI SB DJ GH LB JP RO MM SJ EC SE MC CD GQ MN WF EE SI SO KW CG QA IT ID TW SY IR GL LV AD MX BE BM CH GT KH BB GR HT NO KR AW NE NI DZ JE BF UM EG NU BQ PL FO US GD PG FJ HM DM SS MH FI CV LS CO BJ MQ SR GW VI OM BN BS FR PY UY BG BT MF GG MD LU VU SC SG KE AS SD RE AL ST AZ AO GI MS TN HN SK MZ GB YT BY CW TD TC LI TK AM TM GM MT PA SA VG CK CF MG LT IS ZW BR RU MP IQ NC LY DO PT TR LA KM CM VN FK ES AQ NA SX BI MO NF PW MR RS DK IE AF CC GS TH AU SZ TT VA SN WS BW EH BL CA PN VC MY UA GF AX AI BV NP NG TO CZ GE TZ ZA JO TG HU KP SH TV CR ET BD BA GA ME MU NR IL GY KN PE IO AE IM CL ML US
email string the email address of the recipient jrogers@example.com
name string the name of the recipient required Jack O'Rogers
phone string the phone number of the recipient (336) 222-7000
postal_code string the postal code / zip number of the recipient. Specific format depends on the country 27215
state string the state of the recipient NC
street1 string the first line of the street address of the recipient required 525 S. ZENKRAFT Ave
street2 string the second line of the street address of the recipient suite 120
street3 string the third line of the street address of the recipient suite 120
service string the service type domestic_express_1200 b2c2 b2c3 jetline sprintline express_easy_7 express_easy_8 europack_9 breakbulk_economy breakbulk_express medical_express_c express_worldwide_d express_900_e freight_worldwide domestic_economy_select economy_select_h domestic_express_900_i jumbo_box express_900 express_1030_l express_1030_m domestic_express domestic_express_1030 express_worldwide_p medical_express_q globalmail_business same_day express_1200_t express_worldwide_u europack_v economy_select_w express_envelope express_1200_y domestic_express_1200
shipping_account string Shipping account number required 5190163571408896
start_date string Start of the range of dates to check required 2021-06-04
test boolean calls created with test = true will be directed to the carrier test servers
weight_units string Weight units of the packages, pounds or kilograms required LB KG LB


Successful Response
Field Possible Values Example
pickup_availability object
dates array
date string Pickup date 2021-06-04
earliest string The earliest time the shipments can be picked up 09:00
latest string The latest time the shipments can be picked up 18:00
debug boolean calls with debug=true will be logged
dim_units string Dimension units of the packages, inches or centimeters CM IN IN
shipping_account string Shipping account number required 5190163571408896
test boolean calls created with test = true will be directed to the carrier test servers
weight_units string Weight units of the packages, pounds or kilograms LB KG LB


Error Response
Field Possible Values Example
error object
code string Standardized error code required ship_date_past carrier_throttling schema_validation_error carrier_exception shipping_account_wrong_carrier unexpected_exception carrier_timeout invalid_phone_number schema_field_required missing_api_key carrier_unsupported_method wrong_api_key shipping_account_not_found carrier_authentication carrier_http_exception carrier_failed_connection carrier_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message object Error message required FedEx API: The origin country code XX could not be found. Please check the country code.
Example Request / Response
{
    "pickup_availability": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "service": "domestic_express_1200"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "weight_units": "LB",
        "start_date": "2026-07-03",
        "end_date": "2026-07-03"
    }
}
                curl --request POST \
--url https://api.zenkraft.com/pickup/availability \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "pickup_availability": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "service": "domestic_express_1200"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "weight_units": "LB",
        "start_date": "2026-07-03",
        "end_date": "2026-07-03"
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "pickup_availability": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "service": "domestic_express_1200"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "weight_units": "LB",
        "start_date": "2026-07-03",
        "end_date": "2026-07-03"
    }
}
url = "https://api.zenkraft.com/pickup/availability"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
    "pickup_availability": {
        "carrier": "dhl",
        "debug": true,
        "dim_units": "IN",
        "location": {
            "city": "San Francisco",
            "company": "Test Company",
            "country": "US",
            "email": "test@example.com",
            "location_type": "business",
            "name": "Test Name",
            "phone": "+1 201-333-4444",
            "postal_code": "94105",
            "state": "NJ",
            "street1": "1 Market Street"
        },
        "shipments": [
            {
                "packages": [
                    {
                        "quantity": 1,
                        "weight": 3
                    }
                ],
                "service": "domestic_express_1200"
            }
        ],
        "shipping_account": 197299590,
        "test": true,
        "weight_units": "LB",
        "start_date": "2026-07-03",
        "end_date": "2026-07-03",
        "dates": [
            {
                "date" : "2021-06-30",
                "earliest": "09:00",
                "latest": "18:00"
            },
            {
                "date" : "2021-07-01",
                "earliest": "09:00",
                "latest": "18:00"
            },
            {
                "date" : "2021-07-02",
                "earliest": "09:00",
                "latest": "15:00"
            }
        ]
    }
}

/webhook POST

Webhooks provide you with a real-time view of your shipments.

1. Create a webhook configuration

In order to start using webhooks, you need to create a webhook configuration. You can find an example payload on the right side.

2. Receive a webhook

Now we will start sending tracking event updates as POST requests to your chosen address. The request will be formatted the same way as our track response

3. Verify a webhook

Webhooks can be verified by calculating a digital signature. Each webhook request includes a base64-encoded X-Zenkraft-Hmac-SHA256 header, which is generated using your API key along with the data sent in the request. Once you verify this signature, you can be sure the request came from us and you can continue your processing.

4. Response to a webhook

Your endpoint acknowledges that it received data by sending a 200 response. Any response outside of 200-range is considered an error. On our side, we have set a 5 second timeout. Any errors will be retried in a staggered manner over the course of the day.

Testing a Webhook

To test a webhook, run a local server or use a publicly available service such as Beeceptor. If you decide to run a server locally, then you need to make it publicly available using a service such as Pagekite or ngrok. The following URLs can't be endpoints for a webhook:

  • Localhost
  • Any URL ending in the word "internal"
  • Domains like www.example.com
  • Zenkraft domains such as api.zenkraft.com

POST Request Parameters
Field Possible Values Example
webhook object required
api_version string The webhook version. Used for future compatibility v1
callback string URL of the receiving endpoint required https://webhook.site/3a788dd3-bd7c-44a8-bae0-297e3b68b508
debug boolean calls with debug=true will be logged
description string Webhook description
events array Events to receive. If left empty, it's assumed you want to receive all the events shipment.in_transit shipment.shipment_voided return.creation_pending shipment.exception return.checked_in return.exception shipment.delivered shipment.created return.in_transit shipment.creation_pending return.picked_up return.delivered shipment.out_for_delivery shipment.driver_assigned return.out_for_delivery return.shipment_voided return.driver_assigned shipment.picked_up shipment.checked_in return.created shipment.delivered
format string Currently only JSON is supported. Used for future compatibility json
headers array Headers that will be sent to the webhook callback.
name string Authorization
value string api_key
name string Webhook name
shipping_account_id integer 123
trigger_mode string checkpoint stage


Successful Response
Field Possible Values Example
webhook object
api_version string The webhook version. Used for future compatibility v1
callback string URL of the receiving endpoint required https://webhook.site/3a788dd3-bd7c-44a8-bae0-297e3b68b508
debug boolean calls with debug=true will be logged
description string Webhook description
events array Events to receive. If left empty, it's assumed you want to receive all the events shipment.in_transit shipment.shipment_voided return.creation_pending shipment.exception return.checked_in return.exception shipment.delivered shipment.created return.in_transit shipment.creation_pending return.picked_up return.delivered shipment.out_for_delivery shipment.driver_assigned return.out_for_delivery return.shipment_voided return.driver_assigned shipment.picked_up shipment.checked_in return.created shipment.delivered
format string Currently only JSON is supported. Used for future compatibility json
headers array Headers that will be sent to the webhook callback.
name string Authorization
value string api_key
id string ID of the subscription 484fe753dcda47a1b817456f3a10e38e
name string Webhook name
shipping_account_id integer 123
trigger_mode string checkpoint stage


Error Response
Field Possible Values Example
error object
code string Standardized error code required missing_api_key wrong_api_key shipping_account_not_found shipping_account_wrong_carrier schema_validation_error schema_field_required unexpected_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message string Error message required Missing zkkey HTTP header containing your Zenkraft API key
Example Request / Response
{
    "webhook": {
        "name": "Test Webhook",
        "description": "Send delivery notifications",
        "events": ["shipment.out_for_delivery", "shipment.delivered"],
        "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
        "debug": false,
        "api_version": "v1",
        "format": "json",
        "headers": [
          {
            "name": "Authorization",
            "value": "api_key"
          }
        ],
        "shipping_account_id": 123,
        "trigger_mode": "checkpoint"
    }
}
                curl --request POST \
--url https://api.zenkraft.com/webhook \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "webhook": {
        "name": "Test Webhook",
        "description": "Send delivery notifications",
        "events": ["shipment.out_for_delivery", "shipment.delivered"],
        "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
        "debug": false,
        "api_version": "v1",
        "format": "json",
        "headers": [
          {
            "name": "Authorization",
            "value": "api_key"
          }
        ],
        "shipping_account_id": 123,
        "trigger_mode": "checkpoint"
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = {
    "webhook": {
        "name": "Test Webhook",
        "description": "Send delivery notifications",
        "events": ["shipment.out_for_delivery", "shipment.delivered"],
        "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
        "debug": false,
        "api_version": "v1",
        "format": "json",
        "headers": [
          {
            "name": "Authorization",
            "value": "api_key"
          }
        ],
        "shipping_account_id": 123,
        "trigger_mode": "checkpoint"
    }
}
url = "https://api.zenkraft.com/webhook"

response = requests.request(url=url, method='POST', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "webhook": {
    "name": "Test Webhook",
    "description": "Send delivery notifications",
    "events": ["shipment.out_for_delivery", "shipment.delivered"],
    "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
    "debug": false,
    "api_version": "v1",
    "format": "json",
    "id": "484fe753dcda47a1b817456f3a10e38e",
    "headers": [
      {
        "name": "Authorization",
        "value": "api_key"
      }
    ],
    "shipping_account_id": 123,
    "trigger_mode": "checkpoint"
  }
}


/webhook GET

This endpoint allows you to retrieve previously created webhooks.



Successful Response
Field Possible Values Example
webhooks array
api_version string The webhook version. Used for future compatibility v1
callback string URL of the receiving endpoint https://webhook.site/3a788dd3-bd7c-44a8-bae0-297e3b68b508
debug boolean calls with debug=true will be logged
description string Webhook description
events array Events to receive. If left empty, it's assumed you want to receive all the events shipment.in_transit shipment.shipment_voided return.creation_pending shipment.exception return.checked_in return.exception shipment.delivered shipment.created return.in_transit shipment.creation_pending return.picked_up return.delivered shipment.out_for_delivery shipment.driver_assigned return.out_for_delivery return.shipment_voided return.driver_assigned shipment.picked_up shipment.checked_in return.created shipment.delivered
format string Currently only JSON is supported. Used for future compatibility json
headers array Headers that will be sent to the webhook callback.
name string Authorization
value string api_key
id string ID of the subscription 484fe753dcda47a1b817456f3a10e38e
name string Webhook name
shipping_account_id integer 123
trigger_mode string checkpoint stage


Error Response
Field Possible Values Example
error object
code string Standardized error code required missing_api_key wrong_api_key shipping_account_not_found shipping_account_wrong_carrier schema_validation_error schema_field_required unexpected_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message string Error message required Missing zkkey HTTP header containing your Zenkraft API key
Example Request / Response
https://api.zenkraft.com/webhook
                curl --request GET \
--url https://api.zenkraft.com/webhook \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = None
url = "https://api.zenkraft.com/webhook"

response = requests.request(url=url, method='GET', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "webhooks": [
    {
      "name": "Test Webhook",
      "description": "Send delivery notifications",
      "debug": false,
      "api_version": "v1",
      "format": "json",
      "events": [
        "shipment.delivered"
      ],
      "callback": "https://webhook.site/3a788dd3-bd7c-44a8-bae0-297e3b68b508",
      "headers": [
        {
          "name": "Authorization",
          "value": "api_key"
        }
      ],
      "shipping_account_id": 123,
      "trigger_mode": "checkpoint",
      "id": "484fe753dcda47a1b817456f3a10e38e"
    }
  ]
}


/webhook/{webhook_id} PUT

This endpoint allows you to put the webhook.

PUT Request Parameters
Field Possible Values Example
webhook object
api_version string The webhook version. Used for future compatibility v1
callback string URL of the receiving endpoint required https://webhook.site/3a788dd3-bd7c-44a8-bae0-297e3b68b508
debug boolean calls with debug=true will be logged
description string Webhook description
events array Events to receive. If left empty, it's assumed you want to receive all the events shipment.in_transit shipment.shipment_voided return.creation_pending shipment.exception return.checked_in return.exception shipment.delivered shipment.created return.in_transit shipment.creation_pending return.picked_up return.delivered shipment.out_for_delivery shipment.driver_assigned return.out_for_delivery return.shipment_voided return.driver_assigned shipment.picked_up shipment.checked_in return.created shipment.delivered
format string Currently only JSON is supported. Used for future compatibility json
headers array Headers that will be sent to the webhook callback.
name string Authorization
value string api_key
name string Webhook name
shipping_account_id integer 123
trigger_mode string checkpoint stage


Successful Response
Field Possible Values Example
webhook object
api_version string The webhook version. Used for future compatibility v1
callback string URL of the receiving endpoint required https://webhook.site/3a788dd3-bd7c-44a8-bae0-297e3b68b508
debug boolean calls with debug=true will be logged
description string Webhook description
events array Events to receive. If left empty, it's assumed you want to receive all the events shipment.in_transit shipment.shipment_voided return.creation_pending shipment.exception return.checked_in return.exception shipment.delivered shipment.created return.in_transit shipment.creation_pending return.picked_up return.delivered shipment.out_for_delivery shipment.driver_assigned return.out_for_delivery return.shipment_voided return.driver_assigned shipment.picked_up shipment.checked_in return.created shipment.delivered
format string Currently only JSON is supported. Used for future compatibility json
headers array Headers that will be sent to the webhook callback.
name string Authorization
value string api_key
id string ID of the subscription 484fe753dcda47a1b817456f3a10e38e
name string Webhook name
shipping_account_id integer 123
trigger_mode string checkpoint stage


Error Response
Field Possible Values Example
error object
code string Standardized error code. If the code equals `carrier_large_manifest` you might retrieve manifest_id from the error detail required schema_validation_error shipping_account_wrong_carrier schema_field_required missing_api_key wrong_api_key webhook_not_found shipping_account_not_found unexpected_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message string Error message required No webhook exists with that ID
Example Request / Response
{
    "webhook": {
        "name": "Test Webhook",
        "description": "Send delivery notifications",
        "events": ["shipment.out_for_delivery", "shipment.delivered"],
        "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
        "debug": false,
        "api_version": "v1",
        "format": "json",
        "headers": [
          {
            "name": "Authorization",
            "value": "api_key"
          }
        ],
        "shipping_account_id": 123,
        "trigger_mode": "checkpoint"
    }
}
                curl --request PUT \
--url https://api.zenkraft.com/webhook \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
    "webhook": {
        "name": "Test Webhook",
        "description": "Send delivery notifications",
        "events": ["shipment.out_for_delivery", "shipment.delivered"],
        "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
        "debug": false,
        "api_version": "v1",
        "format": "json",
        "headers": [
          {
            "name": "Authorization",
            "value": "api_key"
          }
        ],
        "shipping_account_id": 123,
        "trigger_mode": "checkpoint"
    }
}'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = None
url = "{
    "webhook": {
        "name": "Test Webhook",
        "description": "Send delivery notifications",
        "events": ["shipment.out_for_delivery", "shipment.delivered"],
        "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
        "debug": false,
        "api_version": "v1",
        "format": "json",
        "headers": [
          {
            "name": "Authorization",
            "value": "api_key"
          }
        ],
        "shipping_account_id": 123,
        "trigger_mode": "checkpoint"
    }
}"

response = requests.request(url=url, method='PUT', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "webhook": {
    "name": "Test Webhook",
    "description": "Send delivery notifications",
    "events": ["shipment.out_for_delivery", "shipment.delivered"],
    "callback": "https://webhook.site/f263f99d-e822-4185-9ff8-f56789bc78c6",
    "debug": false,
    "api_version": "v1",
    "format": "json",
    "id": "484fe753dcda47a1b817456f3a10e38e",
    "headers": [
      {
        "name": "Authorization",
        "value": "api_key"
      }
    ],
    "shipping_account_id": 123,
    "trigger_mode": "checkpoint"
  }
}


/webhook/{webhook_id} DELETE

This endpoint allows you to delete the specific webhook.

DELETE Request Parameters
Field Possible Values Example
webhook_id object ID of the previously created webhook returned from POST on /webhook required


Successful Response
Field Possible Values Example
success object required
message string Message describing the action was performed successfully Success!


Error Response
Field Possible Values Example
error object
code string Standardized error code. If the code equals `carrier_large_manifest` you might retrieve manifest_id from the error detail required schema_validation_error shipping_account_wrong_carrier schema_field_required missing_api_key wrong_api_key webhook_not_found shipping_account_not_found unexpected_exception
detail string This field can contain additional information about the error. This field is not meant to be shown to the end-user required
message string Error message required No webhook exists with that ID
Example Request / Response
https://api.zenkraft.com/webhook/7acd186c4bad4197ad36b918eff71c03
                curl --request GET \
--url https://api.zenkraft.com/webhook/7acd186c4bad4197ad36b918eff71c03 \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX'
            

import requests

headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}

payload = None
url = "https://api.zenkraft.com/webhook/7acd186c4bad4197ad36b918eff71c03"

response = requests.request(url=url, method='GET', json=payload, headers=headers)

print(response.json())
            
                
            
{
  "success": {
    "message": "Success!"
  }
}

Object References

currencies

Field Type Required Min Length Max Length

locale

requested locale

Field Type Required Min Length Max Length

countries

Field Type Required Min Length Max Length

location_base

Field Type Required Min Length Max Length
name string - 35
company string - 35
street1 string - 50
street2 string - 50
street3 string - 50
email string - 100
phone string - 35
city string - 50
state string - 35
postal_code string - 15
country string - -

location

Field Type Required Min Length Max Length
name string True - 35
company string - 35
street1 string True - 50
street2 string - 50
street3 string - 50
email string - 100
phone string - 35
city string True - 50
state string - 35
postal_code string - 15
country string True - -

location_rate

Field Type Required Min Length Max Length
name string - 35
company string - 35
street1 string - 50
street2 string - 50
street3 string - 50
email string - 100
phone string - 35
city string - 50
state string - 35
postal_code string - 15
country string True - -

packages

We need to know the size and dimensions of your packages.

Field Type Required Min Length Max Length
weight number True - -
value number - -
length number - -
width number - -
height number - -

references

For carriers that allow you to add reference information to your shipment.

Field Type Required Min Length Max Length
type string True - -
value string True - -

tracking_number

Tracking number of shipment

Field Type Required Min Length Max Length

reference_number

some carriers allow you to track either by the tracking number or the reference number

Field Type Required Min Length Max Length

ship_date

shipping date in the ISO format

Field Type Required Min Length Max Length

confirmation_number

reference number of this pickup. It can be used to cancel the pickup if the carrier allows it

Field Type Required Min Length Max Length

shipping_account

Shipping account number

Field Type Required Min Length Max Length

special_services

Specific special services (e.g. COD or a Required Signature) depend on a carrier, so go through our documentation to find which those are

Field Type Required Min Length Max Length

notifications

For carriers that allow you to set email/sms for notifications to your shippers.

Field Type Required Min Length Max Length
type string True - -
value string True - -

customs_items

Additional information about packages

Field Type Required Min Length Max Length
description string True - -
quantity integer True - -
value number True - -
weight number True - -

costs

Additional information about packages

Field Type Required Min Length Max Length
base_charge number - -
net_charge number - -
taxes number - -
surcharges number - -
discounts number - -

shipping_documents

Additional information about packages

Field Type Required Min Length Max Length
description string True - -
document_type string True - -
document string True - -

carrier

the carrier name

Field Type Required Min Length Max Length

status

the most recent important status description

Field Type Required Min Length Max Length

tracking_stage

the most recent important status standardized shipment stage

Field Type Required Min Length Max Length

label_type

the label format of the shipping labels

Field Type Required Min Length Max Length

label_size

the shipping labels size

Field Type Required Min Length Max Length

service

the service type

Field Type Required Min Length Max Length

dim_units

Dimension units of the packages, inches or centimeters

Field Type Required Min Length Max Length

weight_units

Weight units of the packages, pounds or kilograms

Field Type Required Min Length Max Length

created

when was this object created

Field Type Required Min Length Max Length

updated

when was this object updated

Field Type Required Min Length Max Length

debug

calls with debug=true will be logged

Field Type Required Min Length Max Length

base_shipment

Definition of the shipment payload

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
ship_date string - -
type string - -
service string - -
special_services array - -
packaging string True - -
dim_units string True - -
weight_units string True - -
currency string - -
packages array True - -

shipment

Definition of the shipment payload

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
ship_date string - -
type string - -
service string True - -
special_services array - -
packaging string True - -
dim_units string True - -
weight_units string True - -
currency string - -
packages array True - -
label_type string True - -
label_size string - -
include_base64_label boolean - -
references array - -
notifications array - -
sender object True - -
recipient object True - -

shipment_id

shipment ID

Field Type Required Min Length Max Length

shipment_status

Standardized shipment status

Field Type Required Min Length Max Length

ship_response

Field Type Required Min Length Max Length
shipment True - -

_shipment_status_response

Field Type Required Min Length Max Length
shipment True - -

shipment_status_pending_response

Field Type Required Min Length Max Length
shipment True - -

shipment_status_success_response

Field Type Required Min Length Max Length
shipment True - -

rate

Definition of the shipment payload

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
ship_date string - -
type string - -
service string - -
special_services array - -
packaging string True - -
dim_units string True - -
weight_units string True - -
currency string - -
packages array True - -
sender object True - -
recipient object True - -

rate_response

Field Type Required Min Length Max Length
rates array True - -

pickup_response

Field Type Required Min Length Max Length
pickup object True - -

cancel_pickup_response

Field Type Required Min Length Max Length
cancel object True - -

pickup_availability_response

Field Type Required Min Length Max Length
pickup_availability object True - -

cancel_pickup

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
confirmation_number string True - -

_pickup

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
description string - -
currency string - -
dim_units string True - -
weight_units string True - -
location object True - -
shipments array True - -
time object True - -

__pickup

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
description string - -
currency string - -
dim_units string True - -
weight_units string True - -
location object True - -
shipments array True - -

__track

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
checkpoints boolean - -
refresh boolean - -
webhooks boolean - -
locale string - -

track_by_tracking_number

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
checkpoints boolean - -
refresh boolean - -
webhooks boolean - -
locale string - -
tracking_number string True - -

track_by_reference_number

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
checkpoints boolean - -
refresh boolean - -
webhooks boolean - -
locale string - -
reference_number string True - -
ship_date string - -

track

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
checkpoints boolean - -
refresh boolean - -
webhooks boolean - -
locale string - -
tracking_number string True - -

estimated_delivery

estimated delivery date of this shipment

Field Type Required Min Length Max Length

track_response

Field Type Required Min Length Max Length
carrier string - -
delivered boolean - -
estimated_delivery string - -
delivery_date string - -
tracking_number string - -
status string - -
tracking_stage string - -
locale string - -
checkpoints array - -

manifest_id

carrier ID of this manifest which can be used in GET on /manifest/<manifest_id>

Field Type Required Min Length Max Length

manifest_post_response

Field Type Required Min Length Max Length
manifest True - -

manifest_get_response

Field Type Required Min Length Max Length
manifest True - -

manifest_list_response

Field Type Required Min Length Max Length
manifests array True - -

webhook

Field Type Required Min Length Max Length
name string - -
description string - -
debug boolean - -
api_version string - -
format string - -
events array - -
callback string True - -
headers array - -
shipping_account_id integer - -
trigger_mode string - -

webhook_list_response

Field Type Required Min Length Max Length
webhooks array True - -

webhook_id

ID of the subscription

Field Type Required Min Length Max Length

_webhook_response

Field Type Required Min Length Max Length
name string - -
description string - -
debug boolean - -
api_version string - -
format string - -
events array - -
callback string True - -
headers array - -
shipping_account_id integer - -
trigger_mode string - -
id string - -

webhook_response

Field Type Required Min Length Max Length
webhook object - -

dopu

Field Type Required Min Length Max Length
shipping_account string True - -
test boolean - -
debug boolean - -
location object True - -

dopu_response

Field Type Required Min Length Max Length
locations array True - -

shippingaccount_response

Carrier credentials

Field Type Required Min Length Max Length
shipping_account object True - -

error

Field Type Required Min Length Max Length
error object True - -

ship_error

Field Type Required Min Length Max Length
error object True - -

shipment_status_error

Field Type Required Min Length Max Length
error object True - -

rate_error

Field Type Required Min Length Max Length
error object True - -

shippingaccount_error

Field Type Required Min Length Max Length
error object True - -

track_error

Field Type Required Min Length Max Length
error object True - -

dopu_error

Field Type Required Min Length Max Length
error object True - -

pickup_error

Field Type Required Min Length Max Length
error object True - -

pickup_availability_error

Field Type Required Min Length Max Length
error object True - -

manifest_error

Field Type Required Min Length Max Length
error object True - -

webhook_error

Field Type Required Min Length Max Length
error object True - -

location_error

Field Type Required Min Length Max Length
error object True - -

successful_response

Field Type Required Min Length Max Length
success object True - -

UserBase

Field Type Required Min Length Max Length
name string True - -
email string True - -

UserDetails

Field Type Required Min Length Max Length
total_1_day integer True - -
total_7_days integer True - -
total_28_days integer True - -
api_key string True - -
user_token string True - -
company string True - -
created string True - -
mfa boolean True - -

User

Field Type Required Min Length Max Length
name string True - -
email string True - -
total_1_day integer True - -
total_7_days integer True - -
total_28_days integer True - -
api_key string True - -
user_token string True - -
company string True - -
created string True - -
mfa boolean True - -

log_item

Field Type Required Min Length Max Length
id string - -
created string - -
status_code number - -
url string - -
ip_address string - -

LogDetails

Field Type Required Min Length Max Length
id string - -
created string - -
status_code number - -
url string - -
ip_address string - -
http_method string True - -
user_agent string True - -
content_type string True - -
request object True - -
response object True - -

ShipmentCheckpoint

Field Type Required Min Length Max Length
time string True - -
status string True - -
description string True - -

ShipmentItem

Field Type Required Min Length Max Length
id string True - -
tracking_number string True - -
reference_number string True - -
carrier string True - -
status string True - -
created string True - -
is_return boolean True - -

ShipmentDetails

Field Type Required Min Length Max Length
id string True - -
tracking_number string True - -
reference_number string True - -
carrier string True - -
status string True - -
created string True - -
is_return boolean True - -
shipping_account_id integer True - -
updated string True - -
estimated_delivery string True - -
checkpoints array True - -

LocationBase

Field Type Required Min Length Max Length
name string True - 35
company string True - 35
street1 string True - 50
street2 string - 50
street3 string - 50
email string True - 100
phone string True - 35
city string True - 50
state string True - 35
postal_code string True - 15
country string True - -
type string True - -
timezone string - -
cutoff_hours integer - -
cutoff_minutes integer - -

Location

Field Type Required Min Length Max Length
name string True - 35
company string True - 35
street1 string True - 50
street2 string - 50
street3 string - 50
email string True - 100
phone string True - 35
city string True - 50
state string True - 35
postal_code string True - 15
country string True - -
type string True - -
timezone string - -
cutoff_hours integer - -
cutoff_minutes integer - -
id string True - -
updated string - -

return_method_type

Field Type Required Min Length Max Length

return_line

Field Type Required Min Length Max Length
quantity integer True - -
value number True - -
weight number True - -
product_name string True - -
line_id string True - -
hs_code string True - -
sku string True - -
country_of_manufacture string True - -
reasons array True - -

operational_hours

Field Type Required Min Length Max Length
open string True - -
close string True - -

return_cost

Field Type Required Min Length Max Length
carrier_charge number True - -
customer_charge number True - -

ReturnMethodBase

Field Type Required Min Length Max Length
position integer True - -
method_name string True 1 50
display_name string True 1 50
type string True - -
shipping_account_id integer True - -
location_id string True - -
sf_shipping_preference_id string - -
service_type string True - -
return_charge string True - -
filters array True - -

ReturnMethodCountryFilter

Field Type Required Min Length Max Length
field string True - -
operator string True - -
value string True - -

ReturnMethodNumberFilter

Field Type Required Min Length Max Length
field string True - -
operator string True - -
value string True - -

ReturnMethodCustomFilter

Field Type Required Min Length Max Length
field string True - -
operator string True - -
name string True - 50
value string True - -

ReturnMethod

Field Type Required Min Length Max Length
position integer True - -
method_name string True 1 50
display_name string True 1 50
type string True - -
shipping_account_id integer True - -
location_id string True - -
sf_shipping_preference_id string - -
service_type string True - -
return_charge string True - -
filters array True - -
id string True - -

ReturnMethodShortDetails

Field Type Required Min Length Max Length
id string True - -
carrier string True - -
carrier_logo string True - -
carrier_name string True - -
method_name string True - -
type string True - -

return_pickup

Field Type Required Min Length Max Length
id string True - -
confirmation_number string True - -
reference_number string True - -

return_shipment

Field Type Required Min Length Max Length
id string True - -
tracking_number string True - -
reference_number string True - -
status string True - -
label string True - -

ReturnItem

Field Type Required Min Length Max Length
id string True - -
customer_id string True - -
order_id string - -
created string True - -
return_lines array True - -
return_method object True - -
pickup object - -
shipment object True - -
custom array - -

return_method_error

Field Type Required Min Length Max Length
error object True - -

ShipmentEvent

Field Type Required Min Length Max Length
carrier string True - -
tracking_number string True - -
from_country string True - -
to_country string True - -
service string True - -
is_outbound boolean True - -
total_costs number True - -
currency string True - -
created string True - -

FtpConnectedAccountCredentials

Field Type Required Min Length Max Length
ftp_username string True - -
ftp_password string True - -

FtpConnectedAccount

Field Type Required Min Length Max Length
ftp_username string True - -
ftp_password string True - -
shipping_account_id integer True - -
name string True - -
service integer True - -

QuantumViewConnectedAccount

Field Type Required Min Length Max Length
shipping_account_id integer True - -
name string True - -
service integer True - -

ShopifyConnectedAccount

Field Type Required Min Length Max Length
shop_url string True - -
shipping_account array True - -
name string True - -
service integer True - -

custom_context

Custom context attached to the return

Field Type Required Min Length Max Length

NewstoreConnectedAccount

Field Type Required Min Length Max Length
shipping_account_id string True - -
shipping_account_key integer True - -
name string True - -
service integer True - -

SalesforceCore

Field Type Required Min Length Max Length
service integer True - -
environment string True - -
custom_domain string True - -
client_id string - -
client_secret string - -

SalesforceCommerceCloud

Field Type Required Min Length Max Length
url string True - -
service integer True - -

ConnectedAccountBase

Field Type Required Min Length Max Length
id string True - -
status string True - -

ItemConnectedAccount

Field Type Required Min Length Max Length
id string True - -
status string True - -
ftp_username string True - -
ftp_password string True - -
shipping_account_id integer True - -
name string True - -
service integer True - -

CreateConnectedAccount

Field Type Required Min Length Max Length
id string True - -
status string True - -
ftp_username string True - -
ftp_password string True - -
shipping_account_id integer True - -
name string True - -
service integer True - -

UpdateConnectedAccount

Field Type Required Min Length Max Length
id string True - -
status string True - -
ftp_username string True - -
ftp_password string True - -
shipping_account_id integer True - -
name string True - -
service integer True - -

connected_account_error

Field Type Required Min Length Max Length
error object True - -