[−][src]Function dhl_api::get_dhl_package_status
pub async fn get_dhl_package_status<'_>(
package_id: &'_ str
) -> Result<DHLPackageStatus, Error>
Returns a DHLPackageStatus struct. You should check if it actually has any data with: DHLPackageStatus.items[0].package_not_found.has_some()
DHLPackageItem.package_not_found
will only be set if no package was found for that tracking code.
Arguments
package_id
- Tracking code as&str
of the parcel you wish to query, usually a number but sometimes contains letters.
Examples
ⓘThis example is not tested
use dhl_api::get_dhl_package_status; let status = get_dhl_package_status("123456789").await?; for item in status.items { if item.package_not_found.is_some() { // This item was not found let why_not_found = item.package_not_found.unwrap(); // if why_not_found.no_data_available { ... // if why_not_found.not_a_dhl_package { ... continue; } let tracking_code = &item.id; if item.has_complete_details { let details = &item.item_details; for event in &details.history.events.unwrap() { // Do whatever you need 🦈 } } }