Aller au contenu

Endpoints

Véhicules

Avant de pouvoir gérer la sécurité ou l'accès aux véhicules, il faut d'abord gérer la liste des véhicules de la flotte.

Ajouter un véhicule

Fait une demande d'ajout de véhicule au compte, étudiée et réalisée par Carmoove, qui proposera le boîtier approprié à la demande.

POST /v1/vehicle
x-carmoove-token: <token>

Paramètres

Champ Type Description
plate String Plaque d'immatriculation du véhicule.
request String Détail sur les raisons de la requête (champ libre) : type de boîtier à installer (OBD / CAN), fonctionnalités voulues (immobilisation, fermeture centralisée, etc.).

Réponse

Champ Type Description
request_id String Identifiant de la demande.
error String Code d'erreur. Absent en cas de requête réussie.

Lister les véhicules

Fournit la liste des véhicules pour un usage de car-sharing.

GET /v1/vehicles
x-carmoove-token: <token>

Réponse

Champ Type Description
id String Identifiant du véhicule.
builder String Constructeur du véhicule.
model String Modèle du véhicule.
plate String Plaque d'immatriculation du véhicule.
deviceId String Identifiant du boîtier installé sur le véhicule.
deviceModel String Identifiant du modèle de boîtier.
energy String Énergie utilisée par le véhicule (nomenclature carte grise).
bluetoothName String Nom du Bluetooth.
seats Number Nombre de sièges.
gearbox String Type de boîte de vitesse : AUTOMATIC / MANUAL.
kind String Type de véhicule (nomenclature carte grise).
archived Boolean Indique si le véhicule a été archivé.
accessories Array Accessoires installés avec le boîtier. Valeurs possibles : TEMPERATURE-SENSOR (capteur de température), CARDHOLDER (détecteur de cartes parking / énergie / autres), KEY-DETECTOR (détecteur de clé).

Voir les informations d'un véhicule

GET /v1/vehicle
x-carmoove-token: <token>

Option — requête alternative sans paramètres : GET /v1/vehicle/{id}.

Paramètres

Un seul des deux paramètres est nécessaire.

Champ Type Description
id String Identifiant du véhicule.
plate String Plaque d'immatriculation du véhicule.

Réponse

Champ Type Description
Id String Identifiant du véhicule.
builder String Constructeur du véhicule.
model String Modèle du véhicule.
plate String Plaque d'immatriculation du véhicule.
energy String Type d'énergie.
bluetoothName String Nom du Bluetooth.
deviceId String Identifiant du boîtier installé sur le véhicule.
deviceModel String Identifiant du modèle de boîtier.
accessories Array Accessoires installés avec le boîtier (mêmes valeurs que ci-dessus).
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE — voir Erreurs.

Archiver un véhicule

Archive un véhicule : ses informations restent disponibles mais plus aucune action n'est possible. Le même appel permet de réactiver un véhicule archivé.

PUT /v1/vehicle
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.
archived Boolean Statut d'archivage à appliquer (true pour archiver, false pour réactiver).

Réponse

Champ Type Description
id String Identifiant du véhicule.
archived String Statut d'archivage du véhicule.
error String Code d'erreur. Absent en cas de requête réussie.

Supprimer un véhicule

Supprime le véhicule ainsi que toutes les données associées.

DELETE /v1/vehicle
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Boîtiers télématiques

Pour gérer la sécurité ou les accès à un véhicule, il faut associer l'identifiant du boîtier télématique au véhicule sur lequel il est installé.

Lier un boîtier

POST /v1/device
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.
deviceId String Identifiant du boîtier.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Supprimer le lien d'un boîtier

DELETE /v1/device
x-carmoove-token: <token>

Paramètres

Champ Type Description
deviceId String Identifiant du boîtier.

Réponse

Champ Type Description
error String Code d'erreur.

Changement de boîtier

Met à jour le lien entre le véhicule et le boîtier télématique en cas de remplacement du boîtier.

PUT /v1/device
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du nouveau véhicule.
deviceId String Identifiant du boîtier.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs possibles pour les trois endpoints ci-dessus : UNKNOWN_DEVICE, UNKNOWN_VEHICLE, DEVICE_ALREADY_LINKED, VEHICLE_ALREADY_LINKED — voir Erreurs.

Accès au véhicule (autorisations Bluetooth)

Pour se connecter en Bluetooth au véhicule, il faut au préalable demander un token d'autorisation. Ce token est ensuite fourni lors de la connexion Bluetooth au boîtier installé dans le véhicule.

Autorisation

POST /v1/bluetooth-token
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.
userId String Identifiant du conducteur.
level String Niveau d'autorisation : LOCK_UNLOCK ou DRIVE.
from Timestamp Date et heure de début de l'autorisation.
until Timestamp Date et heure de fin de l'autorisation.

Réponse

Champ Type Description
token String Token à utiliser pour la communication Bluetooth avec le boîtier.
key String Clé de session pour la communication Bluetooth avec le boîtier.
authorizationId String Identifiant de l'autorisation.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE, INVALID_LEVEL, INVALID_INTERVAL, INVALID_DATE — voir Erreurs.

Statut de l'autorisation

GET /v1/bluetooth-token/{authorizationId}
x-carmoove-token: <token>

Paramètres

