WebfleetConnect
Package to consume WEBFLEET.connect API.
The WEBFLEET.connect API connects software applications with the Webfleet fleet management solution. Via WEBFLEET.connect you can enhance the value of all types of business solutions, including routing and scheduling optimization, ERP, Transport Management System (TMS), supply chain planning, asset management, and much more.
Check also the version for:
Installation
Install it with:
$ pip install webfleet-connect
Usage
import webfleet_connect
wc = webfleet_connect.create()
response = wc.show_object_report_extern()
response.to_hash()
webfleet_connect.create()
returns a new Session
object which has the capabilities to request info from the WEBFLEET.connect API.
The Webfleet credential are taken from the env variables WEBFLEET_CONNECT_ACCOUNT
, WEBFLEET_CONNECT_USERNAME
, WEBFLEET_CONNECT_PASSWORD
and WEBFLEET_CONNECT_APIKEY
(if you want to know more about env variables check this link).
If your system needs to work with multiple accounts or you need to specify the credentials dynamically for some other reason, you can do it this way:
params = {
'account': 'companyName',
'username': 'dev',
'password': 'VLm5PpiZST6U',
'apikey': 'ZSksD88s-F7Uf'
}
wc = webfleet_connect.create(params)
When you use one of the methods of this gem, like for example show_vehicle_report_extern
, this returns a WebfleetConnectResponse
object which you can do:
response = wc.show_vehicle_report_extern()
response.url()
response.status_code()
str(response)
response.to_hash()
The methods available in this package are the same that are documented in the WEBFLEET.connect docs page just changed from cammelCase to snake_case. See below the list of methods.
Params
In order to add params to a request is as easy as passing a hash of options in the request like:
params = {
'filterstring': 'ECO',
'objectgroupname': 'Vehiculos',
'ungroupedonly': True
}
response = wc.show_vehicle_report_extern(params)
The rangefrom_string
and rangeto_string
can accept Time
objects:
from datetime import datetime, timedelta
start_date = datetime.now()
end_date = start_date + timedelta(days=1)
params = {
'range_pattern': 'ud',
'rangefrom_string': start_date,
'rangeto_string': end_date
}
response = wc.show_event_report_extern(params)
The range_pattern
can accept the values:
today
,
yesterday
,
two_days_ago
,
three_days_ago
,
four_days_ago
,
five_days_ago
,
six_days_ago
,
current_week
,
last_week
,
two_weeks_ago
,
three_weeks_ago
,
floating_week
,
last_floating_week
,
two_floating_weeks_ago
,
three_floating_weeks_ago
,
current_month
,
last_month
,
two_months_ago
,
three_months_ago
,
user_defined_range
,
ud
params = { 'range_pattern': 'today' }
response = wc.show_event_report_extern(params)
The Session
object works with the default configuration:
'lang': 'en', 'format': 'json', 'useUTF8': False, 'useISO8601': False
but you can change the default configuration when you create the object:
credentials = {
'account': 'companyName',
'username': 'dev',
'password': 'VLm5PpiZST6U',
'apikey': 'ZSksD88s-F7Uf'
}
config = {
'lang': 'de',
'format': 'csv',
'useUTF8': True
}
params = credentials | config
wc = webfleet_connect.create(params)
Methods list
Mesage queues:
Objects:
Orders:
Messages:
Drivers:
Addresses:
Events:
Trips and working times:
Miscellaneous reports:
Geocoding and routing:
Configuration and security:
User management:
Vehicle maintenance:
Reporting:
Areas:
LINK.connect:
Plugins: