Aller au contenu

Lancer un job

Déclenche un job sur un ou plusieurs devices. Une exécution est créée par device puis envoyée à celui‑ci.


Endpoint

POST /job/api/jobs/execute
Exigence Valeur
En‑tête X-API-Key: <votre clé>
En‑tête Content-Type: application/json
Scope TRIGGER

Corps de la requête

{
  "jobName": "qos-sms-test",
  "deviceIds": ["device-42", "device-43"]
}
Champ Type Requis Description
jobName String Oui Nom d'un de vos jobs
deviceIds String[] Oui Un ou plusieurs de vos identifiants de device

Le job et les devices doivent appartenir au propriétaire de la clé — sinon ils ne sont pas trouvés dans votre périmètre et l'appel échoue.


Exemple

curl -X POST https://<votre-backend-job>/job/api/jobs/execute \
  -H "X-API-Key: amk_live_3f2a8b1c9d2e4f5a6b7c8d9e" \
  -H "Content-Type: application/json" \
  -d '{
        "jobName": "qos-sms-test",
        "deviceIds": ["device-42"]
      }'

Réponse — 201 Created

Une liste des exécutions créées (une par device) :

[
  {
    "jobExecutionId": 1287,
    "jobName": "qos-sms-test",
    "deviceId": "device-42",
    "deviceName": "Samsung A12",
    "execState": "PENDING",
    "launchedAt": "2026-06-27T14:32:10"
  }
]
Champ Type Description
jobExecutionId Long ID unique de l'exécution — sert à suivre son état
jobName String Le job lancé
deviceId String ID du device cible
deviceName String Nom du device cible
execState String État initial (PENDING)
launchedAt DateTime Date de création de l'exécution

Gardez le jobExecutionId — il est nécessaire pour consulter l'état de l'exécution ensuite.


Erreurs

Statut code message Cause
400 J-500 Validation error jobName manquant ou deviceIds vide
403 J-802 Invalid API key Clé absente / inconnue / révoquée
403 J-803 API key is expired La date d'expiration de la clé est passée
403 J-804 API key does not have the required permission La clé n'a pas le scope TRIGGER
404 J-301 Job not found Le nom de job ne vous appartient pas
404 J-001 Device not found Un identifiant de device ne vous appartient pas

Exemple de corps d'erreur :

{
  "code": "J-804",
  "message": "API key does not have the required permission: TRIGGER",
  "status": 403
}