Find an API

Search public APIs with auth details & Postman guides

← All APIs

eDRV API

edrv · Data

Data No Auth Free & Open open_data transport location

edrv.io API Documentation

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET getChargeStations

List all Chargestations

https://api.apis.guru/v2/specs/edrv.io/v1/v1/chargestations?active=true&online=true&public=true&sort_by=createdAt&location=example&sort_order=desc&organization=example&include_evses=true&paginate_page=example&paginate_limit=20&createdAt[$gte]=example&createdAt[$lte]=example&updatedAt[$gte]=example&updatedAt[$lte]=example&include_location=true&paginate_enabled=true&include_organization=true

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/edrv.io/v1/v1/chargestations?active=true&online=true&public=true&sort_by=createdAt&location=example&sort_order=desc&organization=example&include_evses=true&paginate_page=example&paginate_limit=20&createdAt[$gte]=example&createdAt[$lte]=example&updatedAt[$gte]=example&updatedAt[$lte]=example&include_location=true&paginate_enabled=true&include_organization=true"
import requests
params = {
    "active": "true",
    "online": "true",
    "public": "true",
    "sort_by": "createdAt",
    "location": "example",
    "sort_order": "desc",
    "organization": "example",
    "include_evses": "true",
    "paginate_page": "example",
    "paginate_limit": "20",
    "createdAt[$gte]": "example",
    "createdAt[$lte]": "example",
    "updatedAt[$gte]": "example",
    "updatedAt[$lte]": "example",
    "include_location": "true",
    "paginate_enabled": "true",
    "include_organization": "true"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/edrv.io/v1/v1/chargestations",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/edrv.io/v1/v1/chargestations');
url.searchParams.set('active', 'true');
url.searchParams.set('online', 'true');
url.searchParams.set('public', 'true');
url.searchParams.set('sort_by', 'createdAt');
url.searchParams.set('location', 'example');
url.searchParams.set('sort_order', 'desc');
url.searchParams.set('organization', 'example');
url.searchParams.set('include_evses', 'true');
url.searchParams.set('paginate_page', 'example');
url.searchParams.set('paginate_limit', '20');
url.searchParams.set('createdAt[$gte]', 'example');
url.searchParams.set('createdAt[$lte]', 'example');
url.searchParams.set('updatedAt[$gte]', 'example');
url.searchParams.set('updatedAt[$lte]', 'example');
url.searchParams.set('include_location', 'true');
url.searchParams.set('paginate_enabled', 'true');
url.searchParams.set('include_organization', 'true');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/edrv.io/v1/v1/chargestations")
	q := baseURL.Query()
	q.Set("active", "true")
	q.Set("online", "true")
	q.Set("public", "true")
	q.Set("sort_by", "createdAt")
	q.Set("location", "example")
	q.Set("sort_order", "desc")
	q.Set("organization", "example")
	q.Set("include_evses", "true")
	q.Set("paginate_page", "example")
	q.Set("paginate_limit", "20")
	q.Set("createdAt[$gte]", "example")
	q.Set("createdAt[$lte]", "example")
	q.Set("updatedAt[$gte]", "example")
	q.Set("updatedAt[$lte]", "example")
	q.Set("include_location", "true")
	q.Set("paginate_enabled", "true")
	q.Set("include_organization", "true")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/edrv.io/v1/v1/chargestations")
uri.query = URI.encode_www_form({
  "active" => "true",
  "online" => "true",
  "public" => "true",
  "sort_by" => "createdAt",
  "location" => "example",
  "sort_order" => "desc",
  "organization" => "example",
  "include_evses" => "true",
  "paginate_page" => "example",
  "paginate_limit" => "20",
  "createdAt[$gte]" => "example",
  "createdAt[$lte]" => "example",
  "updatedAt[$gte]" => "example",
  "updatedAt[$lte]" => "example",
  "include_location" => "true",
  "paginate_enabled" => "true",
  "include_organization" => "true"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/edrv.io/v1/v1/chargestations?" . http_build_query([
    "active" => "true",
    "online" => "true",
    "public" => "true",
    "sort_by" => "createdAt",
    "location" => "example",
    "sort_order" => "desc",
    "organization" => "example",
    "include_evses" => "true",
    "paginate_page" => "example",
    "paginate_limit" => "20",
    "createdAt[$gte]" => "example",
    "createdAt[$lte]" => "example",
    "updatedAt[$gte]" => "example",
    "updatedAt[$lte]" => "example",
    "include_location" => "true",
    "paginate_enabled" => "true",
    "include_organization" => "true"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET getCommands

Get Commands data

https://api.apis.guru/v2/specs/edrv.io/v1/v1/commands?sort_by=createdAt&sort_order=desc&paginate_page=example&include_driver=true&paginate_limit=20&createdAt[$gte]=example&createdAt[$lte]=example&updatedAt[$gte]=example&updatedAt[$lte]=example&paginate_enabled=true&include_transaction=true&include_organization=true&include_chargestation=true

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/edrv.io/v1/v1/commands?sort_by=createdAt&sort_order=desc&paginate_page=example&include_driver=true&paginate_limit=20&createdAt[$gte]=example&createdAt[$lte]=example&updatedAt[$gte]=example&updatedAt[$lte]=example&paginate_enabled=true&include_transaction=true&include_organization=true&include_chargestation=true"
import requests
params = {
    "sort_by": "createdAt",
    "sort_order": "desc",
    "paginate_page": "example",
    "include_driver": "true",
    "paginate_limit": "20",
    "createdAt[$gte]": "example",
    "createdAt[$lte]": "example",
    "updatedAt[$gte]": "example",
    "updatedAt[$lte]": "example",
    "paginate_enabled": "true",
    "include_transaction": "true",
    "include_organization": "true",
    "include_chargestation": "true"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/edrv.io/v1/v1/commands",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/edrv.io/v1/v1/commands');
url.searchParams.set('sort_by', 'createdAt');
url.searchParams.set('sort_order', 'desc');
url.searchParams.set('paginate_page', 'example');
url.searchParams.set('include_driver', 'true');
url.searchParams.set('paginate_limit', '20');
url.searchParams.set('createdAt[$gte]', 'example');
url.searchParams.set('createdAt[$lte]', 'example');
url.searchParams.set('updatedAt[$gte]', 'example');
url.searchParams.set('updatedAt[$lte]', 'example');
url.searchParams.set('paginate_enabled', 'true');
url.searchParams.set('include_transaction', 'true');
url.searchParams.set('include_organization', 'true');
url.searchParams.set('include_chargestation', 'true');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/edrv.io/v1/v1/commands")
	q := baseURL.Query()
	q.Set("sort_by", "createdAt")
	q.Set("sort_order", "desc")
	q.Set("paginate_page", "example")
	q.Set("include_driver", "true")
	q.Set("paginate_limit", "20")
	q.Set("createdAt[$gte]", "example")
	q.Set("createdAt[$lte]", "example")
	q.Set("updatedAt[$gte]", "example")
	q.Set("updatedAt[$lte]", "example")
	q.Set("paginate_enabled", "true")
	q.Set("include_transaction", "true")
	q.Set("include_organization", "true")
	q.Set("include_chargestation", "true")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/edrv.io/v1/v1/commands")
uri.query = URI.encode_www_form({
  "sort_by" => "createdAt",
  "sort_order" => "desc",
  "paginate_page" => "example",
  "include_driver" => "true",
  "paginate_limit" => "20",
  "createdAt[$gte]" => "example",
  "createdAt[$lte]" => "example",
  "updatedAt[$gte]" => "example",
  "updatedAt[$lte]" => "example",
  "paginate_enabled" => "true",
  "include_transaction" => "true",
  "include_organization" => "true",
  "include_chargestation" => "true"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/edrv.io/v1/v1/commands?" . http_build_query([
    "sort_by" => "createdAt",
    "sort_order" => "desc",
    "paginate_page" => "example",
    "include_driver" => "true",
    "paginate_limit" => "20",
    "createdAt[$gte]" => "example",
    "createdAt[$lte]" => "example",
    "updatedAt[$gte]" => "example",
    "updatedAt[$lte]" => "example",
    "paginate_enabled" => "true",
    "include_transaction" => "true",
    "include_organization" => "true",
    "include_chargestation" => "true"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET getDrivers

List all drivers

https://api.apis.guru/v2/specs/edrv.io/v1/v1/drivers?active=true&sort_by=createdAt&sort_order=desc&include_group=true&paginate_page=example&include_tokens=true&paginate_limit=20&createdAt[$gte]=example&createdAt[$lte]=example&updatedAt[$gte]=example&updatedAt[$lte]=example&paginate_enabled=true&include_organization=true

Hover any highlighted part to learn what it does

curl -X GET "https://api.apis.guru/v2/specs/edrv.io/v1/v1/drivers?active=true&sort_by=createdAt&sort_order=desc&include_group=true&paginate_page=example&include_tokens=true&paginate_limit=20&createdAt[$gte]=example&createdAt[$lte]=example&updatedAt[$gte]=example&updatedAt[$lte]=example&paginate_enabled=true&include_organization=true"
import requests
params = {
    "active": "true",
    "sort_by": "createdAt",
    "sort_order": "desc",
    "include_group": "true",
    "paginate_page": "example",
    "include_tokens": "true",
    "paginate_limit": "20",
    "createdAt[$gte]": "example",
    "createdAt[$lte]": "example",
    "updatedAt[$gte]": "example",
    "updatedAt[$lte]": "example",
    "paginate_enabled": "true",
    "include_organization": "true"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/edrv.io/v1/v1/drivers",
    params=params,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/edrv.io/v1/v1/drivers');
url.searchParams.set('active', 'true');
url.searchParams.set('sort_by', 'createdAt');
url.searchParams.set('sort_order', 'desc');
url.searchParams.set('include_group', 'true');
url.searchParams.set('paginate_page', 'example');
url.searchParams.set('include_tokens', 'true');
url.searchParams.set('paginate_limit', '20');
url.searchParams.set('createdAt[$gte]', 'example');
url.searchParams.set('createdAt[$lte]', 'example');
url.searchParams.set('updatedAt[$gte]', 'example');
url.searchParams.set('updatedAt[$lte]', 'example');
url.searchParams.set('paginate_enabled', 'true');
url.searchParams.set('include_organization', 'true');

const response = await fetch(url); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/edrv.io/v1/v1/drivers")
	q := baseURL.Query()
	q.Set("active", "true")
	q.Set("sort_by", "createdAt")
	q.Set("sort_order", "desc")
	q.Set("include_group", "true")
	q.Set("paginate_page", "example")
	q.Set("include_tokens", "true")
	q.Set("paginate_limit", "20")
	q.Set("createdAt[$gte]", "example")
	q.Set("createdAt[$lte]", "example")
	q.Set("updatedAt[$gte]", "example")
	q.Set("updatedAt[$lte]", "example")
	q.Set("paginate_enabled", "true")
	q.Set("include_organization", "true")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/edrv.io/v1/v1/drivers")
uri.query = URI.encode_www_form({
  "active" => "true",
  "sort_by" => "createdAt",
  "sort_order" => "desc",
  "include_group" => "true",
  "paginate_page" => "example",
  "include_tokens" => "true",
  "paginate_limit" => "20",
  "createdAt[$gte]" => "example",
  "createdAt[$lte]" => "example",
  "updatedAt[$gte]" => "example",
  "updatedAt[$lte]" => "example",
  "paginate_enabled" => "true",
  "include_organization" => "true"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/edrv.io/v1/v1/drivers?" . http_build_query([
    "active" => "true",
    "sort_by" => "createdAt",
    "sort_order" => "desc",
    "include_group" => "true",
    "paginate_page" => "example",
    "include_tokens" => "true",
    "paginate_limit" => "20",
    "createdAt[$gte]" => "example",
    "createdAt[$lte]" => "example",
    "updatedAt[$gte]" => "example",
    "updatedAt[$lte]" => "example",
    "paginate_enabled" => "true",
    "include_organization" => "true"
]);
$opts = ["http" => [
    "method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with eDRV API?

eDRV API is a Data API. Developers commonly use data APIs for:

  • enriching your app with third-party datasets
  • building data pipelines and ETL workflows
  • querying and searching large datasets
  • powering research, analysis, and reporting tools
  • syncing reference data into your own systems

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. eDRV API is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide

Open documentation ↗