AI predictions, desert mapping, government intelligence and business analytics across 106 countries — UK, US, Europe, Africa, Middle East & Asia. 46 endpoints, one API.
100 calls/day free forever. No credit card required.
Score any country on EV readiness across renewable energy, policy strength, grid reliability and import tariffs. Ideal for government investment decisions and market entry analysis.
{
"country": "KE",
"country_name": "Kenya",
"readiness_score": 74.1,
"tier": "HIGH",
"components": {
"renewable_energy_pct": 90,
"policy_score": 72,
"grid_reliability": 58,
"import_tariff_pct": 25
},
"highlight": "90% renewable grid — strongest EV foundation in Africa",
"opportunities": ["90% renewable energy = truly green EVs", "Strong government EV policy framework"],
"barriers": ["High EV import tariff (25%)"]
}
Map key intercity highway corridors and identify critical charging gaps. Includes chargers existing vs needed, gap score and key stops. Essential for national infrastructure planning.
{
"country": "KE",
"corridors": [{
"name": "Nairobi → Mombasa",
"distance_km": 480,
"chargers_existing": 4,
"chargers_needed": 12,
"gap_score": 94,
"key_stops": ["Nairobi","Machakos","Mtito Andei","Voi","Mombasa"],
"notes": "Primary trade corridor. 476km unserviced."
}],
"summary": {
"charger_deficit": 24,
"most_critical_corridor": "Nairobi → Mombasa"
}
}
Given a budget, returns projected chargers deployable, coverage area, carbon saved, jobs created and payback period. Built for World Bank, AfDB and government funding bid justifications.
{
"budget_usd": 1000000,
"country": "KE",
"charger_type": "AC 22kW (fast)",
"cost_per_charger_usd": 6000,
"deployment": {
"chargers_deployable": 166,
"vehicles_served_daily": 2988,
"carbon_saved_tonnes_yr": 668.3
},
"economic": {
"payback_period_years": 4.2,
"jobs_created_construction": 332,
"jobs_created_ongoing": 16
}
}
Pass a location and charger spec, get back projected revenue, profit, payback period and OZEV grant eligibility. The first question every business asks before installing.
{
"charger_type": "AC 22kW",
"num_chargers": 2,
"demand": {
"utilisation_pct": 55.0,
"sessions_per_day": 26.4
},
"financials": {
"total_capex_gbp": 20000,
"ozev_grant_available_gbp": 700,
"revenue_per_year_gbp": 91674,
"profit_per_year_gbp": 52059,
"payback_years": 0.4,
"roi_5yr_pct": 1201.5
}
}
Give origin and destination coordinates, get back a waypoint-by-waypoint breakdown of charging availability. Flags gaps, limited coverage and confirms route viability for your vehicle range.
{
"route": { "total_km": 312.4 },
"summary": {
"charging_gaps": 1,
"route_viable": true,
"coverage_score": 83.3
},
"legs": [
{ "waypoint": 1, "km_from_start": 0, "chargers_nearby": 12, "status": "GOOD" },
{ "waypoint": 2, "km_from_start": 80, "chargers_nearby": 0, "status": "GAP" }
]
}
Calculate total monthly and annual energy costs for a fleet route. Shows peak vs off-peak savings and compares directly against diesel costs — powerful for fleet operator procurement decisions.
{
"fleet": { "num_vehicles": 10, "vehicle_type": "van" },
"costs": {
"cost_per_month_gbp": 3136.0,
"saving_by_offpeak_gbp_month": 1881.6
},
"vs_diesel": {
"diesel_cost_per_month_gbp": 6820.0,
"ev_saving_per_month_gbp": 3684.0,
"saving_pct": 54.0
}
}
// Step 1 — get your key from the form below // Step 2 — paste it here and run const API_KEY = 'cs_live_your_key_here'; const response = await fetch( `https://chargesmart.online/api/v1/predict ?lat=51.5074&lon=-0.1278&key=${API_KEY}` ); const data = await response.json(); console.log(data.data.prediction); // "free" or "busy" console.log(data.data.probability_free); // 73.2 console.log(data.data.best_time_today); // "02:00"
# Option 1 — Authorization header (recommended) curl https://chargesmart.online/api/v1/predict?lat=51.5&lon=-0.1 \ -H "Authorization: Bearer YOUR_API_KEY" # Option 2 — Query parameter curl https://chargesmart.online/api/v1/predict?lat=51.5&lon=-0.1&key=YOUR_API_KEY
Returns AI prediction for whether a charger will be free or busy, plus the best time to charge today.
| Param | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude of charger |
| lon | float | Yes | Longitude of charger |
| hour | int | No | Hour 0-23 (defaults to now) |
| day | int | No | Day 0=Mon, 6=Sun (defaults to today) |
| capacity | int | No | Number of charging bays (default 2) |
| country | string | No | UK, US or EU (default UK) |
| location_type | string | No | motorway, supermarket, council, tesla, other |
GET https://chargesmart.online/api/v1/predict?lat=51.5074&lon=-0.1278&hour=17&capacity=2&country=UK
{
"success": true,
"data": {
"prediction": "busy",
"probability_free": 23.4,
"probability_busy": 76.6,
"best_time_today": "22:00",
"best_time_probability": 91.2,
"inputs": { "lat": 51.5, "lon": -0.1, "hour": 17, ... }
},
"meta": { "version": "v1", "calls_remaining_today": 98 }
}
Returns areas with no EV charger within 5 miles, broken down by sub-region.
| Param | Type | Required | Description |
|---|---|---|---|
| region | string | No | uk, us_east, us_west, germany, france, netherlands |
{
"success": true,
"data": {
"region": "United Kingdom",
"desert_percentage": 34.2,
"total_desert_zones": 1847,
"total_covered_zones": 3541,
"charger_count": 52400,
"breakdown": [
{ "name": "North West", "desert_pct": 67.3, "desert_zones": 412 },
...
]
}
}
Calculate exact cost of an EV journey vs the petrol equivalent.
| Param | Type | Required | Description |
|---|---|---|---|
| miles | float | Yes | Journey distance in miles |
| car | string | No | average, nissan_leaf, tesla_model3, tesla_modelx, vw_id3 |
| currency | string | No | gbp, usd, eur (default gbp) |
{
"success": true,
"data": {
"miles": 100,
"ev_cost": 7.84,
"petrol_cost": 18.20,
"saving": 10.36,
"saving_pct": 56.9,
"kwh_needed": 28.6,
"co2_saved_kg": 33.5
}
}
Calculate CO2 saved and money saved by driving electric vs petrol.
| Param | Type | Required | Description |
|---|---|---|---|
| miles | float | Yes | Miles per trip |
| vehicle | string | No | small, medium, large, van (default medium) |
| trips_per_week | int | No | Weekly trips (default 1) |
| currency | string | No | gbp, usd, eur |
{
"success": true,
"data": {
"co2_saved_per_trip_kg": 33.5,
"co2_saved_annual_kg": 8710,
"trees_equivalent": 400,
"money_saved_annual": 2693.60
}
}
Returns community ratings and fault reports for chargers near a location.
| Param | Type | Required | Description |
|---|---|---|---|
| lat | float | No | Latitude (default London) |
| lon | float | No | Longitude (default London) |
| radius | float | No | Search radius in miles (default 5) |
Returns hourly demand breakdown for a location — ideal for scheduling apps and dashboards.
| Param | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude |
| lon | float | Yes | Longitude |
| country | string | No | UK, US or EU |
| radius | float | No | Search radius in degrees (default 0.5) |
{ "best_time_to_charge": "02:00", "worst_time_to_charge": "17:00",
"peak_hours": [{"hour":17,"label":"17:00","demand_pct":8.2,"demand":"high"},...],
"hourly_breakdown": [...24 hours...] }
Returns every charging operator in your target country with charger counts, capacity and location breakdown.
| Param | Type | Required | Description |
|---|---|---|---|
| country | string | No | UK, US, EU or ALL (default UK) |
{ "total_operators": 24, "operators": [
{ "operator": "Tesla", "total_chargers": 4821, "avg_capacity": 8.2,
"primary_location": "motorway", "countries": ["UK","US","EU"] }, ...
]}
Returns a scored grade (A-F) for how well-served an area is for EV charging. Used by estate agents, councils and urban planners.
| Param | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude |
| lon | float | Yes | Longitude |
| radius | float | No | Radius in miles (default 10) |
| country | string | No | UK, US or EU |
{ "coverage_score": 73, "grade": "B", "verdict": "Good",
"chargers_nearby": 42, "networks_present": 6,
"has_fast_charging": true, "recommendation": "Well served area" }
Returns the closest chargers to a location, each with a live AI availability prediction. Perfect for navigation and EV apps.
| Param | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude |
| lon | float | Yes | Longitude |
| max_results | int | No | 1-20 results (default 5) |
| hour | int | No | Hour 0-23 (defaults to now) |
| country | string | No | UK, US or EU |
{ "chargers": [
{ "lat": 51.51, "lon": -0.12, "operator": "Pod Point",
"distance_miles": 0.3, "probability_free": 71.2,
"prediction": "free", "capacity": 4 }, ...
]}
Returns gridded charger density data ready to render as a heatmap. Works with Leaflet, Mapbox, Google Maps.
| Param | Type | Required | Description |
|---|---|---|---|
| region | string | No | uk, us or eu (default uk) |
| resolution | string | No | low or high (default low) |
{ "region": "uk", "total_points": 842, "max_density": 1240,
"points": [{"lat":51.5,"lon":-0.1,"count":342,"intensity":0.27}, ...]}
Compare EV infrastructure stats across UK, US and EU. Used by researchers, journalists and policy makers.
| Param | Type | Required | Description |
|---|---|---|---|
| countries | string | No | Comma-separated: UK,US,EU (default all three) |
{ "winner": "EU", "results": [
{ "country": "EU", "rank": 1, "chargers_per_100k": 48.2,
"avg_capacity": 3.8, "top_operator": "Ionity" }, ...
]}
Compare any two or more charging networks head-to-head on coverage, capacity and location types.
| Param | Type | Required | Description |
|---|---|---|---|
| names | string | Yes | Comma-separated operator names e.g. Tesla,BP Pulse |
{ "winner": "Tesla", "results": [
{ "operator": "Tesla", "total_chargers": 4821, "avg_capacity": 8.2,
"countries": ["UK","US","EU"], "peak_hour": 17 },
{ "operator": "BP Pulse", "total_chargers": 2103, "avg_capacity": 2.1 }
]}
AI-powered hourly predictions for the next 24 hours. Nobody else offers this. Business tier and above.
| Param | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude |
| lon | float | Yes | Longitude |
| capacity | int | No | Number of bays (default 2) |
| country | string | No | UK, US or EU |
{ "best_time": "02:00", "worst_time": "17:00",
"hourly_forecast": [
{"hour":0,"time":"00:00","probability_free":91.2,"prediction":"free","confidence":"high"},
{"hour":17,"time":"17:00","probability_free":18.4,"prediction":"busy","confidence":"high"},
...24 hours total
]}
Scores how underserved a location is (0=well served, 100=charging desert). Used by councils, energy companies and network operators.
| Param | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude |
| lon | float | Yes | Longitude |
| country | string | No | UK, US or EU |
{ "gap_score": 84, "infrastructure_priority": "Critical",
"chargers_within_1_mile": 0, "chargers_within_5_miles": 2,
"recommendation": "Urgent infrastructure investment needed",
"useful_for": ["Local councils","Energy companies","EV network operators"] }
Send up to 50 charger locations in one request and get AI predictions for all of them simultaneously. Essential for fleet operators.
POST /api/v1/predict/batch
Content-Type: application/json
{ "chargers": [
{ "id": "depot-1", "lat": 51.5, "lon": -0.1, "capacity": 4, "country": "UK" },
{ "id": "depot-2", "lat": 52.4, "lon": -1.9, "capacity": 2, "country": "UK" }
]}
{ "total_chargers": 2, "predicted_free": 1, "predicted_busy": 1,
"results": [
{ "id": "depot-1", "probability_free": 73.2, "prediction": "free" },
{ "id": "depot-2", "probability_free": 31.8, "prediction": "busy" }
]}
// Get your free key at chargesmart.online/developers const API_KEY = 'YOUR_API_KEY'; async function getChargerPrediction(lat, lon) { const res = await fetch( `https://chargesmart.online/api/v1/predict?lat=${lat}&lon=${lon}`, { headers: { 'Authorization': `Bearer ${API_KEY}` } } ); const data = await res.json(); console.log(data.data.prediction); // "free" or "busy" console.log(data.data.probability_free); // e.g. 73.4 console.log(data.data.best_time_today); // e.g. "22:00" } getChargerPrediction(51.5074, -0.1278);
import requests
API_KEY = 'YOUR_API_KEY'
headers = {'Authorization': f'Bearer {API_KEY}'}
resp = requests.get(
'https://chargesmart.online/api/v1/predict',
params={'lat': 51.5074, 'lon': -0.1278, 'hour': 17},
headers=headers
)
data = resp.json()['data']
print(f"Prediction: {data['prediction']}")
print(f"Free probability: {data['probability_free']}%")
print(f"Best time: {data['best_time_today']}")