Champ Type Description
authorizationId String Identifiant de l'autorisation.

Réponse

Champ Type Description
vehicleId String Identifiant du véhicule.
userId String Identifiant du conducteur.
from Timestamp Date et heure de début de l'autorisation.
until Timestamp Date et heure de fin de l'autorisation.
token String Token à utiliser pour la communication Bluetooth avec le boîtier.
key String Clé de session pour la communication Bluetooth avec le boîtier.
error String Code d'erreur. Absent en cas de requête réussie.

Mise à jour de l'autorisation

POST /v1/bluetooth-token/{authorizationId}
x-carmoove-token: <token>

Paramètres

Champ Type Description
authorizationId String Identifiant de l'autorisation.
from Timestamp Date de début.
until Timestamp Date de fin.

Réponse

Champ Type Description
authorizationId String Nouvel identifiant de l'autorisation.
vehicleId String Identifiant du véhicule.
userId String Identifiant du conducteur.
from Timestamp Date et heure de début de l'autorisation.
until Timestamp Date et heure de fin de l'autorisation.
token String Token à utiliser pour la communication Bluetooth avec le boîtier.
key String Clé de session pour la communication Bluetooth avec le boîtier.
error String Code d'erreur. Absent en cas de requête réussie.

Suppression de l'autorisation

DELETE /v1/bluetooth-token
x-carmoove-token: <token>

Paramètres

Champ Type Description
authorizationId String Identifiant de l'autorisation.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs des trois endpoints ci-dessus : UNKNOWN_AUTHORIZATION — voir Erreurs.

Suspension temporaire de l'autorisation

Retire temporairement l'accès d'un utilisateur à un véhicule.

POST /v1/bluetooth-token/invalidate
x-carmoove-token: <token>

Paramètres

Champ Type Description
authorizationId String Identifiant de l'autorisation.
until String Date et heure de fin de la suspension.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_AUTHORIZATION, INVALID_DATE, AUTHORIZATION_NOT_ACTIVE, AUTHORIZATION_EXPIRED — voir Erreurs (les deux derniers codes ne sont pas documentés dans le PDF source, trouvés en vérifiant v1/bluetooth.go).

Réactivation de l'autorisation avant la fin de la suspension temporaire

Redonne l'accès d'un utilisateur à un véhicule avant la fin de sa suspension.

POST /v1/bluetooth-token/validate
x-carmoove-token: <token>

Paramètres

Champ Type Description
authorizationId String Identifiant de l'autorisation.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_AUTHORIZATION, NOT_SUSPENDED, AUTHORIZATION_NOT_ACTIVE, AUTHORIZATION_EXPIRED — voir Erreurs.

Actions sur le véhicule

Certaines actions sont possibles à distance (sans connexion Bluetooth), selon le modèle de boîtier installé et sa configuration.

Actions disponibles

GET /v1/vehicle/actions
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
actions Array Actions disponibles pour le véhicule. Valeurs possibles : IMMOBILIZE, CENTRAL-LOCK, HONK, TURNING-LIGHTS, UNLOCK-TRUNK, CLOSE-WINDOWS, OPEN-WINDOWS.
error String Code d'erreur. Absent en cas de requête réussie.

Autoriser le démarrage

POST /v1/vehicle/start
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
Status String Statut de l'autorisation : LOCKED ou UNLOCKED.
error String Code d'erreur. Absent en cas de requête réussie.

Interdire le démarrage

POST /v1/vehicle/immobilize
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
Status String Statut de l'autorisation : LOCKED ou UNLOCKED.
error String Code d'erreur. Absent en cas de requête réussie.

Faire klaxonner le véhicule

POST /v1/vehicle/honk
x-carmoove-token: <token>

En cas de réussite, l'API renvoie uniquement le code HTTP 200.

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Déverrouiller les portes

Note

Il n'est possible de déverrouiller les portes à distance ou en Bluetooth que si le véhicule a été verrouillé via la fonction de verrouillage (ci-dessous) sans utiliser la clé originale du véhicule.

POST /v1/vehicle/unlock
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
Status String Statut de l'ouverture : OPEN ou CLOSED.
error String Code d'erreur. Absent en cas de requête réussie.

Verrouiller les portes

Note

Les fonctions de verrouillage/déverrouillage doivent être activées via l'API ou la connexion Bluetooth, sans utiliser la clé originale du véhicule.

POST /v1/vehicle/lock
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
Status String Statut de l'ouverture : OPEN ou CLOSED.
error String Code d'erreur. Absent en cas de requête réussie.

Faire clignoter les feux

POST /v1/vehicle/lights/on
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Déverrouiller le coffre

POST /v1/vehicle/trunk/unlock
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Ouvrir les fenêtres

Ajouté en version 1.11.

POST /v1/vehicle/windows/open
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Fermer les fenêtres

Ajouté en version 1.11.

POST /v1/vehicle/windows/close
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs communes aux actions ci-dessus : UNKNOWN_VEHICLE, COMMUNICATION_FAILED — voir Erreurs.

Données d'un véhicule

Statut du véhicule

Le nombre de champs disponibles dépend du modèle de véhicule, du type de dispositif installé et de sa configuration.

GET /v1/vehicle/status
x-carmoove-token: <token>

Option — requête alternative sans paramètres : GET /v1/vehicle/{id}/status.

Paramètres

