A Python wrapper for Onfleet
Reason this release was yanked:
Use `pyonfleet` instead
Project description
python-onfleet is an easy-to-use and fully-functional Python wrapper for the Onfleet API.
Installation
python-onfleet is available for download through the Python Package Index (PyPi). You can install it right away using pip or easy_install.
pip install onfleet
No dependencies (besides Python >= 2.7).
Usage
To get started, you’re going to need to get an Onfleet account set up and create an API token. Once you’ve got that, you’re ready to go.
>>> import onfleet
>>> on = onfleet.Onfleet(api_token)
Once you’ve done this, you can now use the on object to make calls to the Onfleet API. Here are some examples:
Organizations
>>> organization = on.organization()
>>> organization
<Organization id='O1o6D8OryDMILx2YEW3YOFFg'>
>>> organization.created_on
1425052175000
Administrators
Create a new administrator:
>>> administrator = onfleet.Administrator(name="John Doe", email="john@example.com")
>>> on.admins(administrator, method="POST")
<Administrator id='lMmclZVdpCqzpN9~tSzvIjHn'>
List all administrators:
>>> on.admins()
[<Administrator id='lMmclZVdpCqzpN9~tSzvIjHn'>,
<Administrator id='IP4mhhsuA*RivOvpJG9y~tI7'>]
>>> admins = _
>>> admins[0].name
John Doe
Workers
List workers:
>>> on.workers()
<Worker name='John D'>, <Worker name='Sally D'>]
Create a new worker:
>>> vehicle = onfleet.Vehicle(vehicle_type=onfleet.Vehicle.CAR, description="2010 Jetta", licensePlate="123456", color="White")
>>> worker = onfleet.Worker(name="John Smith", phone="1234567890", vehicle=vehicle)
>>> on.worker(worker, method="POST")
Get a single worker:
>>> onfleet.Worker[worker_id]()
<Worker name='John D'>
Update a worker:
>>> worker = onfleet.Worker(id="12345", tasks=["1234"])
>>> on.worker(worker, method="PUT")
Teams
List teams:
>>> on.teams()
[{u'id': u'n3MMWj0Cq6emWBg1v0ugJ46f',
u'managers': [u'BKH3rtJxU*XdH6anWsn1YEsU'],
u'name': u'Test Team',
u'timeCreated': 1427748462000,
u'timeLastModified': 1427905261933,
u'workers': [u'i0TlEqfEk8E65a4dW~0J58VZ', u'SKmm09tPTCLkEWnGKW1AsLh9']}]
Get a single team:
>>> on.teams['n3MMWj0Cq6emWBg1v0ugJ46f']()
{u'id': u'n3MMWj0Cq6emWBF1a0ugJ46f',
u'managers': [],
u'name': u'Test Team',
u'timeCreated': 1427748462000,
u'timeLastModified': 1427905261933,
u'workers': [{u'id': u'i0TlEqfak8E65i4dW~0J58VZ',
u'name': u'John D',
u'phone': u'+17172372831'},
{u'id': u'SKmm09j3jJJKHanGKW1AsLW9',
u'name': u'Sally R',
u'phone': u'+15023838282'}]}
Destinations
Create a new destination:
>>> destination = on.destinations(Destination(address=Address(unparsed="543 Howard Street, San Francisco, CA 94105")), method="POST")
>>> destination
<Destination id='RJ6SnbJntnGx3M72QvDnWDhn'>
>>> destination.location
[-122.3965731, 37.7875728]
Get a single destination:
>>> on.destinations['RJ6SnbJntnGx3M72QvDnWDhn']()
<Destination id='RJ6SnbJntnGx3M72QvDnWDhn'>
Tasks
TODO
Recipients
TODO
Miscellaneous
By default, python-onfleet will return parsed JSON objects. If you’d like the raw response object for a request, just pass in parse_response=False.
>>> response = on.organization(parse_response=False)
... your org ...
Python-onfleet maps 1-1 to the Onfleet API (e.g., pb.one.two.three[‘1234’]() will send a request to “https://api.onfleet.com/api/v2/one/two/three/1234”). For more information on other methods and usage, please read the Onfleet API documentation.
Support
If you like this library, or need help implementing it, send us an email: hi@lionheartsw.com.
License
Apache License, Version 2.0. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file onfleet-1.0.0.tar.gz
.
File metadata
- Download URL: onfleet-1.0.0.tar.gz
- Upload date:
- Size: 7.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8345c79dcf812e55e686f2d026aeb6bf45c67ef6f73d67048605c2b577c33daa |
|
MD5 | 55212faaa98145f880b0d0281925a471 |
|
BLAKE2b-256 | 1fde7a185cf3d57b696d9ba2649ee061a16727648dce7cf6fbf25e638525606f |