curl --request GET \
--url https://sandbox.myexpressdriver.com/v1/options \
--header 'X-Api-Key: <api-key>'import requests
url = "https://sandbox.myexpressdriver.com/v1/options"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://sandbox.myexpressdriver.com/v1/options', 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://sandbox.myexpressdriver.com/v1/options",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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://sandbox.myexpressdriver.com/v1/options"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-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://sandbox.myexpressdriver.com/v1/options")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.myexpressdriver.com/v1/options")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"transport_id": "<string>",
"leg": "aller",
"prestation": "<string>",
"active_options": [
"<string>"
],
"options": [
{
"key": "<string>",
"stored_key": "<string>",
"name": "<string>",
"description": "<string>",
"price": 123,
"currency": "EUR",
"category": "<string>",
"default_option": true,
"active": true,
"requirements": {
"kind": "standard",
"addable": true,
"client_only": true,
"exclusive_group": "<string>",
"fields": [
{
"name": "renter",
"required": true,
"type": "<string>",
"choices": [
{
"id": "<string>",
"name": "<string>",
"input": "link",
"tool_url": "<string>",
"link_optional": true
}
]
}
],
"documents": [
"<string>"
],
"driver_documents": [
"<string>"
]
}
}
],
"renters": [
{
"id": "<string>",
"name": "<string>",
"prestations": [
"livraison"
],
"input": "link",
"tool_url": "<string>",
"guide_url": "<string>",
"guide_name": "<string>",
"link_optional": true
}
]
}Catalogue d'options
Options que vous pouvez poser sur une mission, au prix de votre grille
(les tarifs négociés de votre groupe s’appliquent), avec pour chacune ses
obligations (requirements) : document à fournir (PV_PAPIER), champs à
renseigner (loueur, lien de session ou code PIN pour un PV dématérialisé,
liste d’accessoires à vérifier), exclusions (exclusive_group: pv — un
seul type de PV par jambe) et documents que le convoyeur produira.
Avec transport_id, le catalogue est celui du donneur d’ordre de la mission
et active_options liste les options déjà posées sur la jambe (leg).
renters donne les loueurs acceptant le PV dématérialisé, la prestation
concernée et la saisie attendue (link ou pin).
curl --request GET \
--url https://sandbox.myexpressdriver.com/v1/options \
--header 'X-Api-Key: <api-key>'import requests
url = "https://sandbox.myexpressdriver.com/v1/options"
headers = {"X-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<api-key>'}};
fetch('https://sandbox.myexpressdriver.com/v1/options', 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://sandbox.myexpressdriver.com/v1/options",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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://sandbox.myexpressdriver.com/v1/options"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-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://sandbox.myexpressdriver.com/v1/options")
.header("X-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.myexpressdriver.com/v1/options")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"transport_id": "<string>",
"leg": "aller",
"prestation": "<string>",
"active_options": [
"<string>"
],
"options": [
{
"key": "<string>",
"stored_key": "<string>",
"name": "<string>",
"description": "<string>",
"price": 123,
"currency": "EUR",
"category": "<string>",
"default_option": true,
"active": true,
"requirements": {
"kind": "standard",
"addable": true,
"client_only": true,
"exclusive_group": "<string>",
"fields": [
{
"name": "renter",
"required": true,
"type": "<string>",
"choices": [
{
"id": "<string>",
"name": "<string>",
"input": "link",
"tool_url": "<string>",
"link_optional": true
}
]
}
],
"documents": [
"<string>"
],
"driver_documents": [
"<string>"
]
}
}
],
"renters": [
{
"id": "<string>",
"name": "<string>",
"prestations": [
"livraison"
],
"input": "link",
"tool_url": "<string>",
"guide_url": "<string>",
"guide_name": "<string>",
"link_optional": true
}
]
}Autorisations
Clé API liée à un groupe (med_live_… en production, med_test_… en test).
Fournie en clair une seule fois à la création depuis le profil client.
Paramètres de requête
Mission de référence (catalogue de son donneur d'ordre, options actives signalées).
Jambe dont on liste les options actives (aller par défaut).
aller, retour 