EV Route Optimization API
Route Optimization API For Electric Vehicles (EV) - PatherizerEV (a solution to electric vehicles routing problem) is a cross browsers REST API supporting now
a maximum of 100 stops per route or request including the start destination and the end destination. Beeing a multi stop route optimization software, PatherizerEV
may be used by multiple calls to calculate and optimize routes for multiple vehicles, each vehicle with its optimized route. If you need
a route optimization API for normal vehicles which includes also driving, bycicling and walking travel modes, click here.
The route optimization algorythm is based per TSP (travel salesman problem) and it always calculate the shortest route betwween current stop and the next stop until it reaches the end destination.
The input addresses are geocoded, so the JSON response will include latitude and longitude of each stop. If the route optimization API cannot recognize one or more of the input addresses it
will not geocode these inputs and the API request will return a JSON Error as specified in the errors table.
The JSON response also includes distances between each stops along the optimized route (in miles or km) and most important, the durration (in seconds) and durration in real traffic conditions (in seconds) at the time you
make the request. A total distance of the optimized route is computed and also a total time.
Available Travel Mode is only driving.
For each segment of the optimized multi stop route, depending of the vehicle's autonomy, EV Recharging Points data are calculated and if exist between the each segment's start point and destination point, it will be attached to that segment of the optimized route.
Useful data like address, latitude and longitude, usage costs, number of charging points/location, type of connections, power, amps, voltage and other are available on each charging point.
However we do not charge a fee for the details of EV Charging Points, all the details referring EV charging points are made by Open Charge Map which has terms and conditions.
We only charge the calculation of the optimized route according to our PRICING packages.Allthough this Route Optimization API For Electric Vehicles is intended for software development and therefore developers, we have also here an online application that may be used to get listed the optimized route from the input text
basically you input start address, end address and multi stop addresses (no matter the order) along the route separated by ";" Basically for Route Optimization API you send an authorized POST request in JSON format to the API endpoint and you get as JSON response a
representing the optimized route in segments as you need to go. You may use it for commercial purposes for paid packages.
Route Optimization APP or API For Electric Vehicles is useful for a large number of domains like: driving route optimizer EV, delivery routing software EV, EV vehicle routing problem, EV fleet routing software etc.
For using our API and/or APP you must create an account (free of charge, no card required), activate it from your received email, login and then start your TRIAL package with no fees as you can see at our pricing packages.
After you have tested the EV Route Optimization API and/or APP and if you are satisfied, you may buy a paid package. You will always see at your Admin Console page the real resources
consumption in real time, your invoices, you may see/edit/delete your profile or export log consents as GDPR instructed, you may read our FAQs.
EV Route Optimization APP
Invalid start address!
Invalid end address!
Invalid addresses!
Autonomy:
Distance Units:
Travel Mode:
{
"segments": [
{
"origin": "Washington, DC, USA",
"destination": "Baltimore, MD, USA",
"origin_latitude": 38.9071922,
"origin_longitude": -77.03687,
"destination_latitude": 39.2903862,
"destination_longitude": -76.61219,
"distance": 61951.0,
"time": 3634,
"time_in_traffic": 3293,
"toll": "",
"evplist": "Charging Not Necessary!",
"charging_points": null
},
{
"origin": "Baltimore, MD, USA",
"destination": "Harrisburg, PA, USA",
"origin_latitude": 39.2903862,
"origin_longitude": -76.61219,
"destination_latitude": 40.27319,
"destination_longitude": -76.8867,
"distance": 127528.0,
"time": 5022,
"time_in_traffic": 5247,
"toll": "",
"evplist": "You Must Recharge But No Charging Points Nearby!",
"charging_points": null
},
{
"origin": "Harrisburg, PA, USA",
"destination": "Allentown, PA, USA",
"origin_latitude": 40.27319,
"origin_longitude": -76.8867,
"destination_latitude": 40.6022949,
"destination_longitude": -75.47141,
"distance": 133398.0,
"time": 5223,
"time_in_traffic": 5264,
"toll": "",
"evplist": "Charging Points Found!",
"charging_points": [
{
"IsRecentlyVerified": false,
"ID": 96702,
"UUID": "EA94841D-4A2A-45B9-B5F6-BB6055341DB9",
"DataProviderID": 2,
"OperatorID": 5,
"UsageTypeID": 1,
"UsageCost": "",
"AddressInfo": {
"ID": 97048,
"Title": "WHOLE FOODS ALN",
"AddressLine1": "735 KROCKS CT",
"Town": "Allentown",
"Postcode": "18106",
"CountryID": 2,
"Latitude": 40.5642242,
"Longitude": -75.566124,
"ContactTelephone1": "888-758-4389",
"ContactEmail": "",
"AccessComments": "24 hours daily",
"RelatedURL": "http://www.chargepoint.com",
"Distance": 9.656093,
"DistanceUnit": 1
},
"Connections": [
{
"ID": 136976,
"ConnectionTypeID": 1,
"StatusTypeID": 0,
"LevelID": 2,
"Amps": 16,
"Voltage": 230,
"PowerKW": 3.0,
"CurrentTypeID": 10,
"Quantity": 2
}
],
"NumberOfPoints": 0,
"GeneralComments": "",
"StatusTypeID": 0,
"DateLastStatusUpdate": "2019-12-24T11:17:00+02:00",
"DataQualityLevel": 3,
"DateCreated": "2017-12-29T23:01:00+02:00",
"SubmissionStatusTypeID": 100
},
{
"IsRecentlyVerified": false,
"ID": 28487,
"UUID": "F88FB5BE-9F58-4684-AFD1-F34ED6135F6F",
"DataProviderID": 2,
"OperatorID": 0,
"UsageTypeID": 7,
"UsageCost": "",
"AddressInfo": {
"ID": 28833,
"Title": "Route 23 Nissan",
"AddressLine1": "1301 Route 23",
"Town": "Butler",
"Postcode": "07405",
"CountryID": 2,
"Latitude": 40.9912567,
"Longitude": -74.3473358,
"ContactTelephone1": "973-838-0800",
"ContactEmail": "",
"AccessComments": "Dealership business hours\\r\\nPublic - Call ahead",
"RelatedURL": "",
"Distance": 9.741318,
"DistanceUnit": 1
},
"Connections": [
{
"ID": 31306,
"ConnectionTypeID": 1,
"StatusTypeID": 0,
"LevelID": 2,
"Amps": 16,
"Voltage": 230,
"PowerKW": 3.0,
"CurrentTypeID": 10,
"Quantity": 1
}
],
"NumberOfPoints": 0,
"GeneralComments": "",
"StatusTypeID": 0,
"DateLastStatusUpdate": "2019-12-24T11:18:00+02:00",
"DataQualityLevel": 3,
"DateCreated": "2014-11-28T05:38:00+02:00",
"SubmissionStatusTypeID": 100
}
]
},
{
"origin": "Allentown, PA, USA",
"destination": "Philadelphia, PA, USA",
"origin_latitude": 40.6022949,
"origin_longitude": -75.47141,
"destination_latitude": 39.9525833,
"destination_longitude": -75.16522,
"distance": 102705.0,
"time": 4316,
"time_in_traffic": 4247,
"toll": "",
"evplist": "Charging Points Found!",
"charging_points": [
{
"IsRecentlyVerified": false,
"ID": 12925,
"UUID": "CA46BAB3-C923-46CA-B046-484973CC127D",
"DataProviderID": 15,
"OperatorID": 5,
"UsageTypeID": 0,
"UsageCost": "",
"AddressInfo": {
"ID": 12822,
"Title": "801 Bethlehem Pike",
"AddressLine1": "801 Bethlehem Pike",
"Town": "Sellersville",
"Postcode": "18960",
"CountryID": 2,
"Latitude": 40.3437157,
"Longitude": -75.30325,
"ContactTelephone1": "(267)354-4081",
"ContactEmail": "",
"AccessComments": "",
"RelatedURL": "http://www.carstations.com/21411",
"Distance": 7.111848,
"DistanceUnit": 1
},
"Connections": [
{
"ID": 10358,
"ConnectionTypeID": 1,
"StatusTypeID": 0,
"LevelID": 2,
"Amps": 0,
"Voltage": 0,
"PowerKW": 0.0,
"CurrentTypeID": 0,
"Quantity": 0
}
],
"NumberOfPoints": 0,
"GeneralComments": "",
"StatusTypeID": 0,
"DateLastStatusUpdate": "2017-11-04T16:04:00+02:00",
"DataQualityLevel": 2,
"DateCreated": "2012-09-07T22:25:00+03:00",
"SubmissionStatusTypeID": 100
}
]
}
],
"total_distance": 425582.0,
"total_time": 18195,
"total_time_in_traffic": 18051,
"totals_summary": "Total Distance [km]=425.582; Total time [hh:mm]=5:3; Total time in traffic [hh:mm]=5:1"
}
Parameter Name
Parameter Description
optimized_route
This is the RootObject (not a parameter) that includes an array field called segments and four other fields total_distance (in km or mi), total_time (in seconds), total_time_in_traffic (in seconds) and totals_summary (string). These fields will be detailed below.
segments
This is an array containing each segment of the optimized route. The segments are sorted from the first to the last in the order the optimized route must be passed. The array contains the following fields: origin, origin_latitude, origin_longitude, destination, destination_latitude, destination_longitude, distance, time, time_in_traffic, toll, evplist each of the fields is explained below.
origin
This is the origin address [string] of the segment. Example:
2700 Wisconsin Avenue Northwest, Washington DC
destination
This is the destination address [string] of the segment. Example:
3511 Lowell Street Northwest, Washington
origin_latitude
This is the origin latitude of the segment as [real] number. It may be a negative number. Example: 40.243587
origin_longitude
This is the origin longitude of the segment as [real] number. It may be a negative number. Example: 20.293886
destination_latitude
This is the destination latitude of the segment as [real] number. It may be a negative number. Example: 41.549527
destination_longitude
This is the destination longitude of the segment as [real] number. It may be a negative number. Example: 21.847597
distance
This is the distance as [real] number between origin and destination of the segment as [meters]. Example: 5678
time
This is the average time in [seconds] as [integer] number necessary to go from origin to destination of the segment. Example: 1227
time_in_traffic
This is the real time in traffic conditions at the time the request has been made in [seconds] as [integer] number necessary to go from the origin to the destination of the segment. Example: 1325
toll
This is the toll cost for travelling the segment as [string] number. If not present it will be null. Example: 5.84 USD
evplist
This is the EV Charging Points sorted addresses list between the start and the end of the segment as [string] type. If not present, some other info messages will be returned. Example: You Must Recharge But No Charging Points Nearby!
charging_points
This is a sorted list of EV Charging Points with full details between the start and the end of the segment as [List(Of EVPoint)] type. If no charging points are present, it will be null. As example you may look at JSON response above.
total_distance
This is the total distance of the optimized route as [real] number in [meters]. Example: 5843
total_time
This is the total average time to travel the optimized route as [real] number in [seconds]. Example: 57643
total_time_in_traffic
This is the total time in real traffic conditions at the moment you make the request to travel the optimized route as [real] number in [seconds]. Example: 55893
totals_summary
This is a summarizing field [string] for total distance (in [km] or [mi]) depending of the value of the units parameter from request, total average time as [hh:mm] and total time in real traffic conditions [hh:mm] at the moment you make the request to travel the optimized route. Example: Total Distance [km]=5,078; Total time [hh:mm]=0:14; Total time in traffic [hh:mm]=0:12
EV Vehicle Routing Problem Video Presentation
EV Vehicle Routing Problem solved by Delivery Routing Software - Patherizer - is in the video presentation below. Our driving EV route optimizer or multi stop route optimizer is a very useful tool for any kind of activity that implies EV route optimization.
You can use it as a standalone EV route optimization app or, as a developer, you can access it from your own app or apps.
Please choose one of the below pricing packages for start using our EV Route Optimization API and online APP!
Yearly TIER
(15% Discount)
Notes:
VAT rate may be added or not, function to your country and/or if you are a taxable person or company.
* If you select different travel mode and calculate the route (even for the same input addresses) these addresses are counted also for each selected travel mode.
** Address - may be an exact address (recommended), a street address without number, a city, even a country.
*** Geocoding - if for one or more input addresses the API cannot geocode it, meaning the API cannot get the latitude and the longitude, then the optimized route will not be calculated and you will not be charged. If all the input addresses will be geocoded but calculating one or more segments of the optimized route cannot be done (for example there are no routes betwwen origin and destination) then the optimized route cannot be calculated and you will be charged.