Un seul des deux paramètres est nécessaire.

Champ Type Description
vehicleId String Identifiant du véhicule.
plate String Immatriculation du véhicule.

Réponse

Champ Type Description
lock String Statut de la fermeture centralisée : LOCKED ou UNLOCKED.
engine String Statut du moteur : ON ou OFF.
immobilizer String Statut de l'immobilisation du véhicule : LOCKED ou UNLOCKED.
handbrake String Statut du frein à main : ON ou OFF.
lights String Statut des phares : ON ou OFF.
doors String Statut d'ouverture des portes : OPEN ou CLOSED.
windows String Statut d'ouverture des fenêtres : OPEN ou CLOSED.
speed Number Vitesse du véhicule en km/h.
bluetooth String Statut de la connexion Bluetooth : CONNECTED ou DISCONNECTED.
authenticated Boolean Statut de l'authentification Bluetooth. Absent s'il n'y a pas de connexion Bluetooth.
mileage Number Kilométrage du véhicule.
fuel Number Niveau de carburant (litres).
fuelRange Number Niveau de carburant (pourcentage).
chargingAdapterStatus String État de l'adaptateur secteur : CONNECTED ou DISCONNECTED.
ChargingStatus String Statut de la charge du véhicule : CHARGING ou NOT_CHARGING.
ChargingUntil Timestamp Date à laquelle la batterie arrêtera de charger.
ChargeLevel Number Niveau de charge de la batterie, en pourcentage.
RemainingRange Number Estimation de l'autonomie restante, en kilomètres.
privacy Boolean Statut de la confidentialité de localisation.
position Object Position du véhicule : latitude, longitude (degrés décimaux) et timestamp de la remontée. Peut être absent si la position n'est pas connue.
authorizations Object Autorisations en cours liées au véhicule : authorizationId, userId, from, until pour chaque autorisation.
scenarii Object Configuration et statut des scénarios du boîtier : gps_jamming (brouillage GPS), gnss_jamming (brouillage GNSS), towing_detection (détection de remorquage), crash_detection (détection de choc). Chaque scénario contient available (Bool), active (Bool), action (String, action exécutée si déclenché — vide si aucune) et triggered (Bool).
cardholder Array Informations sur le détecteur de cartes. Chaque objet contient id et statut.
vehicleKey Boolean Présence de la clé dans la voiture.
lastMessage Timestamp Date du dernier message envoyé par le boîtier. Ajouté en version 1.8.
state Object Statuts du véhicule (voir Mise à jour du statut d'un véhicule) : Towing, Accident, Maintenance, Breakdown, Stolen, Unavailable (Bool). Ajouté en version 1.8.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE, COMMUNICATION_FAILED — voir Erreurs.

Localisation d'un véhicule

GET /v1/vehicle/position
x-carmoove-token: <token>

Option — requête alternative sans paramètres : GET /v1/vehicle/{id}/position.

Paramètres

Un seul des deux paramètres est nécessaire.

Champ Type Description
vehicleId String Identifiant du véhicule.
plate String Immatriculation du véhicule.

Réponse

Champ Type Description
Position Object latitude, longitude (degrés décimaux) et timestamp de la dernière remontée de position. Peut être absent si la position n'est pas connue.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE, POSITION_UNKNOWN — voir Erreurs.

Confidentialité de localisation

Pour être en conformité avec le RGPD sur les services de location et partage de courte ou longue durée, il est recommandé d'activer la confidentialité de localisation en début de contrat/période d'usage, et de la désactiver en fin de période pour retrouver la position du véhicule.

Activer la confidentialité :

POST /v1/vehicle/privacy/on
x-carmoove-token: <token>

Désactiver la confidentialité :

POST /v1/vehicle/privacy/off
x-carmoove-token: <token>

Paramètres

Champ Type Description
vehicleId String Identifiant du véhicule.

Réponse

Champ Type Description
Privacy Boolean Statut de la confidentialité de localisation.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE — voir Erreurs.

Trajets d'un véhicule

GET /v1/vehicle/{id}/trips?from={from}&until={until}&offset={offset}&limit={limit}
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.
from Timestamp Date de début. Optionnel. Par défaut, le début du mois en cours.
until Timestamp Date de fin. Optionnel. Par défaut, la date de la requête.
limit Numeric Nombre de trajets à renvoyer. Optionnel.
offset Numeric Nombre de trajets à ignorer. Optionnel.

Réponse

Champ Type Description
trips Object Liste des trajets (objet trip, voir ci-dessous).
error String Code d'erreur. Absent en cas de requête réussie.

Objet trip

Nom du champ Type Description
trip_id String Identifiant du trajet.
timestamp Timestamp Date de début du trajet.
distance Numeric Distance parcourue pendant le trajet.
duration Numeric Durée du trajet, en minutes.
cost Numeric Coût estimé du trajet.
fuel_consumption Numeric Carburant consommé, en litres, pour les véhicules thermiques.
fuel_consumption_100km Numeric Consommation aux 100 km, pour les véhicules thermiques.
average_speed Numeric Vitesse moyenne.
electric_consumption Numeric Consommation électrique, pour les véhicules électriques.
electric_consumption_100km Numeric Consommation électrique aux 100 km, pour les véhicules électriques.
first_position Object Point de départ du trajet : latitude, longitude (degrés décimaux).
last_position Object Point d'arrivée du trajet : latitude, longitude (degrés décimaux).

Erreurs

UNKNOWN_VEHICLE, NO_DATA — voir Erreurs.

Mise à jour du statut d'un véhicule

Ces statuts peuvent aussi être modifiés automatiquement par la plateforme en cas de détection par le boîtier (ou, pour l'entretien, si les services associés sont activés). Ajouté en version 1.8.

Un même schéma de requête pour les six statuts :

POST /v1/vehicle/{id}/towing?state={state}
POST /v1/vehicle/{id}/accident?state={state}
POST /v1/vehicle/{id}/maintenance?state={state}
POST /v1/vehicle/{id}/breakdown?state={state}
POST /v1/vehicle/{id}/stolen?state={state}
POST /v1/vehicle/{id}/unavailable?state={state}
x-carmoove-token: <token>
Statut Endpoint Champ de réponse
Remorquage /v1/vehicle/{id}/towing towing
Accident /v1/vehicle/{id}/accident accident
Entretien /v1/vehicle/{id}/maintenance maintenance
Panne /v1/vehicle/{id}/breakdown breakdown
Vol /v1/vehicle/{id}/stolen stolen
Indisponible /v1/vehicle/{id}/unavailable unavailable

Paramètres

Champ Type Description
id String Identifiant du véhicule.
state Boolean Nouvel état du statut concerné.

Réponse

Champ Type Description
(voir tableau ci-dessus) Boolean Statut de l'état mis à jour.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE — voir Erreurs.

Données d'un conducteur

Liste des véhicules

Liste des véhicules pour lesquels une autorisation a été donnée à un conducteur.

GET /v1/user/{userid}/vehicles
x-carmoove-token: <token>

Paramètres

Champ Type Description
userId String Identifiant du conducteur.

Réponse

Champ Type Description
Id String Identifiant du véhicule.
Builder String Constructeur du véhicule.
Model String Modèle du véhicule.
Plate String Plaque d'immatriculation du véhicule.
deviceId String Identifiant du boîtier installé sur le véhicule.
deviceModel String Identifiant du modèle de boîtier.
Archived Boolean Indique si le véhicule a été archivé.
authorizations Object Autorisations liées au véhicule : authorizationId, from, until pour chaque autorisation.

Suppression des autorisations

Supprime toutes les autorisations accordées à un conducteur.

DELETE /v1/user/{userid}
x-carmoove-token: <token>

Paramètres

Champ Type Description
userId String Identifiant du conducteur.

Réponse

Champ Type Description
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

NOT_ALL_AUTHORIZATIONS_REVOKED — voir Erreurs.

Modifier son mot de passe

Voir Authentification — Modifier le mot de passe utilisateur (POST /v1/user/updatePassword) : le PDF source documente cette fonction à deux endroits (authentification et données d'un conducteur) pour le même endpoint.

Liste des autorisations

La liste des autorisations en cours, à venir ou expirées est accessible depuis plusieurs endroits selon le contexte souhaité. Toutes partagent la même forme de réponse (authorizations, avec authorizationId, from, until par autorisation) et la même erreur possible (INTERNAL_ERROR), sauf mention contraire.

Contexte Endpoint Paramètres
Toutes les autorisations en cours, tous véhicules GET /v1/vehicles/authorizations/current
Toutes les autorisations à venir, tous véhicules GET /v1/vehicles/authorizations/scheduled
Toutes les autorisations expirées, tous véhicules GET /v1/vehicles/authorizations/expired
Autorisations en cours pour un véhicule GET /v1/vehicle/{id}/authorizations/current id, offset, limit
Autorisations à venir pour un véhicule GET /v1/vehicle/{id}/authorizations/scheduled id, offset, limit
Autorisations expirées pour un véhicule GET /v1/vehicle/{id}/authorizations/expired id, offset, limit
Autorisations à venir pour un conducteur GET /v1/user/{userid}/authorizations/scheduled userId
Autorisations expirées pour un conducteur GET /v1/user/{userid}/authorizations/expired userId

Les endpoints par véhicule acceptent offset (Number, autorisations à ignorer) et limit (Number, autorisations à retourner) — ajoutés en version 1.8.

x-carmoove-token: <token>

Fonctionnalités spécifiques pour les boîtiers Teltonika

Paramètres de connexion Bluetooth

Fournit les informations requises pour établir une connexion Bluetooth avec le boîtier.

GET /v1/bluetooth-token/params?authorizationId={authorizationId}
x-carmoove-token: <token>

Correction apportée au PDF source

Le PDF documente cet endpoint comme POST /v1/bluetooth-token/params avec authorizationId dans le corps de la requête. Le code source (v1/bluetooth.go) montre que le handler ne traite que la méthode GET, avec authorizationId passé en paramètre de requête. Une route équivalente GET /v1/bluetooth-token/{authorizationId}/params existe aussi dans le routeur mais n'est pas documentée dans le PDF.

Paramètres

Champ Type Description
authorizationId String Identifiant de l'autorisation.

Réponse

Champ Type Description
name String Nom de la connexion Bluetooth.
pin String Code PIN de la connexion.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_AUTHORIZATION, INVALID_DEVICE — voir Erreurs.

Commandes à envoyer

Fournit les commandes à utiliser pour piloter le boîtier.

GET /v1/bluetooth-token/commands?authorizationId={authorizationId}
x-carmoove-token: <token>

Correction apportée au PDF source

Même correction que ci-dessus : le PDF documente POST /v1/bluetooth-token/commands, mais le handler réel (v1/bluetooth.go) ne traite que GET, avec authorizationId en paramètre de requête. Une route équivalente GET /v1/bluetooth-token/{authorizationId}/commands existe aussi mais n'est pas documentée dans le PDF.

Paramètres

Champ Type Description
authorizationId String Identifiant de l'autorisation.

Réponse

Champ Type Description
key String Clé de chiffrement pour les commandes le nécessitant.
immobilize String Commande pour immobiliser le véhicule.
demobilize String Commande pour stopper l'immobilisation du véhicule.
lock String Commande pour fermer le véhicule.
unlock String Commande pour ouvrir le véhicule.
honk String Commande pour faire klaxonner le véhicule.
turningLights String Commande pour faire clignoter les feux.
unlockTrunk String Commande pour déverrouiller le coffre.
openWindows String Commande pour ouvrir les fenêtres. Ajouté en version 1.12.
closeWindows String Commande pour fermer les fenêtres. Ajouté en version 1.12.
encryptImmobilize Boolean true si la commande doit être chiffrée avant l'envoi au boîtier.
encryptDemobilize Boolean Idem, pour demobilize.
encryptLock Boolean Idem, pour lock.
encryptUnlock Boolean Idem, pour unlock.
encryptHonk Boolean Idem, pour honk.
encryptTurningLights Boolean Idem, pour turningLights.
encryptUnlockTrunk Boolean Idem, pour unlockTrunk.
encryptOpenWindows Boolean Idem, pour openWindows. Ajouté en version 1.12.
encryptCloseWindows Boolean Idem, pour closeWindows. Ajouté en version 1.12.
encryptReadio Boolean true si la commande doit être chiffrée avant l'envoi au boîtier. Ajouté en version 1.12.
digitalOutput Object Identifiant du digital output à utiliser pour chacune des commandes (boîtiers Teltonika). Ajouté en version 1.12.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_AUTHORIZATION, INVALID_DEVICE — voir Erreurs.

Fonctionnalités réservations et free-floating

Ajouté en version 1.12/1.13.

Liste des véhicules pour le free-floating

Véhicules disponibles à l'instant T pour du free-floating.

GET /v1/vehicles?searchType=FREE_FLOATING
x-carmoove-token: <token>

Réponse

Même forme que Lister les véhicules (id, builder, model, plate, deviceId, deviceModel, energy, bluetoothName, seats, gearbox, kind, archived, accessories).

Liste des véhicules pour les réservations classiques

Véhicules disponibles pour une réservation sur une période donnée.

GET /v1/vehicles?searchType=BOOKING
x-carmoove-token: <token>

Paramètres

Champ Type Description
from Timestamp Date de début. Obligatoire.
until Timestamp Date de fin. Obligatoire.
energy String Type d'énergie (nomenclature carte grise). Optionnel.
gearbox String Type de boîte de vitesse : MANUAL / AUTOMATIC. Optionnel.
brand String Marque du véhicule. Optionnel.
kind String Type de véhicule (nomenclature carte grise). Optionnel.

Réponse

Même forme que Lister les véhicules.

Réservation d'un véhicule

Réserve un véhicule, en mode free-floating ou réservation classique.

POST /v1/vehicle/{id}/booking
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.
from Timestamp Date de début. Obligatoire, ne doit pas être antérieure à 5 minutes avant la requête.
until Timestamp Date de fin. Optionnelle.
type String Type de réservation : BOOKING ou FREE_FLOATING.
driver String Identifiant du conducteur. Optionnel — si absent, la réservation est enregistrée pour l'utilisateur qui fait la demande.

Réponse

Champ Type Description
booked Boolean Statut de la réservation.
bookingId String Identifiant de la réservation.
from Timestamp Date de début de la réservation.
until Timestamp Date de fin de la réservation.
vehicleId String Identifiant du véhicule.
userId String Identifiant de l'utilisateur.
authorizationId String Identifiant de l'autorisation liée à la réservation.
bookingType String Type de réservation : FREE_FLOATING ou BOOKING.
authorization Object Informations sur l'autorisation : id, token, key.
commands Object Commandes pour les boîtiers Teltonika, voir Commandes à envoyer.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNAUTHORIZED, DRIVER_WITHOUT_ACCOUNT, INVALID_BOOKING_TYPE, INVALID_INTERVAL, NO_DEVICE, VEHICLE_NOT_AVAILABLE, UNKNOWN_VEHICLE — voir Erreurs.

Liste des réservations d'un véhicule

GET /v1/vehicle/{id}/booking
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.

Réponse

Champ Type Description
bookings Array Liste des réservations du véhicule — voir Détail d'une réservation.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE — voir Erreurs.

Détail d'une réservation

GET /v1/booking/{id}
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant de la réservation.

Réponse

Champ Type Description
id String Identifiant de la réservation.
from Timestamp Date de début de la réservation.
until Timestamp Date de fin de la réservation.
vehicleId String Identifiant du véhicule.
authorizationId String Identifiant de l'autorisation liée à la réservation.
userId String Identifiant de l'utilisateur.
bookingType String Type de réservation : FREE_FLOATING ou BOOKING.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

NOT_FOUND — voir Erreurs.

Modification d'une réservation d'un véhicule

PUT /v1/booking/{id}
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant de la réservation.
from Timestamp Date de début de la réservation.
until Timestamp Date de fin de la réservation.

Réponse

Champ Type Description
updated Boolean true si la réservation a bien été mise à jour.
authorizationId String Nouvel identifiant de l'autorisation.
token String Token à utiliser pour la communication Bluetooth avec le boîtier.
key String Clé de session pour la communication Bluetooth avec le boîtier.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

NOT_FOUND, BOOKING_EXPIRED, INVALID_INTERVAL — voir Erreurs.

Suppression d'une réservation d'un véhicule

À utiliser en cas de suppression avant le début de la réservation, ou en cas de problème d'accès en free-floating.

DELETE /v1/booking/{id}
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant de la réservation.

Réponse

Champ Type Description
deleted Boolean true si la réservation a bien été supprimée.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

NOT_FOUND — voir Erreurs.

Arrêt d'une réservation d'un véhicule

À utiliser en cas d'arrêt prématuré de la réservation.

POST /v1/booking/{id}/stop
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant de la réservation.

Réponse

Champ Type Description
stopped Boolean true si la réservation a bien été stoppée.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

NOT_FOUND — voir Erreurs.

Liste des réservations

Liste de toutes les réservations en cours.

GET /v1/bookings
x-carmoove-token: <token>

Réponse

Champ Type Description
bookings Array Liste des réservations — voir Détail d'une réservation.
error String Code d'erreur. Absent en cas de requête réussie.

Fonctionnalités stationnement

Permet de définir l'adresse de stationnement d'un véhicule, utile pour la recherche de véhicules disponibles pour une réservation. Ajouté en version 1.12.

Définition d'un stationnement

POST /v1/parkings
x-carmoove-token: <token>

Paramètres

Champ Type Description
name String Nom du stationnement.
address String Adresse du stationnement.
address2 String Deuxième ligne d'adresse.
zipcode String Code postal.
city String Ville.
country String Pays.

Réponse

Champ Type Description
parking_id String Identifiant du stationnement.
error String Code d'erreur. Absent en cas de requête réussie.

Correction apportée au PDF source

Le PDF documente ce champ de réponse parkingId (camelCase). Le code source (v1/parking.go, struct PostParkingsResponse) montre que le champ JSON réel est parking_id (snake_case).

Erreurs

MISSING_NAME, MISSING_ADDRESS, MISSING_ZIPCODE, MISSING_CITY, MISSING_COUNTRY — voir Erreurs.

Liste des stationnements

GET /v1/parkings
x-carmoove-token: <token>

Réponse

Champ Type Description
parkings Array Liste des stationnements — voir Détail d'un stationnement.
error String Code d'erreur. Absent en cas de requête réussie.

Détail d'un stationnement

GET /v1/parkings/{id}
x-carmoove-token: <token>

Correction apportée au PDF source

Le PDF documente les endpoints par identifiant de stationnement au singulier (/v1/parking/{id}). Le routeur réel (router.go) les enregistre au pluriel : /v1/parkings/{id} (GET, POST, DELETE). Corrigé ici pour les trois endpoints de cette section et les deux suivantes.

Paramètres

Champ Type Description
id String Identifiant du stationnement.

Réponse

Champ Type Description
id String Identifiant du stationnement.
shortId String Identifiant court du stationnement.
name String Nom du stationnement.
address String Adresse du stationnement.
address2 String Deuxième ligne d'adresse du stationnement.
zipcode String Code postal.
city String Ville.
country String Pays.

Erreurs

NOT_FOUND — voir Erreurs.

Modification d'un stationnement

POST /v1/parkings/{id}
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du stationnement.
name String Nom du stationnement.
address String Adresse du stationnement.
address2 String Deuxième ligne d'adresse.
zipcode String Code postal.
city String Ville.
country String Pays.

Réponse

Même forme que Détail d'un stationnement.

Erreurs

NOT_FOUND — voir Erreurs.

Suppression d'un stationnement

DELETE /v1/parkings/{id}
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du stationnement.

Réponse

Champ Type Description
deleted Boolean true si le stationnement a bien été supprimé.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

NOT_FOUND — voir Erreurs.

Affectation d'un stationnement à un véhicule

POST /v1/vehicle/{id}/parking
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.
parkingId String Identifiant du stationnement.

Réponse

Champ Type Description
updated Boolean true si la mise à jour a bien été enregistrée.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

MISSING_PARKING, UNKNOWN_VEHICLE — voir Erreurs.

Récupération du stationnement d'un véhicule

GET /v1/vehicle/{id}/parking
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.

Réponse

Même forme que Détail d'un stationnement.

Erreurs

NO_PARKING, UNKNOWN_VEHICLE — voir Erreurs.

Désaffectation d'un stationnement à un véhicule

DELETE /v1/vehicle/{id}/parking
x-carmoove-token: <token>

Paramètres

Champ Type Description
id String Identifiant du véhicule.

Réponse

Champ Type Description
deleted Boolean true si la suppression a bien été prise en compte.
error String Code d'erreur. Absent en cas de requête réussie.

Erreurs

UNKNOWN_VEHICLE — voir Erreurs.

Données SIV

Ajouté en version 1.13.

Récupération des données SIV d'un véhicule

GET /v1/vehicle/{id}/siv
x-carmoove-token: <token>

Note

Le PDF source imprime cette route sans le / séparateur (GET /v1/vehicle/{id}siv) ; il s'agit d'une coquille de mise en page, corrigée ici. Le routeur réel confirme /v1/vehicle/{id}/siv.

Paramètres

Champ Type Description
id String Identifiant du véhicule.

Réponse

Champ Type Description
certificate Object Données contenues dans la carte grise.
additional_information Object Données complémentaires.
fluids Object Données concernant les fluides.
electric Object Données concernant les véhicules électriques.
tires Array Données concernant les montes de pneus.
error String Code d'erreur. Peut être manquant en cas de requête réussie.

Sauf mention contraire, tous les champs peuvent être vides (String) ou à 0 (Number) en cas de manque d'information. Le contenu de ces objets est identique à celui de l'API Static Data, qui expose les mêmes données SIV.

Objet certificate

Nom du champ Type Description Champ carte grise
plate String Immatriculation du véhicule A
first_registration String Date de première immatriculation B
brand String Marque du véhicule D.1
type_variant_version String Type, version ou variante du modèle de voiture D.2
cnit String Code national d'identification du type D.2.1
model String Dénomination commerciale D.3
VIN String N° d'identification du véhicule / VIN E
mass_f1 Number Masse en charge maximale techniquement admissible F.1
mass_f2 Number Masse en charge maximale techniquement admissible, sauf pour les motocycles (en kg) F.2
mass_f3 Number Masse en charge maximale admissible de l'ensemble en service dans l'État membre d'immatriculation (en kg) F.3
mass_g Number Masse du véhicule en service avec carrosserie et dispositif d'attelage en cas de véhicule tracteur de catégorie autre que M1 (en kg) G
unload_weight Number Poids à vide national G.1
category String Catégorie du véhicule J
national_type String Genre national J.1
national_bodywork String Carrosserie - désignation nationale J.3
reception_number String N° de réception par type K
Displacement Number Cylindrée en cm3 P.1
max_net_power Number Puissance nette maximale (en kW) P.2
energy String Type de carburant ou source d'énergie P.3
administrative_power Number Puissance administrative nationale P.6
power_mass_ratio Number Rapport puissance/masse en kW/kg (uniquement pour les motocycles) Q
seats Number Nombre de places assises, y compris celle du conducteur S.1
standing_places Number Nombre de places debout S.2
sound_level Number Niveau sonore à l'arrêt (en dB [A]) U.1
engine_speed Number Vitesse du moteur (en min-1) U.2
co2 Number CO2 (en g/km) V.7
environmental_class String Indication de la classe environnementale de réception CE V.9
certificate_date String Date du certificat d'immatriculation I

Objet additional_information

Nom du champ Type Description
color String Couleur du véhicule
model String Nom du modèle
generation String Génération du modèle
additional_model String Donnée complémentaire sur le nom du modèle
full_version String Version complète
version String Version
cylinders_in_liters Number Cylindrées (en litres)
injection_label String Injection
injection_type String Type d'injection
valves Number Nombre de valves
horsepower Number Puissance (en chevaux)
bodywork String Carrosserie
commercial_start_date String Date de début de commercialisation
commercial_end_date String Date de fin de commercialisation
phase String Phase de commercialisation
doors Number Nombre de portes
engine_code String Code moteur
transmission_type String Type de transmission
euro_standard String Standard Euro
particulate_filter Bool Présence d'un filtre à particules
adblue Bool Adblue
gearbox_code String Code boite de vitesse
gearbox_type String Type de boite de vitesse
gears Number Nombre de rapports de vitesse
crit_air String Vignette Crit'Air (en France uniquement)
urban_co2 Number CO2 en mode urbain (en g/km)
extra_urban_co2 Number CO2 en mode extra-urbain (en g/km)
urban_fuel_consumption Number Consommation urbaine
extra_urban_fuel_consumption Number Consommation extra-urbaine
combined_fuel_consumption Number Consommation combinée
starter_battery_power Number Puissance de la batterie de démarrage
starter_battery_capacity Number Capacité de la batterie de démarrage
rear_braking_system String Système de freinage arrière
rear_trunk_capacity Number Capacité du coffre arrière (en litres)
extended_rear_trunk_capacity Number Capacité étendue du coffre arrière (en litres)
max_length Number Longueur maximale
combined_horse_power Number Puissance combinée
wheel_drive String Roues motrices
front_axle_type String Type de suspensions avant
rear_axle_type String Type de suspensions arrières

Objet fluids

Nom du champ Type Description
fuel_tank_capacity Number Capacité du réservoir de carburant
engine_oil_standard String Norme d'huile moteur
engine_oil_acea String Norme ACEA
engine_oil_viscosity String Viscosité de l'huile moteur
engine_oil_with_filter_capacity_min Number Capacité minimale d'huile moteur
engine_oil_with_filter_capacity_max Number Capacité maximale d'huile moteur
brake_fluid_capacity Number Capacité de liquide de frein
brake_fluid_standard String Norme de liquide de frein
engine_coolant_capacity_min Number Capacité minimale de liquide de refroidissement
engine_coolant_capacity_max Number Capacité maximale de liquide de refroidissement
engine_coolant_type String Type de liquide de refroidissement
air_conditioning_gas_capacity_min Number Capacité minimale de gaz d'air conditionné
air_conditioning_gas_capacity_max Number Capacité maximale de gaz d'air conditionné
air_conditioning_gas_standard String Norme de gaz d'air conditionné
power_steering_fluid_capacity Number Capacité de liquide de direction assistée
power_steering_fluid_standard String Norme de liquide de direction assistée

Objet electric

Nom du champ Type Description
front_engine_type String Type de moteur avant
front_engine_kw_power Number Puissance du moteur avant (en kW)
front_engine_horsepower Number Puissance du moteur avant (en chevaux)
1st_rear_engine_type String Type du 1er moteur arrière
1st_rear_engine_kw_power Number Puissance du 1er moteur arrière (en kW)
1st_rear_engine_horsepower Number Puissance du 1er moteur arrière (en chevaux)
2nd_rear_engine_type String Type du 2nd moteur arrière
2nd_rear_engine_kw_power Number Puissance du 2nd moteur arrière (en kW)
2nd_rear_engine_horsepower Number Puissance du 2nd moteur arrière (en chevaux)
combined_kw_power Number Puissance combinée
engine_cooling_type String Type de refroidissement moteur
front_engine_nm_torque Number Couple du moteur avant
1st_rear_engine_nm_torque Number Couple du 1er moteur arrière
2nd_rear_engine_nm_torque Number Couple du 2nd moteur arrière
combined_nm_torque Number Couple combiné
battery_weight Number Poids de la batterie
battery_layout String Position de la batterie
battery_type String Type de batterie
battery_voltage Number Voltage de la batterie
battery_kw_power Number Puissance de la batterie
1st_battery_kwh_capacity Number Capacité de la 1ère batterie
usable_1st_battery_kwh_capacity Number Capacité utile de la 1ère batterie
2nd_battery_kwh_capacity Number Capacité de la 2nde batterie
usable_2nd_battery_kwh_capacity Number Capacité utile de la 2nde batterie
charging_plug String Prise de recharge
dc_charger_power_kw Number Puissance du chargeur DC
dc_charging_time_min Number Temps minimum de recharge DC
ac_charger_power_kw Number Puissance du chargeur AC
ac_charging_time_80_home_min Number Temps de recharge à 80 % (en minutes)
ac_charging_time_80_home_reinforced_min Number Temps de recharge renforcée à 80 % (en minutes)
ac_charging_time_80_wallbox_min Number Temps de recharge à une borne à 80 % (en minutes)
acceleration_0_100 Number Temps de 0 à 100 km/h
max_speed Number Vitesse maximale
wltp_combined_autonomy_summer Number Autonomie en été (conduite mixte)
wltp_combined_autonomy_winter Number Autonomie en hiver (conduite mixte)
wltp_urban_autonomy_summer Number Autonomie en été (conduite urbaine)
wltp_urban_autonomy_winter Number Autonomie en hiver (conduite urbaine)
wltp_highway_autonomy_summer Number Autonomie en été (conduite sur autoroute)
wltp_highway_autonomy_winter Number Autonomie en hiver (conduite sur autoroute)
combined_consumption_kwh_100km_summer Number Consommation aux 100 km en été (conduite mixte)
combined_consumption_kwh_100km_winter Number Consommation aux 100 km en hiver (conduite mixte)
urban_consumption_kwh_100km_summer Number Consommation aux 100 km en été (conduite urbaine)
urban_consumption_kwh_100km_winter Number Consommation aux 100 km en hiver (conduite urbaine)
highway_consumption_kwh_100km_summer Number Consommation aux 100 km en été (conduite sur autoroute)
highway_consumption_kwh_100km_winter Number Consommation aux 100 km en hiver (conduite sur autoroute)

Objet tires

Cet objet (Array) contient des données concernant les montes de pneus. Chaque élément documente les pneus avant et arrière.

Nom du champ Type Description
front_display String Référence pneu avant
front_width Number Largeur du pneu avant
front_ratio Number Rapport hauteur/largeur du pneu avant
front_radial Number Diamètre de la jante du pneu avant
front_load Number Indice de charge du pneu avant
front_speed String Indice de vitesse du pneu avant
front_normal_pressure Number Pression recommandée du pneu avant
front_highway_pressure Number Pression sur autoroute recommandée du pneu avant
front_is_summer Bool Pneu avant été
front_is_winter Bool Pneu avant hiver
front_is_all_season Bool Pneu avant 4 saisons
rear_display String Référence pneu arrière
rear_width Number Largeur du pneu arrière
rear_ratio Number Rapport hauteur/largeur du pneu arrière
rear_radial Number Diamètre de la jante du pneu arrière
rear_load Number Indice de charge du pneu arrière
rear_speed String Indice de vitesse du pneu arrière
rear_normal_pressure Number Pression recommandée du pneu arrière
rear_highway_pressure Number Pression sur autoroute recommandée du pneu arrière
rear_is_summer Bool Pneu arrière été
rear_is_winter Bool Pneu arrière hiver
rear_is_all_season Bool Pneu arrière 4 saisons