curl --request GET \
--url https://staging-v2.sparqle.tech/pickup-points \
--header 'api-key: <api-key>'import requests
url = "https://staging-v2.sparqle.tech/pickup-points"
headers = {"api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'api-key': '<api-key>'}};
fetch('https://staging-v2.sparqle.tech/pickup-points', 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://staging-v2.sparqle.tech/pickup-points",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"api-key: <api-key>"
],
]);
$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://staging-v2.sparqle.tech/pickup-points"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://staging-v2.sparqle.tech/pickup-points")
.header("api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://staging-v2.sparqle.tech/pickup-points")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"points": [
{
"pudoId": "9f83c1b0a4",
"carrierPudoId": "8004567",
"type": "SERVICE_POINT",
"name": "Albert Heijn Zuidas",
"address": {
"street": "Gustav Mahlerlaan 320",
"street2": "Unit 2",
"postalCode": "1082ME",
"city": "Amsterdam",
"state": "Noord-Holland",
"suburb": "Zuidas",
"countryCode": "NL"
},
"geo": {
"lng": 4.8721,
"lat": 52.3382
},
"openingHours": {
"open24h": false,
"weekdays": {}
},
"facilities": {
"carParking": true,
"bikeParking": true,
"accessibility": true,
"waitingArea": true
},
"contact": {
"phone": "+31201234567",
"email": "[email protected]"
},
"distanceMeters": 420,
"locationGuidance": "Locker is on the left side of the building"
}
],
"totalFound": 12
}{
"statusCode": 400,
"message": [
"deliveryName should not be empty"
],
"error": "Bad Request"
}Search pickup points
Find the pickup points (PUDO locations) closest to an address or coordinate, ordered by distance. Pass the pudoId of the point your shopper selects straight through to the order’s pudoId.
Search by countryCode + postalCode, or by lat + lng. An address that has no pickup points returns an empty list.
curl --request GET \
--url https://staging-v2.sparqle.tech/pickup-points \
--header 'api-key: <api-key>'import requests
url = "https://staging-v2.sparqle.tech/pickup-points"
headers = {"api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'api-key': '<api-key>'}};
fetch('https://staging-v2.sparqle.tech/pickup-points', 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://staging-v2.sparqle.tech/pickup-points",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"api-key: <api-key>"
],
]);
$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://staging-v2.sparqle.tech/pickup-points"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://staging-v2.sparqle.tech/pickup-points")
.header("api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://staging-v2.sparqle.tech/pickup-points")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"points": [
{
"pudoId": "9f83c1b0a4",
"carrierPudoId": "8004567",
"type": "SERVICE_POINT",
"name": "Albert Heijn Zuidas",
"address": {
"street": "Gustav Mahlerlaan 320",
"street2": "Unit 2",
"postalCode": "1082ME",
"city": "Amsterdam",
"state": "Noord-Holland",
"suburb": "Zuidas",
"countryCode": "NL"
},
"geo": {
"lng": 4.8721,
"lat": 52.3382
},
"openingHours": {
"open24h": false,
"weekdays": {}
},
"facilities": {
"carParking": true,
"bikeParking": true,
"accessibility": true,
"waitingArea": true
},
"contact": {
"phone": "+31201234567",
"email": "[email protected]"
},
"distanceMeters": 420,
"locationGuidance": "Locker is on the left side of the building"
}
],
"totalFound": 12
}{
"statusCode": 400,
"message": [
"deliveryName should not be empty"
],
"error": "Bad Request"
}Authorizations
Query Parameters
ISO 3166-1 country code. Required unless lat/lng are given.
2Postal code. Required unless lat/lng are given.
Restrict the search to these kinds of pickup point. Repeat the parameter for multiple values. Omit it to search every kind.
These filter values are broader than the type a point is returned with: PICKUP_DROPOFF_POINT matches points of type SERVICE_POINT and POST_OFFICE, and MAILBOX_POBOX matches type MAILBOX.
PARCEL_LOCKER, PICKUP_DROPOFF_POINT, MAILBOX_POBOX 1 <= x <= 100Search radius in kilometers. Omit for the carrier default.