Endpoints · Enlèvement
Adresse d'enlèvement
Point où Arel vient chercher vos colis — obligatoire avant le premier envoi.
Configure ou remplace l'adresse d'enlèvement du compte — le point où Arel vient chercher vos colis. Scope write (méthode PUT).
Résolution de PICKUP_ADDRESS_REQUIRED
Un 200 ici fait passer pickupAddressConfigured à true sur GET /account, et POST /shipping aboutit ensuite. Sur ce blocage, aucune escalade manuelle n'est nécessaire : appelez cet endpoint, puis rejouez la création.
| Champ | Requis | Notes |
|---|---|---|
street | Requis | |
city | Requis | |
postalCode | Requis | |
country | Optionnel | Défaut : "France" |
coordinates.latitude | Optionnel | Nombre. Avec longitude, court-circuite le géocodage |
coordinates.longitude | Optionnel | Nombre. Doit accompagner latitude |
# Pose ou remplace l'adresse d'enlevement du compte.
# Scope write (methode PUT). Repare a lui seul PICKUP_ADDRESS_REQUIRED.
curl -X PUT "https://api.arelpro.com/pro/api/v1/shipping/pickup-address" \
-H "Authorization: Bearer sk_live_VOTRE_CLE" \
-H "X-Client-Id: VOTRE_CLIENT_ID" \
-H "Content-Type: application/json" \
-d '{
"street": "10 Rue du Depot",
"city": "Paris",
"postalCode": "75011",
"country": "France"
}'
# Reponse 200 — coordinates omis : Arel geocode l'adresse pour vous.
# {
# "success": true,
# "pickupAddress": {
# "location": { "type": "Point", "coordinates": [2.3522, 48.8566] },
# "street": "10 Rue du Depot",
# "city": "Paris",
# "postalCode": "75011",
# "country": "France"
# }
# }
#
# location.coordinates est en GeoJSON : [longitude, latitude] — dans cet
# ordre, l'INVERSE de celui ou vous les avez fournies.Sans coordinates, l'adresse est géocodée. Le géocodage est un appel réseau à un service tiers : il peut échouer sur une adresse exotique, mal orthographiée ou trop récente. Dans ce cas la réponse est un 400 PICKUP_ADDRESS_NOT_GEOCODABLE — un slug, donc branchable — et aucune adresse n'est enregistrée. Le remède est de renvoyer la même adresse avec coordinates.
Le point GPS détermine le lieu d'enlèvement
Une adresse géocodée approximativement ne lève aucune erreur : elle peut simplement déplacer le point d'enlèvement. Après l'appel, vérifiez pickupAddress.location.coordinates dans la réponse (ou sur GET /account). Si le point est incorrect, repassez l'appel avec coordinates.
Ordre GeoJSON : location.coordinates est renvoyé en [longitude, latitude] — l'inverse de l'ordre où vous les fournissez dans coordinates. Interverti, le point d'enlèvement est incorrect sans erreur explicite.
L'écriture est ciblée : les champs que vous n'envoyez pas et que le dashboard avait posés — notamment formattedAddress et placeId — sont préservés, et vous les reverrez dans la réponse. Mais street, city, postalCode, country et location sont remplacés à chaque appel : ce n'est pas une mise à jour partielle, envoyez l'adresse complète.
Il n'y a qu'une adresse d'enlèvement par compte : cet appel remplace la précédente. Elle sert de défaut à tous vos envois — pour un enlèvement ponctuel ailleurs, passez pickupAddress dans le corps de POST /shipping : cet envoi-là partira de l'adresse fournie, sans toucher au réglage du compte.
Le pickupAddress de POST /shipping ne remplace pas ce réglage. La garde porte sur l'adresse du compte : tant qu'elle est absente, POST /shipping renvoie 403 PICKUP_ADDRESS_REQUIRED même si vous fournissez une adresse d'enlèvement dans le corps. Ce PUT est donc un passage obligé, une fois, avant le premier envoi.