List Locations
curl --request GET \
--url https://app.plugchoice.com/api/v3/teams/{team}/sites \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.plugchoice.com/api/v3/teams/{team}/sites"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.plugchoice.com/api/v3/teams/{team}/sites', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.plugchoice.com/api/v3/teams/{team}/sites",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.plugchoice.com/api/v3/teams/{team}/sites"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.plugchoice.com/api/v3/teams/{team}/sites")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.plugchoice.com/api/v3/teams/{team}/sites")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"uuid": "<string>",
"name": "<string>",
"address": "<string>",
"street": "<string>",
"postal_code": "<string>",
"house_number": 123,
"house_number_addition": "<string>",
"city": "<string>",
"country": "<string>",
"latitude": 123,
"longitude": 123,
"manual_coordinates": true,
"smart_charging": "<string>",
"chargers_count": 123,
"created_at": "<string>",
"permissions": {
"basic": true,
"sensitive": true,
"full": true
}
}
],
"filter_options": {
"countries": [
{}
],
"smart_charging_modes": [
{}
]
}
}Locations
List Locations
GET
/
v3
/
teams
/
{team}
/
sites
List Locations
curl --request GET \
--url https://app.plugchoice.com/api/v3/teams/{team}/sites \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.plugchoice.com/api/v3/teams/{team}/sites"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.plugchoice.com/api/v3/teams/{team}/sites', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.plugchoice.com/api/v3/teams/{team}/sites",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.plugchoice.com/api/v3/teams/{team}/sites"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.plugchoice.com/api/v3/teams/{team}/sites")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.plugchoice.com/api/v3/teams/{team}/sites")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"uuid": "<string>",
"name": "<string>",
"address": "<string>",
"street": "<string>",
"postal_code": "<string>",
"house_number": 123,
"house_number_addition": "<string>",
"city": "<string>",
"country": "<string>",
"latitude": 123,
"longitude": 123,
"manual_coordinates": true,
"smart_charging": "<string>",
"chargers_count": 123,
"created_at": "<string>",
"permissions": {
"basic": true,
"sensitive": true,
"full": true
}
}
],
"filter_options": {
"countries": [
{}
],
"smart_charging_modes": [
{}
]
}
}Returns a paginated list of locations belonging to the specified team, with filtering and sorting support.
string
required
The UUID of the team.
string
Filter by location name or address.
string
Filter by ISO 3166-1 alpha-2 country code (e.g.,
NL, DE, BE).string
Filter by smart charging mode. One of
disabled, day_ahead_pricing, or off_peak.string
Sort field. One of
name, country, chargers_count, or created_at. Prefix with - for descending order. Defaults to -created_at.integer
Page number for pagination.
Response
array
Array of location objects.
Show site
Show site
string
The unique UUID of the location.
string
The location name.
string
The full formatted address.
string
The street name.
string
The postal code.
integer
The house number.
string
The house number addition (e.g., “A”, “B”). May be
null.string
The city name.
string
The ISO 3166-1 alpha-2 country code.
number
The latitude coordinate of the location. May be
null.number
The longitude coordinate of the location. May be
null.boolean
Whether the coordinates were set manually rather than geocoded.
string
The smart charging mode (
disabled, day_ahead_pricing, or off_peak).integer
The number of chargers at this location.
string
ISO 8601 timestamp of when the location was created.
⌘I