API Docs
Customers need to quickly change and add carriers without incurring costly and
restrictive technical debt. Every carrier has different integration methods, requiring
a new development project for every new or updated carrier. This workload compounds as
you expand globally and work with a larger number of carriers.
The Zenkraft API integrates directly with shipping carriers such as
FedEx, UPS, and
DHL through a single platform. Integrate with Zenkraft’s
developer-friendly API and let Zenkraft handle the complexities of global carrier
integration.
This page includes examples of the Zenkraft API’s structure and parameters. Select a
carrier from the dropdown list in the navigation menu to access API reference
documentation listing their required and accepted parameters.
FedEx Overview
Please find the documentation for the FedEx below.
Supported Methods
Shipping Account ✔ Ship ✔ Rate ✔ Track ✔ Cancel ✔ Pickup ✔ Dopu ✔ Pickup_availability ✔ 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 | {'meter_number': 'Meter Number', 'key': 'Key', 'password': 'Password', 'account_number': 'Account Number', 'hub_id': 'Hub ID', 'client_id': 'Client ID', 'client_secret': 'Client secret', 'fulfillment_email': 'Fulfillment email', 'fulfillment_password': 'Fulfillment password'} |
|
| account_number string Account Number required | Account Number |
|
| client_id string Client ID | Client ID |
|
| client_secret string Client secret | Client secret |
|
| fulfillment_email string Fulfillment email | Fulfillment email |
|
| fulfillment_password string Fulfillment password | Fulfillment password |
|
| hub_id string Hub ID | Hub ID |
|
| key string Key | Key |
|
| meter_number string Meter Number | Meter Number |
|
| password string Password | Password |
|
| 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 | SD LY AR FR TC VE FI CZ MK GH BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE SS KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR VG |
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 | fedex |
|
| country string required | SD LY AR FR TC VE FI CZ GH BA MK GY FO NC UA HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS NU ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
US |
| defaults object | |
|
| currency string | CVE ARS NIO ZAR DKK AED MZN AOA MNT VND MDL XCD RWF GIP JOD RON SEK MYR XDR IQD THB PEN HUF BOB BYN UAH BBD NZD UZS BMD JPY JEP RUB SPL AWG MVR TWD BAM BGN SVC TZS NOK FKP HKD LBP CUC IDR SCR IRR KWD XAF GGP ISK NAD SOS FJD ZWD TOP KMF BRL SBD KPW KYD SRD LAK BZD PHP QAR SHP UGX GMD PYG BDT USD NGN PLN CHF SAR KZT GBP CAD ANG NPR CZK GHS MWK BHD SZL TTD UYU VUV MRU ZMW MGA DJF JMD ERN DOP INR DZD SLL SYP TMT MAD TRY HRK CRC MXN STN TND WST PGK CDF BTN PAB COP EGP TVD OMR KGS MKD LRD PKR KRW EUR SDG BND HTG RSD AFN CUP MOP HNL GNF GTQ XPF GEL BIF AZN GYD ILS KHR KES YER XOF AUD ALL ETB AMD VEF LKR MUR MMK TJS CLP SGD CNY LYD LSL IMP BWP BSD |
|
| dim_units string Dimension units of the packages, inches or centimeters | IN CM |
IN |
| label_type string Label Type | PDF PDF__PAPER_4X6 PDF__PAPER_4X8 PDF__PAPER_4X9 PDF__PAPER_7X4.75 PDF__PAPER_8.5X11_BOTTOM_HALF_LABEL PDF__PAPER_8.5X11_TOP_HALF_LABEL PNG PNG__PAPER_4X6 PNG__PAPER_4X8 PNG__PAPER_4X9 PNG__PAPER_7X4.75 PNG__PAPER_8.5X11_BOTTOM_HALF_LABEL PNG__PAPER_8.5X11_TOP_HALF_LABEL EPL2 EPL2__STOCK_4X6 EPL2__STOCK_4X6.75_TRAILING_DOC_TAB EPL2__STOCK_4X8 EPL2__STOCK_4X9_LEADING_DOC_TAB EPL2__STOCK_4X9_TRAILING_DOC_TAB ZPLII ZPLII__STOCK_4X6 ZPLII__STOCK_4X6.75_LEADING_DOC_TAB ZPLII__STOCK_4X6.75_TRAILING_DOC_TAB ZPLII__STOCK_4X8 ZPLII__STOCK_4X9_LEADING_DOC_TAB ZPLII__STOCK_4X9_TRAILING_DOC_TAB ZPL ZPL__STOCK_4X6 ZPL__STOCK_4X6.75_LEADING_DOC_TAB ZPL__STOCK_4X6.75_TRAILING_DOC_TAB ZPL__STOCK_4X8 ZPL__STOCK_4X9_LEADING_DOC_TAB ZPL__STOCK_4X9_TRAILING_DOC_TAB |
PDF |
| packaging_type string Packaging Type | fedex_10kg_box fedex_25kg_box fedex_box fedex_envelope fedex_pak fedex_tube your_packaging |
fedex_10kg_box |
| service string Service Type | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| weight_units string Weight units of the packages, pounds or kilograms | KG LB |
LB |
| location_id string Location ID | 0d349ee54a8c4d0dbc61b1a3ac1ab1f4 |
|
| name string Account name | My fedex 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 | {'meter_number': 'Meter Number', 'key': 'Key', 'password': 'Password', 'account_number': 'Account Number', 'hub_id': 'Hub ID', 'client_id': 'Client ID', 'client_secret': 'Client secret', 'fulfillment_email': 'Fulfillment email', 'fulfillment_password': 'Fulfillment password'} |
|
| account_number string Account Number required | Account Number |
|
| client_id string Client ID | Client ID |
|
| client_secret string Client secret | Client secret |
|
| fulfillment_email string Fulfillment email | Fulfillment email |
|
| fulfillment_password string Fulfillment password | Fulfillment password |
|
| hub_id string Hub ID | Hub ID |
|
| key string Key | Key |
|
| meter_number string Meter Number | Meter Number |
|
| password string Password | Password |
|
| carrier string Carrier slug required | fedex |
|
| country string required | SD LY AR FR TC VE FI CZ GH BA MK GY FO NC UA HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS NU ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
US |
| defaults object required | |
|
| currency string | CVE ARS NIO ZAR DKK AED MZN AOA MNT VND MDL XCD RWF GIP JOD RON SEK MYR XDR IQD THB PEN HUF BOB BYN UAH BBD NZD UZS BMD JPY JEP RUB SPL AWG MVR TWD BAM BGN SVC TZS NOK FKP HKD LBP CUC IDR SCR IRR KWD XAF GGP ISK NAD SOS FJD ZWD TOP KMF BRL SBD KPW KYD SRD LAK BZD PHP QAR SHP UGX GMD PYG BDT USD NGN PLN CHF SAR KZT GBP CAD ANG NPR CZK GHS MWK BHD SZL TTD UYU VUV MRU ZMW MGA DJF JMD ERN DOP INR DZD SLL SYP TMT MAD TRY HRK CRC MXN STN TND WST PGK CDF BTN PAB COP EGP TVD OMR KGS MKD LRD PKR KRW EUR SDG BND HTG RSD AFN CUP MOP HNL GNF GTQ XPF GEL BIF AZN GYD ILS KHR KES YER XOF AUD ALL ETB AMD VEF LKR MUR MMK TJS CLP SGD CNY LYD LSL IMP BWP BSD |
|
| dim_units string Dimension units of the packages, inches or centimeters | IN CM |
IN |
| label_type string Label Type | PDF PDF__PAPER_4X6 PDF__PAPER_4X8 PDF__PAPER_4X9 PDF__PAPER_7X4.75 PDF__PAPER_8.5X11_BOTTOM_HALF_LABEL PDF__PAPER_8.5X11_TOP_HALF_LABEL PNG PNG__PAPER_4X6 PNG__PAPER_4X8 PNG__PAPER_4X9 PNG__PAPER_7X4.75 PNG__PAPER_8.5X11_BOTTOM_HALF_LABEL PNG__PAPER_8.5X11_TOP_HALF_LABEL EPL2 EPL2__STOCK_4X6 EPL2__STOCK_4X6.75_TRAILING_DOC_TAB EPL2__STOCK_4X8 EPL2__STOCK_4X9_LEADING_DOC_TAB EPL2__STOCK_4X9_TRAILING_DOC_TAB ZPLII ZPLII__STOCK_4X6 ZPLII__STOCK_4X6.75_LEADING_DOC_TAB ZPLII__STOCK_4X6.75_TRAILING_DOC_TAB ZPLII__STOCK_4X8 ZPLII__STOCK_4X9_LEADING_DOC_TAB ZPLII__STOCK_4X9_TRAILING_DOC_TAB ZPL ZPL__STOCK_4X6 ZPL__STOCK_4X6.75_LEADING_DOC_TAB ZPL__STOCK_4X6.75_TRAILING_DOC_TAB ZPL__STOCK_4X8 ZPL__STOCK_4X9_LEADING_DOC_TAB ZPL__STOCK_4X9_TRAILING_DOC_TAB |
PDF |
| packaging_type string Packaging Type | fedex_10kg_box fedex_25kg_box fedex_box fedex_envelope fedex_pak fedex_tube your_packaging |
fedex_10kg_box |
| service string Service Type | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| weight_units string Weight units of the packages, pounds or kilograms | KG LB |
LB |
| id string Shipping account number required | 5190163571408896 |
|
| location_id string Location ID | 0d349ee54a8c4d0dbc61b1a3ac1ab1f4 |
|
| name string Account name | My fedex 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 | wrong_api_key master_test_shipping_account_not_found schema_field_required shipping_account_not_found schema_validation_error missing_api_key unexpected_exception shipping_account_wrong_carrier |
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": "fedex",
"auth": {
"meter_number": "Meter Number",
"key": "Key",
"password": "Password",
"account_number": "Account Number",
"hub_id": "Hub ID",
"client_id": "Client ID",
"client_secret": "Client secret",
"fulfillment_email": "Fulfillment email",
"fulfillment_password": "Fulfillment password"
},
"billing_address": {
"city": "London",
"state": "",
"postal_code": "EC1R 4UG",
"name": "Test User",
"phone": "01222 555 555",
"country": "GB",
"company": "Zenkraft User",
"email": "testexample@gmail.com",
"street1": "1 Hardwick Street"
},
"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": "fedex",
"auth": {
"meter_number": "Meter Number",
"key": "Key",
"password": "Password",
"account_number": "Account Number",
"hub_id": "Hub ID",
"client_id": "Client ID",
"client_secret": "Client secret",
"fulfillment_email": "Fulfillment email",
"fulfillment_password": "Fulfillment password"
},
"billing_address": {
"city": "London",
"state": "",
"postal_code": "EC1R 4UG",
"name": "Test User",
"phone": "01222 555 555",
"country": "GB",
"company": "Zenkraft User",
"email": "testexample@gmail.com",
"street1": "1 Hardwick Street"
},
"country": "US",
"test" : true
}
}'
import requests
headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}
payload = {
"shipping_account": {
"name": "Test",
"carrier": "fedex",
"auth": {
"meter_number": "Meter Number",
"key": "Key",
"password": "Password",
"account_number": "Account Number",
"hub_id": "Hub ID",
"client_id": "Client ID",
"client_secret": "Client secret",
"fulfillment_email": "Fulfillment email",
"fulfillment_password": "Fulfillment password"
},
"billing_address": {
"city": "London",
"state": "",
"postal_code": "EC1R 4UG",
"name": "Test User",
"phone": "01222 555 555",
"country": "GB",
"company": "Zenkraft User",
"email": "testexample@gmail.com",
"street1": "1 Hardwick Street"
},
"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": "fedex",
"country": "US",
"auth": {
"meter_number": "Meter Number",
"key": "Key",
"password": "Password",
"account_number": "Account Number",
"hub_id": "Hub ID",
"client_id": "Client ID",
"client_secret": "Client secret",
"fulfillment_email": "Fulfillment email",
"fulfillment_password": "Fulfillment password"
},
"test": false,
"id": "567293923024"
}
}
/ship POST
The shipping endpoint is used to book shipments with FedEx. 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 | CVE ARS NIO ZAR DKK AED MZN AOA MNT VND MDL XCD RWF GIP JOD RON SEK MYR XDR IQD THB PEN HUF BOB BYN UAH BBD NZD UZS BMD JPY JEP RUB SPL AWG MVR TWD BAM BGN SVC TZS NOK FKP HKD LBP CUC IDR SCR IRR KWD XAF GGP ISK NAD SOS FJD ZWD TOP KMF BRL SBD KPW KYD SRD LAK BZD PHP QAR SHP UGX GMD PYG BDT USD NGN PLN CHF SAR KZT GBP CAD ANG NPR CZK GHS MWK BHD SZL TTD UYU VUV MRU ZMW MGA DJF JMD ERN DOP INR DZD SLL SYP TMT MAD TRY HRK CRC MXN STN TND WST PGK CDF BTN PAB COP EGP TVD OMR KGS MKD LRD PKR KRW EUR SDG BND HTG RSD AFN CUP MOP HNL GNF GTQ XPF GEL BIF AZN GYD ILS KHR KES YER XOF AUD ALL ETB AMD VEF LKR MUR MMK TJS CLP SGD CNY LYD LSL IMP BWP BSD |
|
| debug boolean calls with debug=true will be logged | |
|
| dim_units string Dimension units of the packages, inches or centimeters required | IN CM |
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 | PAPER_8.5X11_BOTTOM_HALF_LABEL PAPER_4X8 STOCK_4X9_TRAILING_DOC_TAB PAPER_4X9 PAPER_7X4.75 STOCK_4X8 STOCK_4X6.75_LEADING_DOC_TAB PAPER_4X6 STOCK_4X9_LEADING_DOC_TAB STOCK_4X6.75_TRAILING_DOC_TAB STOCK_4X6 PAPER_8.5X11_TOP_HALF_LABEL |
PAPER_8.5X11_BOTTOM_HALF_LABEL |
| label_type string the label format of the shipping labels required | PDF PDF__PAPER_4X6 PDF__PAPER_4X8 PDF__PAPER_4X9 PDF__PAPER_7X4.75 PDF__PAPER_8.5X11_BOTTOM_HALF_LABEL PDF__PAPER_8.5X11_TOP_HALF_LABEL PNG PNG__PAPER_4X6 PNG__PAPER_4X8 PNG__PAPER_4X9 PNG__PAPER_7X4.75 PNG__PAPER_8.5X11_BOTTOM_HALF_LABEL PNG__PAPER_8.5X11_TOP_HALF_LABEL EPL2 EPL2__STOCK_4X6 EPL2__STOCK_4X6.75_TRAILING_DOC_TAB EPL2__STOCK_4X8 EPL2__STOCK_4X9_LEADING_DOC_TAB EPL2__STOCK_4X9_TRAILING_DOC_TAB ZPLII ZPLII__STOCK_4X6 ZPLII__STOCK_4X6.75_LEADING_DOC_TAB ZPLII__STOCK_4X6.75_TRAILING_DOC_TAB ZPLII__STOCK_4X8 ZPLII__STOCK_4X9_LEADING_DOC_TAB ZPLII__STOCK_4X9_TRAILING_DOC_TAB ZPL ZPL__STOCK_4X6 ZPL__STOCK_4X6.75_LEADING_DOC_TAB ZPL__STOCK_4X6.75_TRAILING_DOC_TAB ZPL__STOCK_4X8 ZPL__STOCK_4X9_LEADING_DOC_TAB ZPL__STOCK_4X9_TRAILING_DOC_TAB |
PDF |
| notifications array | |
|
| type string type of the notification needed | email sms |
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 | SD LY AR FR TC VE FI CZ MK GH BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
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 | SD LY AR FR TC VE FI CZ MK GH BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
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 | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| ship_date string shipping date in the ISO format | 2021-06-07 |
|
| shipping_account string Shipping account number required | 5190163571408896 |
|
| special_services array | saturday_delivery no_freight_rate list_rates paperless_trade include_qr fedex_one_rate |
[saturday_delivery ] |
| 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 | KG LB |
LB |
Successful Response
Most important parts of the response:tracking_numberwhich can be used to track the shipments in the track endpointlabelfor 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 | PAPER_8.5X11_BOTTOM_HALF_LABEL PAPER_4X8 STOCK_4X9_TRAILING_DOC_TAB PAPER_4X9 PAPER_7X4.75 STOCK_4X8 STOCK_4X6.75_LEADING_DOC_TAB PAPER_4X6 STOCK_4X9_LEADING_DOC_TAB STOCK_4X6.75_TRAILING_DOC_TAB STOCK_4X6 PAPER_8.5X11_TOP_HALF_LABEL |
PAPER_8.5X11_BOTTOM_HALF_LABEL |
| 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 | saturday_delivery no_freight_rate list_rates paperless_trade include_qr fedex_one_rate |
[saturday_delivery ] |
| tracking_number string Tracking number of shipment | 567293923024 |
Error Response
| Field | Possible Values | Example |
|---|---|---|
| error object | |
|
| code string Standardized error code required | wrong_api_key carrier_authentication schema_field_required carrier_failed_connection invalid_phone_number carrier_http_exception shipping_account_not_found schema_validation_error carrier_label_generation_failed ship_date_past carrier_throttling carrier_unsupported_method carrier_timeout carrier_exception missing_api_key unexpected_exception carrier_shipment_generation_failed shipping_account_wrong_carrier |
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 |
|---|---|---|---|
| FedEx 1 Day Freight | fedex_1_day_freight âžž | FEDEX_1_DAY_FREIGHT | |
| FedEx 2 Day | fedex_2_day âžž | FEDEX_2_DAY | |
| FedEx 2 Day AM | fedex_2_day_am âžž | FEDEX_2_DAY_AM | |
| FedEx 2 Day Freight | fedex_2_day_freight âžž | FEDEX_2_DAY_FREIGHT | |
| FedEx 3 Day Freight | fedex_3_day_freight âžž | FEDEX_3_DAY_FREIGHT | |
| FedEx Express Saver | fedex_express_saver âžž | FEDEX_EXPRESS_SAVER | |
| FedEx First Freight | fedex_first_freight âžž | FEDEX_FIRST_FREIGHT | |
| FedEx Freight Economy | fedex_freight_economy âžž | FEDEX_FREIGHT_ECONOMY | |
| FedEx Freight Priority | fedex_freight_priority âžž | FEDEX_FREIGHT_PRIORITY | |
| FedEx Ground | fedex_ground âžž | FEDEX_GROUND | |
| FedEx First Overnight | fedex_first_overnight âžž | FIRST_OVERNIGHT | |
| FedEx Ground Home Delivery | fedex_ground_home_delivery âžž | GROUND_HOME_DELIVERY | |
| FedEx Priority Overnight | fedex_priority_overnight âžž | PRIORITY_OVERNIGHT | |
| FedEx Smart Post Media MAil | fedex_smart_post_media_mail âžž | SMART_POST_MEDIA_MAIL | |
| FedEx Smart Post Parcel Select | fedex_smart_post_parcel_select âžž | SMART_POST_PARCEL_SELECT | |
| FedEx Smart Post Presorted Bound Printed Matter | fedex_smart_post_presorted_bound_printed_matter âžž | SMART_POST_PRESORTED_BOUND_PRINTED_MATTER | |
| FedEx Smart Post Presorted Standard | fedex_smart_post_presorted_standard âžž | SMART_POST_PRESORTED_STANDARD | |
| FedEx Smart Post Parcel Return | fedex_smart_post_parcel_return âžž | SMART_POST_PARCEL_RETURN | |
| FedEx Standard Overnight | fedex_standard_overnight âžž | STANDARD_OVERNIGHT | |
| FedEx Europe First International Priority | fedex_europe_first_international_priority âžž | EUROPE_FIRST_INTERNATIONAL_PRIORITY | |
| FedEx International Economy | fedex_international_economy âžž | INTERNATIONAL_ECONOMY | |
| FedEx International Economy Freight | fedex_international_economy_freight âžž | INTERNATIONAL_ECONOMY_FREIGHT | |
| FedEx International First | fedex_international_first âžž | INTERNATIONAL_FIRST | |
| FedEx International Priority | fedex_international_priority âžž | FEDEX_INTERNATIONAL_PRIORITY | |
| FedEx International Priority Express | fedex_international_priority_express âžž | FEDEX_INTERNATIONAL_PRIORITY_EXPRESS | |
| FedEx International Priority Freight | fedex_international_priority_freight âžž | INTERNATIONAL_PRIORITY_FREIGHT | |
| FedEx Next Day Early Morning | fedex_next_day_early_morning âžž | FEDEX_NEXT_DAY_EARLY_MORNING | |
| FedEx Next Day Mid Morning | fedex_next_day_mid_morning âžž | FEDEX_NEXT_DAY_MID_MORNING | |
| FedEx Next Day Afternoon | fedex_next_day_afternoon âžž | FEDEX_NEXT_DAY_AFTERNOON | |
| FedEx Next Day End of Day | fedex_next_day_end_of_day âžž | FEDEX_NEXT_DAY_END_OF_DAY | |
| FedEx Economy | fedex_distance_deferred âžž | FEDEX_DISTANCE_DEFERRED | |
| FedEx Next Day Freight | fedex_next_day_freight âžž | FEDEX_NEXT_DAY_FREIGHT | |
| FedEx Regional Economy | fedex_regional_economy âžž | FEDEX_REGIONAL_ECONOMY | |
| FedEx Regional Economy Freight | fedex_regional_economy_freight âžž | FEDEX_REGIONAL_ECONOMY_FREIGHT | |
| FedEx International Connect Plus | fedex_international_connect_plus âžž | FEDEX_INTERNATIONAL_CONNECT_PLUS | |
| FedEx First | fedex_first âžž | FEDEX_FIRST | |
| FedEx Priority | fedex_priority âžž | FEDEX_PRIORITY | |
| FedEx Priority Express | fedex_priority_express âžž | FEDEX_PRIORITY_EXPRESS | |
| FedEx International Priority | international_priority âžž | INTERNATIONAL_PRIORITY | |
| FedEx International Express | international_express âžž | INTERNATIONAL_EXPRESS | |
| FedEx Transborder Distribution | fedex_transborder_distribution âžž | TRANSBORDER_DISTRIBUTION | |
| Show more | |||
Packaging Types
| Name | API value | Domestic / international |
|---|---|---|
| FedEx 10KG Box | fedex_10kg_box âžž | |
| FedEx 25KG Box | fedex_25kg_box âžž | |
| FedEx Box | fedex_box âžž | |
| FedEx Envelope | fedex_envelope âžž | |
| FedEx PAK | fedex_pak âžž | |
| FedEx Tube | fedex_tube âžž | |
| Your Packaging | your_packaging âžž |
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 | |
| Bill To City | bill_to_city | |
| Bill To Address Line | bill_to_address_line | |
| Bill To State | bill_to_state | |
| Bill To Country | bill_to_country | |
| Bill To Company Name | bill_to_company_name | |
| Bill To Contact Name | bill_to_contact_name | |
| Bill To Postcode | bill_to_post_code | |
| Bill To Phone Number | bill_to_phone_number |
Special Services
| Name | API value | Code |
|---|---|---|
| Saturday Delivery | saturday_delivery | SATURDAY_DELIVERY |
| Ignore freight rates | no_freight_rate | NO_FREIGHT |
| Request List Rates | list_rates | LIST |
| Paperless Trade | paperless_trade | ELECTRONIC_TRADE_DOCUMENTS |
| Include QR | include_qr | IncludeQr |
| OneRate | fedex_one_rate | FEDEX_ONE_RATE |
Package Special Services
| Name | API value | Code |
|---|---|---|
| Adult Signature Required | adult_signature_required | SIGNATURE_OPTION |
| Direct Signature Required | direct_signature_required | DIRECT_SIGNATURE_REQUIRED |
Custom Fields
| Name | API value | Possible Values | Required |
|---|---|---|---|
| Drop Off Type | drop_off_type | regular_pickup, drop_box, station, REQUEST_COURIER, business_service_center | False |
| Non Standard Packaging | non_standard_packaging | False |
Customs
| Name | API value | Possible Values | Node | Required |
|---|---|---|---|---|
| Description | description | customs_item | True | |
| Manufacture Country Code | manufacture_country_code | customs_item | True | |
| Weight | weight | customs_item | True | |
| Weight Unit | weight_unit | KG, LB | customs_item | True |
| Quantity | quantity | customs_item | True | |
| Quantity Unit | quantity_unit | uom, box, 2gm, 2m, 2m3, 3m3, m3, dpr, doz, 2no, pcs, gm, grs, KG, l, m, 3gm, 3l, x, no, 2kg, prs, 2l, LB, cm2, 2m2, 3m2, m2, 4m2, 3m, cm, cone, ct, ea, lbs, rill, roll, set, tu, yds | customs_item | True |
| Value | value | customs_item | True | |
| Harmonized Code | harmonized_code | customs_item | False | |
| Terms Of Trade | terms_of_trade | cost_and_freight, cost_insurance_and_freight, carriage_and_insurance_paid, carriage_paid_to, delivered_duty_paid, delivered_duty_unpaid, ex_works, free_carrier, free_on_board | shipment | False |
| Terms Of Payment | terms_of_payment | shipment | False | |
| Insurance cost | insurance_cost | shipment | False | |
| Declaration Statement | declaration_statement | shipment | False | |
| Broker Name | broker_name | shipment | False | |
| Broker Phone Number | broker_phone | shipment | False | |
| Broker Company | broker_company | shipment | False | |
| Importer Type | importer_type | sender, recipient | shipment | False |
References
| Name | API value | Code |
|---|---|---|
| Customer Reference | ref | CUSTOMER_REFERENCE |
| Customer Reference | customer_reference | CUSTOMER_REFERENCE |
| Customer Reference | reference | CUSTOMER_REFERENCE |
| Department Number | department_number | DEPARTMENT_NUMBER |
| Invoice Number | invoice_number | INVOICE_NUMBER |
| P O Number | p_o_number | P_O_NUMBER |
| RMA Number | rma_number | RMA_ASSOCIATION |
Address Fields
| Name | API value | Possible Values | Node | Required |
|---|---|---|---|---|
| Residential | residential | False | ||
| Location Type | location_type | front, none, rear, side | False |
Example Request / Response
{
"shipment": {
"carrier": "fedex",
"currency": "GBP",
"debug": true,
"dim_units": "CM",
"include_base64_label": true,
"label_type": "PDF",
"packages": [
{
"height": 1,
"length": 1,
"value": 1,
"weight": 1,
"width": 1,
"special_services": [
"adult_signature_required"
]
}
],
"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,
"location_type": "front"
},
"sender": {
"city": "Bath",
"company": "TestCompany",
"country": "GB",
"email": "uk@testing.com",
"name": "TestCompany Name",
"phone": "",
"postal_code": "EC2R 6PJ",
"street1": "30 Moorgate",
"residential": false,
"location_type": "front"
},
"service": "fedex_1_day_freight",
"ship_date": "2026-05-03",
"shipping_account": "811195730",
"test": true,
"type": "outbound",
"weight_units": "KG",
"customs_items": [
{
"description": "Description",
"manufacture_country_code": "Manufacture Country Code",
"weight": 10.1,
"weight_unit": "KG",
"quantity": 1,
"quantity_unit": "uom",
"value": 10.1,
"harmonized_code": "Harmonized Code"
}
],
"terms_of_trade": "cost_and_freight",
"terms_of_payment": "Terms Of Payment",
"insurance_cost": 1,
"declaration_statement": "Declaration Statement",
"broker_name": "Broker Name",
"broker_phone": "Broker Phone Number",
"broker_company": "Broker Company",
"importer_type": "sender",
"references": [
{
"type": "ref",
"value": "Customer Reference"
},
{
"type": "customer_reference",
"value": "Customer Reference"
},
{
"type": "reference",
"value": "Customer Reference"
},
{
"type": "department_number",
"value": "Department Number"
},
{
"type": "invoice_number",
"value": "Invoice Number"
},
{
"type": "p_o_number",
"value": "P O Number"
},
{
"type": "rma_number",
"value": "RMA Number"
}
],
"label_size": "PAPER_8.5X11_BOTTOM_HALF_LABEL",
"special_services": [
"saturday_delivery"
]
}
}
curl --request POST \
--url https://api.zenkraft.com/ship \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
"shipment": {
"carrier": "fedex",
"currency": "GBP",
"debug": true,
"dim_units": "CM",
"include_base64_label": true,
"label_type": "PDF",
"packages": [
{
"height": 1,
"length": 1,
"value": 1,
"weight": 1,
"width": 1,
"special_services": [
"adult_signature_required"
]
}
],
"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,
"location_type": "front"
},
"sender": {
"city": "Bath",
"company": "TestCompany",
"country": "GB",
"email": "uk@testing.com",
"name": "TestCompany Name",
"phone": "",
"postal_code": "EC2R 6PJ",
"street1": "30 Moorgate",
"residential": false,
"location_type": "front"
},
"service": "fedex_1_day_freight",
"ship_date": "2026-05-03",
"shipping_account": "811195730",
"test": true,
"type": "outbound",
"weight_units": "KG",
"customs_items": [
{
"description": "Description",
"manufacture_country_code": "Manufacture Country Code",
"weight": 10.1,
"weight_unit": "KG",
"quantity": 1,
"quantity_unit": "uom",
"value": 10.1,
"harmonized_code": "Harmonized Code"
}
],
"terms_of_trade": "cost_and_freight",
"terms_of_payment": "Terms Of Payment",
"insurance_cost": 1,
"declaration_statement": "Declaration Statement",
"broker_name": "Broker Name",
"broker_phone": "Broker Phone Number",
"broker_company": "Broker Company",
"importer_type": "sender",
"references": [
{
"type": "ref",
"value": "Customer Reference"
},
{
"type": "customer_reference",
"value": "Customer Reference"
},
{
"type": "reference",
"value": "Customer Reference"
},
{
"type": "department_number",
"value": "Department Number"
},
{
"type": "invoice_number",
"value": "Invoice Number"
},
{
"type": "p_o_number",
"value": "P O Number"
},
{
"type": "rma_number",
"value": "RMA Number"
}
],
"label_size": "PAPER_8.5X11_BOTTOM_HALF_LABEL",
"special_services": [
"saturday_delivery"
]
}
}'
import requests
headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}
payload = {
"shipment": {
"carrier": "fedex",
"currency": "GBP",
"debug": true,
"dim_units": "CM",
"include_base64_label": true,
"label_type": "PDF",
"packages": [
{
"height": 1,
"length": 1,
"value": 1,
"weight": 1,
"width": 1,
"special_services": [
"adult_signature_required"
]
}
],
"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,
"location_type": "front"
},
"sender": {
"city": "Bath",
"company": "TestCompany",
"country": "GB",
"email": "uk@testing.com",
"name": "TestCompany Name",
"phone": "",
"postal_code": "EC2R 6PJ",
"street1": "30 Moorgate",
"residential": false,
"location_type": "front"
},
"service": "fedex_1_day_freight",
"ship_date": "2026-05-03",
"shipping_account": "811195730",
"test": true,
"type": "outbound",
"weight_units": "KG",
"customs_items": [
{
"description": "Description",
"manufacture_country_code": "Manufacture Country Code",
"weight": 10.1,
"weight_unit": "KG",
"quantity": 1,
"quantity_unit": "uom",
"value": 10.1,
"harmonized_code": "Harmonized Code"
}
],
"terms_of_trade": "cost_and_freight",
"terms_of_payment": "Terms Of Payment",
"insurance_cost": 1,
"declaration_statement": "Declaration Statement",
"broker_name": "Broker Name",
"broker_phone": "Broker Phone Number",
"broker_company": "Broker Company",
"importer_type": "sender",
"references": [
{
"type": "ref",
"value": "Customer Reference"
},
{
"type": "customer_reference",
"value": "Customer Reference"
},
{
"type": "reference",
"value": "Customer Reference"
},
{
"type": "department_number",
"value": "Department Number"
},
{
"type": "invoice_number",
"value": "Invoice Number"
},
{
"type": "p_o_number",
"value": "P O Number"
},
{
"type": "rma_number",
"value": "RMA Number"
}
],
"label_size": "PAPER_8.5X11_BOTTOM_HALF_LABEL",
"special_services": [
"saturday_delivery"
]
}
}
url = "https://api.zenkraft.com/ship"
response = requests.request(url=url, method='POST', json=payload, headers=headers)
print(response.json())
{
"shipment": {
"carrier": "fedex",
"shipping_account": "5190163571408896",
"test": true,
"debug": false,
"ship_date": "2026-05-03",
"type": "outbound",
"combined_labels": false,
"service": "fedex_1_day_freight",
"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 | fedex |
|
| 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 | PDF PDF__PAPER_4X6 PDF__PAPER_4X8 PDF__PAPER_4X9 PDF__PAPER_7X4.75 PDF__PAPER_8.5X11_BOTTOM_HALF_LABEL PDF__PAPER_8.5X11_TOP_HALF_LABEL PNG PNG__PAPER_4X6 PNG__PAPER_4X8 PNG__PAPER_4X9 PNG__PAPER_7X4.75 PNG__PAPER_8.5X11_BOTTOM_HALF_LABEL PNG__PAPER_8.5X11_TOP_HALF_LABEL EPL2 EPL2__STOCK_4X6 EPL2__STOCK_4X6.75_TRAILING_DOC_TAB EPL2__STOCK_4X8 EPL2__STOCK_4X9_LEADING_DOC_TAB EPL2__STOCK_4X9_TRAILING_DOC_TAB ZPLII ZPLII__STOCK_4X6 ZPLII__STOCK_4X6.75_LEADING_DOC_TAB ZPLII__STOCK_4X6.75_TRAILING_DOC_TAB ZPLII__STOCK_4X8 ZPLII__STOCK_4X9_LEADING_DOC_TAB ZPLII__STOCK_4X9_TRAILING_DOC_TAB ZPL ZPL__STOCK_4X6 ZPL__STOCK_4X6.75_LEADING_DOC_TAB ZPL__STOCK_4X6.75_TRAILING_DOC_TAB ZPL__STOCK_4X8 ZPL__STOCK_4X9_LEADING_DOC_TAB ZPL__STOCK_4X9_TRAILING_DOC_TAB |
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 | wrong_api_key carrier_authentication schema_field_required carrier_no_shipment_found carrier_failed_connection carrier_http_exception shipping_account_not_found schema_validation_error carrier_label_generation_failed carrier_throttling carrier_unsupported_method carrier_timeout carrier_exception missing_api_key unexpected_exception shipping_account_wrong_carrier |
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": "fedex",
"shipping_account": "5190163571408896",
"test": true,
"debug": false,
"ship_date": "2026-05-03",
"type": "outbound",
"combined_labels": false,
"service": "fedex_1_day_freight",
"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 | CVE ARS NIO ZAR DKK AED MZN AOA MNT VND MDL XCD RWF GIP JOD RON SEK MYR XDR IQD THB PEN HUF BOB BYN UAH BBD NZD UZS BMD JPY JEP RUB SPL AWG MVR TWD BAM BGN SVC TZS NOK FKP HKD LBP CUC IDR SCR IRR KWD XAF GGP ISK NAD SOS FJD ZWD TOP KMF BRL SBD KPW KYD SRD LAK BZD PHP QAR SHP UGX GMD PYG BDT USD NGN PLN CHF SAR KZT GBP CAD ANG NPR CZK GHS MWK BHD SZL TTD UYU VUV MRU ZMW MGA DJF JMD ERN DOP INR DZD SLL SYP TMT MAD TRY HRK CRC MXN STN TND WST PGK CDF BTN PAB COP EGP TVD OMR KGS MKD LRD PKR KRW EUR SDG BND HTG RSD AFN CUP MOP HNL GNF GTQ XPF GEL BIF AZN GYD ILS KHR KES YER XOF AUD ALL ETB AMD VEF LKR MUR MMK TJS CLP SGD CNY LYD LSL IMP BWP BSD |
|
| debug boolean calls with debug=true will be logged | |
|
| dim_units string Dimension units of the packages, inches or centimeters required | IN CM |
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 | SD LY AR FR TC VE FI CZ GH MK BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
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 | SD LY AR FR TC VE FI CZ GH MK BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
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 | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| ship_date string shipping date in the ISO format | 2021-06-07 |
|
| shipping_account string Shipping account number required | 5190163571408896 |
|
| special_services array | saturday_delivery no_freight_rate list_rates paperless_trade include_qr fedex_one_rate |
[saturday_delivery ] |
| 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 | KG LB |
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 | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| 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 | wrong_api_key carrier_authentication schema_field_required carrier_failed_connection carrier_http_exception shipping_account_not_found schema_validation_error ship_date_past carrier_throttling carrier_unsupported_method carrier_timeout carrier_exception missing_api_key unexpected_exception shipping_account_wrong_carrier |
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": "fedex",
"currency": "GBP",
"debug": true,
"dim_units": "CM",
"include_base64_label": true,
"label_type": "PDF",
"packages": [
{
"height": 1,
"length": 1,
"value": 1,
"weight": 1,
"width": 1,
"special_services": [
"adult_signature_required"
]
}
],
"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,
"location_type": "front"
},
"sender": {
"city": "Bath",
"company": "TestCompany",
"country": "GB",
"email": "uk@testing.com",
"name": "TestCompany Name",
"phone": "",
"postal_code": "EC2R 6PJ",
"street1": "30 Moorgate",
"residential": false,
"location_type": "front"
},
"service": "fedex_1_day_freight",
"ship_date": "2026-05-03",
"shipping_account": "811195730",
"test": true,
"type": "outbound",
"weight_units": "KG",
"customs_items": [
{
"description": "Description",
"manufacture_country_code": "Manufacture Country Code",
"weight": 10.1,
"weight_unit": "KG",
"quantity": 1,
"quantity_unit": "uom",
"value": 10.1,
"harmonized_code": "Harmonized Code"
}
],
"terms_of_trade": "cost_and_freight",
"terms_of_payment": "Terms Of Payment",
"insurance_cost": 1,
"declaration_statement": "Declaration Statement",
"broker_name": "Broker Name",
"broker_phone": "Broker Phone Number",
"broker_company": "Broker Company",
"importer_type": "sender",
"references": [
{
"type": "ref",
"value": "Customer Reference"
},
{
"type": "customer_reference",
"value": "Customer Reference"
},
{
"type": "reference",
"value": "Customer Reference"
},
{
"type": "department_number",
"value": "Department Number"
},
{
"type": "invoice_number",
"value": "Invoice Number"
},
{
"type": "p_o_number",
"value": "P O Number"
},
{
"type": "rma_number",
"value": "RMA Number"
}
],
"label_size": "PAPER_8.5X11_BOTTOM_HALF_LABEL",
"special_services": [
"saturday_delivery"
]
}
}
curl --request POST \
--url https://api.zenkraft.com/rate \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
"shipment": {
"carrier": "fedex",
"currency": "GBP",
"debug": true,
"dim_units": "CM",
"include_base64_label": true,
"label_type": "PDF",
"packages": [
{
"height": 1,
"length": 1,
"value": 1,
"weight": 1,
"width": 1,
"special_services": [
"adult_signature_required"
]
}
],
"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,
"location_type": "front"
},
"sender": {
"city": "Bath",
"company": "TestCompany",
"country": "GB",
"email": "uk@testing.com",
"name": "TestCompany Name",
"phone": "",
"postal_code": "EC2R 6PJ",
"street1": "30 Moorgate",
"residential": false,
"location_type": "front"
},
"service": "fedex_1_day_freight",
"ship_date": "2026-05-03",
"shipping_account": "811195730",
"test": true,
"type": "outbound",
"weight_units": "KG",
"customs_items": [
{
"description": "Description",
"manufacture_country_code": "Manufacture Country Code",
"weight": 10.1,
"weight_unit": "KG",
"quantity": 1,
"quantity_unit": "uom",
"value": 10.1,
"harmonized_code": "Harmonized Code"
}
],
"terms_of_trade": "cost_and_freight",
"terms_of_payment": "Terms Of Payment",
"insurance_cost": 1,
"declaration_statement": "Declaration Statement",
"broker_name": "Broker Name",
"broker_phone": "Broker Phone Number",
"broker_company": "Broker Company",
"importer_type": "sender",
"references": [
{
"type": "ref",
"value": "Customer Reference"
},
{
"type": "customer_reference",
"value": "Customer Reference"
},
{
"type": "reference",
"value": "Customer Reference"
},
{
"type": "department_number",
"value": "Department Number"
},
{
"type": "invoice_number",
"value": "Invoice Number"
},
{
"type": "p_o_number",
"value": "P O Number"
},
{
"type": "rma_number",
"value": "RMA Number"
}
],
"label_size": "PAPER_8.5X11_BOTTOM_HALF_LABEL",
"special_services": [
"saturday_delivery"
]
}
}'
import requests
headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}
payload = {
"shipment": {
"carrier": "fedex",
"currency": "GBP",
"debug": true,
"dim_units": "CM",
"include_base64_label": true,
"label_type": "PDF",
"packages": [
{
"height": 1,
"length": 1,
"value": 1,
"weight": 1,
"width": 1,
"special_services": [
"adult_signature_required"
]
}
],
"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,
"location_type": "front"
},
"sender": {
"city": "Bath",
"company": "TestCompany",
"country": "GB",
"email": "uk@testing.com",
"name": "TestCompany Name",
"phone": "",
"postal_code": "EC2R 6PJ",
"street1": "30 Moorgate",
"residential": false,
"location_type": "front"
},
"service": "fedex_1_day_freight",
"ship_date": "2026-05-03",
"shipping_account": "811195730",
"test": true,
"type": "outbound",
"weight_units": "KG",
"customs_items": [
{
"description": "Description",
"manufacture_country_code": "Manufacture Country Code",
"weight": 10.1,
"weight_unit": "KG",
"quantity": 1,
"quantity_unit": "uom",
"value": 10.1,
"harmonized_code": "Harmonized Code"
}
],
"terms_of_trade": "cost_and_freight",
"terms_of_payment": "Terms Of Payment",
"insurance_cost": 1,
"declaration_statement": "Declaration Statement",
"broker_name": "Broker Name",
"broker_phone": "Broker Phone Number",
"broker_company": "Broker Company",
"importer_type": "sender",
"references": [
{
"type": "ref",
"value": "Customer Reference"
},
{
"type": "customer_reference",
"value": "Customer Reference"
},
{
"type": "reference",
"value": "Customer Reference"
},
{
"type": "department_number",
"value": "Department Number"
},
{
"type": "invoice_number",
"value": "Invoice Number"
},
{
"type": "p_o_number",
"value": "P O Number"
},
{
"type": "rma_number",
"value": "RMA Number"
}
],
"label_size": "PAPER_8.5X11_BOTTOM_HALF_LABEL",
"special_services": [
"saturday_delivery"
]
}
}
url = "https://api.zenkraft.com/rate"
response = requests.request(url=url, method='POST', json=payload, headers=headers)
print(response.json())
/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 | ro_RO fr_CA ha_Latn teo_KE de_LI de_DE luo_KE so_KE fr_CD ig_NG lg_UG kn_IN nyn_UG es_AR dav_KE eu_ES es_HN te_IN rwk_TZ cy_GB en_MT fr_SN pt_GW chr_US mfe_MU en_MU sr_Cyrl es_MX gl_ES uz_Latn_UZ fr_KM ar_LY zh_Hant luy_KE af_ZA kea_CV lag_TZ ur_IN ta_LK teo_UG es_CO sq_AL ar_IQ om_ET pt_PT fr_MF bg_BG ar_JO ti_ET vun_TZ zh_Hans_HK sr_Cyrl_ME kam_KE kok_IN sl_SI sw_KE en_CA sv_FI mas_KE en_IE gu_IN fr_FR mr_IN es_PR es_CL seh_MZ bm_ML fr_BE shi_Latn ru_RU ar_YE fr_NE en_PK naq_NA fr_BJ fr_MG el_CY hi_IN ga_IE rw_RW fr_GP fr_CI ha_Latn_GH mas_TZ en_NZ fo_FO ebu_KE rm_CH hr_HR fr_TD fr_MC nd_ZW lt_LT ar_QA ar_SA en_UM fr_BI pa_Guru_IN es_PE ar_AE haw_US khq_ML pt_MZ nn_NO ar_EG fr_BL kl_GL kk_Cyrl_KZ es_SV zu_ZA az_Latn en_HK ne_NP ar_DZ so_DJ en_JM cs_CZ bem_ZM bo_CN ti_ER zh_Hans ja_JP en_BZ az_Cyrl gv_GB mk_MK uz_Latn kde_TZ es_CR de_LU es_EC rof_TZ az_Latn_AZ bn_BD ses_ML ee_GH si_LK sk_SK uz_Arab uk_UA es_419 en_GB ms_MY ca_ES en_SG fr_ML ar_KW fr_MQ he_IL ta_IN tzm_Latn_MA nl_NL fr_CG ar_MA bez_TZ de_AT ii_CN ar_BH xog_UG ar_LB am_ET nl_BE es_NI my_MM en_AU sr_Cyrl_BA so_SO uz_Cyrl_UZ gsw_CH tzm_Latn en_US sr_Latn lv_LV sr_Latn_BA fil_PH ff_SN uz_Cyrl kk_Cyrl hu_HU yo_NG sg_CF es_GT fr_CM fr_GA pl_PL th_TH ar_SD ar_OM fr_LU ak_GH asa_TZ km_KH af_NA en_ZA fr_GQ saq_KE en_PH fr_CH ka_GE so_ET ru_MD ru_UA es_PA shi_Tfng shi_Tfng_MA vi_VN ee_TG bs_BA kw_GB zh_Hant_MO it_CH ml_IN sr_Cyrl_RS shi_Latn_MA az_Cyrl_AZ jmc_TZ ro_MD nb_NO pa_Guru fr_DJ zh_Hant_TW en_GU el_GR guz_KE pa_Arab en_VI de_CH fr_CF en_MP en_AS pt_BR id_ID kln_KE ps_AF ur_PK be_BY cgg_UG en_ZW fr_TG fa_IR bo_IN en_BW sn_ZW es_UY es_PY it_IT uz_Arab_AF ms_BN fr_RE om_KE mg_MG en_NA mt_MT to_TO yue_Hant_HK ha_Latn_NG zh_Hans_CN en_IN fi_FI fr_BF es_BO pa_Arab_PK bn_IN zh_Hans_SG sv_SE ar_SY en_BE sr_Latn_ME sw_TZ de_BE tr_TR is_IS or_IN es_DO mer_KE ha_Latn_NE zh_Hans_MO sr_Latn_RS da_DK es_GQ es_ES es_US as_IN ko_KR fa_AF en_TT fr_RW hy_AM en_MH kab_DZ ki_KE ne_IN ar_TN es_VE et_EE en_IL fr_GN zh_Hant_HK |
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 | fedex |
|
| 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 | ro_RO fr_CA ha_Latn teo_KE de_LI de_DE luo_KE so_KE fr_CD ig_NG lg_UG kn_IN nyn_UG es_AR dav_KE eu_ES es_HN te_IN rwk_TZ cy_GB en_MT fr_SN pt_GW chr_US mfe_MU en_MU sr_Cyrl es_MX gl_ES uz_Latn_UZ fr_KM ar_LY zh_Hant luy_KE af_ZA kea_CV lag_TZ ur_IN ta_LK teo_UG es_CO sq_AL ar_IQ om_ET pt_PT fr_MF bg_BG ar_JO ti_ET vun_TZ zh_Hans_HK sr_Cyrl_ME kam_KE kok_IN sl_SI sw_KE en_CA sv_FI mas_KE en_IE gu_IN fr_FR mr_IN es_PR es_CL seh_MZ bm_ML fr_BE shi_Latn ru_RU ar_YE fr_NE en_PK naq_NA fr_BJ fr_MG el_CY hi_IN ga_IE rw_RW fr_GP fr_CI ha_Latn_GH mas_TZ en_NZ fo_FO ebu_KE rm_CH hr_HR fr_TD fr_MC nd_ZW lt_LT ar_QA ar_SA en_UM fr_BI pa_Guru_IN es_PE ar_AE haw_US khq_ML pt_MZ nn_NO ar_EG fr_BL kl_GL kk_Cyrl_KZ es_SV zu_ZA az_Latn en_HK ne_NP ar_DZ so_DJ en_JM cs_CZ bem_ZM bo_CN ti_ER zh_Hans ja_JP en_BZ az_Cyrl gv_GB mk_MK uz_Latn kde_TZ es_CR de_LU es_EC rof_TZ az_Latn_AZ bn_BD ses_ML ee_GH si_LK sk_SK uz_Arab uk_UA es_419 en_GB ms_MY ca_ES en_SG fr_ML ar_KW fr_MQ he_IL ta_IN tzm_Latn_MA nl_NL fr_CG ar_MA bez_TZ de_AT ii_CN ar_BH xog_UG ar_LB am_ET nl_BE es_NI my_MM en_AU sr_Cyrl_BA so_SO uz_Cyrl_UZ gsw_CH tzm_Latn en_US sr_Latn lv_LV sr_Latn_BA fil_PH ff_SN uz_Cyrl kk_Cyrl hu_HU yo_NG sg_CF es_GT fr_CM fr_GA pl_PL th_TH ar_SD ar_OM fr_LU ak_GH asa_TZ km_KH af_NA en_ZA fr_GQ saq_KE en_PH fr_CH ka_GE so_ET ru_MD ru_UA es_PA shi_Tfng shi_Tfng_MA vi_VN ee_TG bs_BA kw_GB zh_Hant_MO it_CH ml_IN sr_Cyrl_RS shi_Latn_MA az_Cyrl_AZ jmc_TZ ro_MD nb_NO pa_Guru fr_DJ zh_Hant_TW en_GU el_GR guz_KE pa_Arab en_VI de_CH fr_CF en_MP en_AS pt_BR id_ID kln_KE ps_AF ur_PK be_BY cgg_UG en_ZW fr_TG fa_IR bo_IN en_BW sn_ZW es_UY es_PY it_IT uz_Arab_AF ms_BN fr_RE om_KE mg_MG en_NA mt_MT to_TO yue_Hant_HK ha_Latn_NG zh_Hans_CN en_IN fi_FI fr_BF es_BO pa_Arab_PK bn_IN zh_Hans_SG sv_SE ar_SY en_BE sr_Latn_ME sw_TZ de_BE tr_TR is_IS or_IN es_DO mer_KE ha_Latn_NE zh_Hans_MO sr_Latn_RS da_DK es_GQ es_ES es_US as_IN ko_KR fa_AF en_TT fr_RW hy_AM en_MH kab_DZ ki_KE ne_IN ar_TN es_VE et_EE en_IL fr_GN zh_Hant_HK |
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 | wrong_api_key carrier_authentication schema_field_required carrier_no_shipment_found carrier_failed_connection carrier_http_exception shipping_account_not_found schema_validation_error carrier_throttling carrier_unsupported_method carrier_timeout carrier_exception missing_api_key unexpected_exception shipping_account_wrong_carrier |
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
FedEx supports returning tracking responses in a number of languages:
| Name | API value |
|---|---|
| Spanish | es_US |
| French (Canadian) | fr_CA |
Example Request / Response
{
"track": {
"test":false,
"carrier": "fedex",
"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": "fedex",
"shipping_account": 00000000000000,
"tracking_number": "1Z7881280399212000"
}
}'
import requests
headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}
payload = {
"track": {
"test":false,
"carrier": "fedex",
"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": "fedex",
"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": "fedex",
"shipping_account": 00000000000000,
"tracking_number": "1Z7881280399212000"
}
},
{
"track": {
"test":false,
"carrier": "fedex",
"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": "fedex",
"shipping_account": 00000000000000,
"tracking_number": "1Z7881280399212000"
}
},
{
"track": {
"test":false,
"carrier": "fedex",
"shipping_account": 00000000000000,
"tracking_number": "1Z7881280399212000"
}
}
]'
import requests
headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}
payload = [
{
"track": {
"test":false,
"carrier": "fedex",
"shipping_account": 00000000000000,
"tracking_number": "1Z7881280399212000"
}
},
{
"track": {
"test":false,
"carrier": "fedex",
"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": "fedex",
"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": "fedex",
"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"
}
]
}
]
/cancel POST
The cancel endpoint allows you to cancel shipments with the carrier.
POST Request Parameters
| Field | Possible Values | Example |
|---|---|---|
| cancel 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 | ro_RO ha_Latn fr_CA teo_KE de_LI de_DE luo_KE so_KE fr_CD ig_NG lg_UG kn_IN nyn_UG es_AR dav_KE eu_ES es_HN te_IN rwk_TZ cy_GB en_MT fr_SN pt_GW chr_US mfe_MU en_MU sr_Cyrl es_MX gl_ES uz_Latn_UZ fr_KM ar_LY zh_Hant luy_KE en_IL af_ZA kea_CV lag_TZ ur_IN ta_LK teo_UG es_CO sq_AL ar_IQ om_ET pt_PT fr_MF bg_BG ar_JO ti_ET vun_TZ zh_Hans_HK sr_Cyrl_ME kam_KE kok_IN sl_SI sw_KE en_CA sv_FI mas_KE en_IE gu_IN fr_FR mr_IN es_PR es_CL seh_MZ bm_ML fr_BE shi_Latn ru_RU ar_YE fr_NE en_PK naq_NA fr_BJ fr_MG el_CY hi_IN ga_IE rw_RW fr_GP fr_CI ha_Latn_GH mas_TZ en_NZ fo_FO ebu_KE rm_CH hr_HR fr_TD fr_MC nd_ZW lt_LT ar_QA ar_SA en_UM fr_BI pa_Guru_IN es_PE ar_AE haw_US khq_ML pt_MZ nn_NO ar_EG fr_BL kl_GL kk_Cyrl_KZ es_SV zu_ZA az_Latn en_HK ne_NP ar_DZ so_DJ en_JM cs_CZ bem_ZM bo_CN ti_ER zh_Hans ja_JP en_BZ az_Cyrl gv_GB mk_MK uz_Latn kde_TZ es_CR de_LU es_EC rof_TZ az_Latn_AZ bn_BD ses_ML ee_GH si_LK sk_SK uz_Arab uk_UA es_419 en_GB ms_MY ca_ES en_SG fr_ML ar_KW fr_MQ he_IL ta_IN tzm_Latn_MA nl_NL fr_CG ar_MA bez_TZ de_AT ii_CN ar_BH xog_UG ar_LB am_ET nl_BE es_NI my_MM en_AU sr_Cyrl_BA so_SO uz_Cyrl_UZ gsw_CH tzm_Latn en_US sr_Latn lv_LV sr_Latn_BA fil_PH ff_SN ar_TN kk_Cyrl hu_HU yo_NG sg_CF es_GT fr_CM fr_GA pl_PL th_TH ar_SD ar_OM fr_LU ak_GH asa_TZ km_KH af_NA en_ZA fr_GQ saq_KE en_PH fr_CH ka_GE so_ET ru_MD ru_UA es_PA shi_Tfng shi_Tfng_MA vi_VN ee_TG bs_BA kw_GB zh_Hant_MO it_CH ml_IN sr_Cyrl_RS shi_Latn_MA az_Cyrl_AZ jmc_TZ ro_MD nb_NO pa_Guru fr_DJ zh_Hant_TW en_GU el_GR guz_KE pa_Arab en_VI de_CH fr_CF en_MP en_AS pt_BR id_ID kln_KE ps_AF ur_PK be_BY cgg_UG en_ZW fr_TG fa_IR bo_IN en_BW sn_ZW es_UY es_PY it_IT uz_Arab_AF ms_BN fr_RE mg_MG en_NA mt_MT to_TO yue_Hant_HK ha_Latn_NG zh_Hans_CN en_IN fi_FI fr_BF es_BO pa_Arab_PK bn_IN zh_Hans_SG sv_SE ar_SY en_BE sr_Latn_ME sw_TZ de_BE tr_TR is_IS or_IN es_DO mer_KE ha_Latn_NE zh_Hans_MO sr_Latn_RS da_DK es_GQ es_ES es_US as_IN ko_KR fa_AF en_TT fr_RW hy_AM en_MH kab_DZ ki_KE ne_IN om_KE es_VE et_EE uz_Cyrl fr_GN zh_Hant_HK |
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 |
|---|---|---|
| success object | |
|
| message string Message describing the action was performed successfully | Success! |
Error Response
| Field | Possible Values | Example |
|---|---|---|
| error object | |
|
| code string Standardized error code required | wrong_api_key carrier_authentication schema_field_required carrier_no_shipment_found carrier_failed_connection carrier_http_exception shipping_account_not_found schema_validation_error carrier_throttling carrier_unsupported_method carrier_timeout carrier_exception missing_api_key unexpected_exception shipping_account_wrong_carrier |
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 |
Example Request / Response
{
"cancel": {
"shipping_account": "00000000000000",
"carrier": "ups",
"tracking_number": "1Z168R020399800319"
}
}
curl --request POST \
--url https://api.zenkraft.com/cancel \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
"cancel": {
"shipping_account": "00000000000000",
"carrier": "ups",
"tracking_number": "1Z168R020399800319"
}
}'
import requests
headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}
payload = {
"cancel": {
"shipping_account": "00000000000000",
"carrier": "ups",
"tracking_number": "1Z168R020399800319"
}
}
url = "https://api.zenkraft.com/cancel"
response = requests.request(url=url, method='POST', json=payload, headers=headers)
print(response.json())
/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 | CVE ARS NIO ZAR DKK AED MZN AOA MNT VND MDL XCD RWF GIP JOD RON SEK MYR XDR IQD THB PEN HUF BOB BYN UAH BBD NZD UZS BMD JPY JEP RUB SPL AWG MVR TWD BAM BGN SVC TZS NOK FKP HKD LBP CUC IDR SCR IRR KWD XAF GGP ISK NAD SOS FJD ZWD TOP KMF BRL SBD KPW KYD SRD LAK BZD PHP QAR SHP UGX GMD PYG BDT USD NGN PLN CHF SAR KZT GBP CAD ANG NPR CZK GHS MWK BHD SZL TTD UYU VUV MRU ZMW MGA DJF JMD ERN DOP INR DZD SLL SYP TMT MAD TRY HRK CRC MXN STN TND WST PGK CDF BTN PAB COP EGP TVD OMR KGS MKD LRD PKR KRW EUR SDG BND HTG RSD AFN CUP MOP HNL GNF GTQ XPF GEL BIF AZN GYD ILS KHR KES YER XOF AUD ALL ETB AMD VEF LKR MUR MMK TJS CLP SGD CNY LYD LSL IMP BWP BSD |
|
| debug boolean calls with debug=true will be logged | |
|
| description string | |
|
| dim_units string Dimension units of the packages, inches or centimeters required | IN CM |
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 | SD LY AR FR TC VE FI CZ MK GH BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
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 | SD LY AR FR TC VE FI CZ GH BA MK UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE SS KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR VG |
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 | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| 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 | KG LB |
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 | CVE ARS NIO ZAR DKK AED MZN AOA VND MNT MDL XCD RWF GIP JOD RON SEK MYR XDR IQD THB PEN HUF BOB BYN UAH BBD NZD UZS BMD JPY JEP RUB SPL AWG MVR TWD BAM BGN SVC TZS NOK FKP HKD LBP CUC IDR SCR IRR KWD XAF GGP ISK NAD SOS FJD ZWD TOP KMF BRL SBD KPW KYD SRD LAK BZD PHP QAR SHP UGX GMD PYG BDT USD NGN PLN CHF SAR KZT GBP CAD ANG NPR CZK GHS MWK BHD SZL TTD UYU VUV MRU ZMW MGA DJF JMD ERN DOP INR DZD SLL SYP TMT MAD TRY HRK CRC MXN STN TND WST PGK CDF BTN PAB COP EGP TVD OMR KGS MKD LRD PKR KRW EUR SDG BND HTG RSD AFN CUP MOP HNL GNF GTQ XPF GEL BIF AZN GYD ILS KHR KES YER XOF AUD ALL ETB AMD VEF LKR MUR MMK TJS CLP SGD CNY LYD LSL IMP BWP BSD |
|
| debug boolean calls with debug=true will be logged | |
|
| description string | |
|
| dim_units string Dimension units of the packages, inches or centimeters required | IN CM |
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 | SD LY AR FR TC VE FI CZ GH MK BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE SS KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR VG |
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 | SD LY AR FR TC VE FI CZ MK GH BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
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 | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| 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 | KG LB |
LB |
Error Response
| Field | Possible Values | Example |
|---|---|---|
| error object | |
|
| code string Standardized error code required | wrong_api_key carrier_authentication schema_field_required carrier_failed_connection invalid_phone_number carrier_http_exception shipping_account_not_found schema_validation_error ship_date_past carrier_throttling carrier_unsupported_method carrier_timeout carrier_exception missing_api_key unexpected_exception shipping_account_wrong_carrier |
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": "fedex",
"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": "fedex",
"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": "fedex",
"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": "fedex",
"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": "fedex",
"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": "fedex",
"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": "fedex",
"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())
/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 | SD LY AR FR TC VE FI CZ MK GH BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE SS KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR VG |
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 | wrong_api_key carrier_authentication schema_field_required carrier_failed_connection carrier_http_exception shipping_account_not_found schema_validation_error carrier_throttling carrier_unsupported_method carrier_timeout carrier_exception missing_api_key unexpected_exception shipping_account_wrong_carrier |
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": "fedex",
"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": "fedex",
"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": "fedex",
"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 | CVE ARS NIO ZAR DKK AED MZN AOA VND MNT MDL XCD RWF GIP JOD RON SEK MYR XDR IQD THB PEN HUF BOB BYN UAH BBD NZD UZS BMD JPY JEP RUB SPL AWG MVR TWD BAM BGN SVC TZS NOK FKP HKD LBP CUC IDR SCR IRR KWD XAF GGP ISK NAD SOS FJD ZWD TOP KMF BRL SBD KPW KYD SRD LAK BZD PHP QAR SHP UGX GMD PYG BDT USD NGN PLN CHF SAR KZT GBP CAD ANG NPR CZK GHS MWK BHD SZL TTD UYU VUV MRU ZMW MGA DJF JMD ERN DOP INR DZD SLL SYP TMT MAD TRY HRK CRC MXN STN TND WST PGK CDF BTN PAB COP EGP TVD OMR KGS MKD LRD PKR KRW EUR SDG BND HTG RSD AFN CUP MOP HNL GNF GTQ XPF GEL BIF AZN GYD ILS KHR KES YER XOF AUD ALL ETB AMD VEF LKR MUR MMK TJS CLP SGD CNY LYD LSL IMP BWP BSD |
|
| debug boolean calls with debug=true will be logged | |
|
| description string | |
|
| dim_units string Dimension units of the packages, inches or centimeters required | IN CM |
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 | SD LY AR FR TC VE FI CZ GH BA MK UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE SS KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR VG |
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 | SD LY AR FR TC VE FI CZ GH MK BA UA GY FO NC HM MP PW TL SR ES NR MW ZA EG LK BO SI TJ AG IT MN AQ RE SB LR SG SO ZW TW BV EE BN PR NE CG IE GW BF VU CA MO FK GU NA MQ CL CD AO GA SH MU OM JP AX SN CY GM TT NL HT PF VC PK GR AU BL MG LU JE LA MV PH MD GL HK SE TN IO WF MS MC NZ YE KW KY HN KH PY NI BZ ET GS LC UG MX CV PA EC CR PT KE DK DJ BT CN PM MM CK MY GN PG SJ SZ KI GE VN ZM MH NF TR SA US BH BE JO KN MZ KG GB BR GD MR GQ AM MF SV LS AT MA RW TF TM BJ CF SK UZ VI CC BG DZ IQ GI AF RU BY ID AS BS EH LI BQ MT IL LB IS ST BD HU CX NP SL IN IR CO CH GP GF VG CM DO GG YT SC WS LT SX RO BB UM TZ AD CW AW LV RS VA PE HR PN FM TD TO JM AE TK UY BI TH ML IM TG NO QA AZ TV NU AI KM KZ BM DE ER AL DM FJ GT KP ME CU PL NG CI SY SM PS BW KR SS |
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 | fedex_1_day_freight fedex_2_day fedex_2_day_am fedex_2_day_freight fedex_3_day_freight fedex_express_saver fedex_first_freight fedex_freight_economy fedex_freight_priority fedex_ground fedex_first_overnight fedex_ground_home_delivery fedex_priority_overnight fedex_smart_post_media_mail fedex_smart_post_parcel_select fedex_smart_post_presorted_bound_printed_matter fedex_smart_post_presorted_standard fedex_smart_post_parcel_return fedex_standard_overnight fedex_europe_first_international_priority fedex_international_economy fedex_international_economy_freight fedex_international_first fedex_international_priority fedex_international_priority_express fedex_international_priority_freight fedex_next_day_early_morning fedex_next_day_mid_morning fedex_next_day_afternoon fedex_next_day_end_of_day fedex_distance_deferred fedex_next_day_freight fedex_regional_economy fedex_regional_economy_freight fedex_international_connect_plus fedex_first fedex_priority fedex_priority_express international_priority international_express fedex_transborder_distribution |
fedex_1_day_freight |
| 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 | KG LB |
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 | IN CM |
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 | KG LB |
LB |
Error Response
| Field | Possible Values | Example |
|---|---|---|
| error object | |
|
| code string Standardized error code required | wrong_api_key carrier_authentication schema_field_required carrier_failed_connection invalid_phone_number carrier_http_exception shipping_account_not_found schema_validation_error carrier_exception carrier_throttling carrier_unsupported_method carrier_timeout ship_date_past missing_api_key unexpected_exception shipping_account_wrong_carrier |
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": "fedex",
"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": "fedex_1_day_freight"
}
],
"shipping_account": 197299590,
"test": true,
"weight_units": "LB",
"start_date": "2026-05-03",
"end_date": "2026-05-03"
}
}
curl --request POST \
--url https://api.zenkraft.com/pickup/availability \
--header 'content-type: application/json' \
--header 'zkkey: XXXXXXXXXXXXXXXXXXXXXXX' \
--data '{
"pickup_availability": {
"carrier": "fedex",
"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": "fedex_1_day_freight"
}
],
"shipping_account": 197299590,
"test": true,
"weight_units": "LB",
"start_date": "2026-05-03",
"end_date": "2026-05-03"
}
}'
import requests
headers = {
"zkkey": "XXXXXXXXXXXXXXXXXXXXXXX"
}
payload = {
"pickup_availability": {
"carrier": "fedex",
"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": "fedex_1_day_freight"
}
],
"shipping_account": 197299590,
"test": true,
"weight_units": "LB",
"start_date": "2026-05-03",
"end_date": "2026-05-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": "fedex",
"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": "fedex_1_day_freight"
}
],
"shipping_account": 197299590,
"test": true,
"weight_units": "LB",
"start_date": "2026-05-03",
"end_date": "2026-05-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 | return.delivered return.checked_in return.driver_assigned return.creation_pending return.out_for_delivery shipment.checked_in return.exception return.picked_up shipment.picked_up return.shipment_voided shipment.in_transit return.created shipment.delivered shipment.creation_pending shipment.exception shipment.shipment_voided return.in_transit shipment.driver_assigned shipment.out_for_delivery shipment.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 | return.delivered return.checked_in return.driver_assigned return.creation_pending return.out_for_delivery shipment.checked_in return.exception return.picked_up shipment.picked_up return.shipment_voided shipment.in_transit return.created shipment.delivered shipment.creation_pending shipment.exception shipment.shipment_voided return.in_transit shipment.driver_assigned shipment.out_for_delivery shipment.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 | return.delivered return.checked_in return.driver_assigned return.creation_pending return.out_for_delivery shipment.checked_in return.exception return.picked_up shipment.picked_up return.shipment_voided shipment.in_transit return.created shipment.delivered shipment.creation_pending shipment.exception shipment.shipment_voided return.in_transit shipment.driver_assigned shipment.out_for_delivery shipment.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 | return.delivered return.checked_in return.driver_assigned return.creation_pending return.out_for_delivery shipment.checked_in return.exception return.picked_up shipment.picked_up return.shipment_voided shipment.in_transit return.created shipment.delivered shipment.creation_pending shipment.exception shipment.shipment_voided return.in_transit shipment.driver_assigned shipment.out_for_delivery shipment.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 | return.delivered return.checked_in return.driver_assigned return.creation_pending return.out_for_delivery shipment.checked_in return.exception return.picked_up shipment.picked_up return.shipment_voided shipment.in_transit return.created shipment.delivered shipment.creation_pending shipment.exception shipment.shipment_voided return.in_transit shipment.driver_assigned shipment.out_for_delivery shipment.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 | wrong_api_key schema_field_required shipping_account_not_found schema_validation_error webhook_not_found missing_api_key unexpected_exception shipping_account_wrong_carrier |
|
| 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 | wrong_api_key schema_field_required shipping_account_not_found schema_validation_error webhook_not_found missing_api_key unexpected_exception shipping_account_wrong_carrier |
|
| 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())
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 | |
| 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 | |
| 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 | |
| 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 | - | - |
| 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 | - | - |
| 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 | |
| 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 | |
| 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 | - | - |