Runs & results - DQE One Standalone API
Suivez l'exécution d'un process démarré avec runProcess,
puis récupérez son résultat.
{DOMAIN} est le nom d'hôte de votre propre
serveur DQE One Standalone — il est auto-hébergé, cette valeur
dépend donc de votre déploiement. {EMAIL}
est votre identifiant de connexion DQE One et
{API_TOKEN} le token généré dans
My Account > API Token .
Obtenir le statut d'un run - DQE One Standalone API
Renvoie un run, ou la liste de vos runs. Interrogez-le régulièrement
après runProcess jusqu'à ce que le statut soit
Finished ou Failed.
getRuns
⬇ Télécharger la spec OpenAPI 1.0.0 (JSON) — cet endpoint uniquement ⬇ Télécharger la référence IA/LLM (.md)
Requête
Envoyez une requête GET. Passez id
pour un seul run ; sinon vous obtenez un tableau de
tous vos runs (sans pagination).
Filtres : processId restreint
la liste à un seul process ; kind filtre par
kind de process mais est
ignoré lorsque processId est présent
(ils ne se combinent pas). count est le nombre
de lignes du fichier de sortie, et non le nombre d'enregistrements
traités. Aucun pourcentage de progression ni métrique détaillée
n'est exposé ici ; consultez les détails dans l'interface
web.
GET https://{DOMAIN}/api/Run/get?id={id} &processId={processId} &kind={kind}
Exemples de code
Obtenir le statut d'un run
cURL JavaScript Python PHP Node.js Java C# Go
curl -u "{EMAIL}:{API_TOKEN}" \
"https://{DOMAIN}/api/Run/get?id=101"
fetch("https://{DOMAIN}/api/Run/get?id=101", {
method: "GET",
headers: {
"Authorization": "Basic " + btoa("{EMAIL}:{API_TOKEN}")
}
})
.then(r => r.text())
.then(data => console.log(data));
import requests
response = requests.get(
"https://{DOMAIN}/api/Run/get",
auth=("{EMAIL}", "{API_TOKEN}"),
params={"id": "101"},
)
print(response.status_code, response.text)
<?php
$ch = curl_init("https://{DOMAIN}/api/Run/get?id=101");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_USERPWD, "{EMAIL}:{API_TOKEN}");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status . " " . $response;
const axios = require('axios');
axios({
method: "get",
url: "https://{DOMAIN}/api/Run/get",
auth: { username: "{EMAIL}", password: "{API_TOKEN}"
},
params: { "id": "101" }
})
.then(res => console.log(res.status, res.data))
.catch(err => console.log(err.response ? err.response.status
: err.message, err.response && err.response.data));
import java.net.URI;
import java.net.http.*;
import java.util.Base64;
String auth = Base64.getEncoder().encodeToString("{EMAIL}:{API_TOKEN}".getBytes());
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://{DOMAIN}/api/Run/get?id=101"))
.header("Authorization", "Basic " + auth)
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient().send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode() + " " +
response.body());
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization = new
AuthenticationHeaderValue(
"Basic", Convert.ToBase64String(Encoding.UTF8.GetBytes("{EMAIL}:{API_TOKEN}")));
using var request = new HttpRequestMessage(HttpMethod.Get,
"https://{DOMAIN}/api/Run/get?id=101");
var response = await client.SendAsync(request);
Console.WriteLine((int)response.StatusCode + " "
+ await response.Content.ReadAsStringAsync());
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://{DOMAIN}/api/Run/get?id=101",
nil)
req.SetBasicAuth("{EMAIL}", "{API_TOKEN}")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
out, _ := io.ReadAll(resp.Body)
fmt.Println(resp.StatusCode, string(out))
}
Paramètres
Champ
Description
Type
Obl / Opt
id
Id du run (renvoie un seul objet).
Integer
Optionnel
processId
Filtrer par process.
Integer
Optionnel
kind
Filtrer par kind de process (ignoré lorsque processId
est renseigné).
String
Optionnel
Authentification : HTTP Basic — votre email
DQE One et votre API token (My Account > API Token ).
Consultez l'article Introduction.
Réponse
Un run (avec id) ou un tableau de runs. Statut HTTP
200 .
Clé
Description
Type
id
Integer
processId
Integer
type
String
startedOn
String
updatedOn
String
status
Texte libre. Valeurs observées : Started, Creating
DQE Fields, Reading, In Progress, Writing, Finished,
Failed.
String
outputFile
String
count
Lignes du fichier de sortie.
Integer
error
String
Valeurs de statut
status est un texte libre ; ces valeurs sont
produites actuellement.
status
Signification
Started
Le run est en file d'attente ou vient de démarrer.
Creating DQE Fields
Premier run sur une source CRM/base de données
: DQE One ajoute ses champs de résultat (voir
Field Reference in DQE One Standalone ).
Reading
Lecture des enregistrements depuis la source.
In Progress
Traitement en cours.
Writing
Écriture des résultats.
Finished
Terminé. outputFile et count
sont renseignés.
Failed
Arrêté avec une erreur ; voir error.
Schéma d'interrogation régulière
run_id=$(curl -s -u "$EMAIL:$TOKEN" "https://$DOMAIN/api/Process/run?id=42"
| jq -r .run_id)
while true; do
status=$(curl -s -u "$EMAIL:$TOKEN" "https://$DOMAIN/api/Run/get?id=$run_id"
| jq -r .status)
echo "$status"; [ "$status" = "Finished" ] || [ "$status"
= "Failed" ] && break
sleep 5
done
curl -u "$EMAIL:$TOKEN" -OJ "https://$DOMAIN/api/File/get?processId=42"
Les jobs s'exécutent un par un pour chaque utilisateur :
un run peut donc rester à Started pendant qu'un
job précédent se termine. Téléchargez le résultat avec
Files → Download a process result .
Exemple de réponse
Exemple de réponse
{
"id" : 101,
"processId" : 42,
"type" :
"check_email" ,
"startedOn" :
"2026-11-10T09:00:00Z" ,
"updatedOn" :
"2026-11-10T09:01:12Z" ,
"status" :
"Finished" ,
"outputFile" :
"out.csv" ,
"count" : 1500,
"error" : null
}
Erreurs
HTTP
Corps / signification
401
Unauthorized
404
Run not found
Tester l'API
Cliquez sur le bouton ci-dessous pour tester cet endpoint
en direct dans votre navigateur.
À savoir : cette console envoie une
vraie requête à votre propre serveur depuis
votre navigateur, avec votre véritable API token.
Ouvrir la console