Official Python SDK for the Dolivroo Delivery API.
pip install dolivroofromdolivrooimportDolivrooclient=Dolivroo('your-api-key')
# Create a parcelparcel=client.parcels.create('yalidine', {
'customer': {
'first_name': 'Mohamed',
'last_name': 'Ali',
'phone': '0555000000'
},
'destination': {
'wilaya': 'Alger',
'commune': 'Bab El Oued'
},
'package': {
'products': 'T-Shirt x2'
},
'payment': {
'amount': 2500
}
})
print(f"Tracking ID: {parcel['tracking_id']}")# Createclient.parcels.create('yalidine', order_data)
# Get detailsclient.parcels.get('TRACKING123', 'yalidine')
# List allclient.parcels.list('yalidine', page=1, per_page=25)
# Updateclient.parcels.update('TRACKING123', 'yalidine', updates)
# Cancelclient.parcels.cancel('TRACKING123', 'yalidine')
# Get labelclient.parcels.get_label('TRACKING123', 'yalidine')
# Trackclient.parcels.track('TRACKING123', 'yalidine')# Get ratesclient.rates.get('yalidine', 'Alger', 'Oran')
# Compare all providersclient.rates.compare('Alger', 'Oran')# List allclient.wilayas.list()
# List for providerclient.wilayas.list('yalidine')# Create multiple parcelsclient.bulk.create_parcels('yalidine', [order1, order2, order3])fromdolivrooimportDolivroo, AuthenticationError, ValidationError, RateLimitErrortry:
client.parcels.create('yalidine', order)
exceptAuthenticationError:
print('Invalid API key')
exceptValidationErrorase:
print(f'Validation errors: {e.errors}')
exceptRateLimitErrorase:
print(f'Rate limited, retry after: {e.retry_after}')client=Dolivroo(
api_key='your-api-key',
base_url='https://custom-api.com/api/v1/unified', # Optionaltimeout=60, # Optional, in secondsverify_ssl=True# Optional
)MIT