L'API DQE One Standalone vous permet de piloter à distance votre serveur DQE One Standalone auto-hébergé : téléverser des fichiers, connecter des sources de données, créer et lancer des processes de qualité de données, suivre leurs runs et gérer des RuleSets — tout ce que vous pouvez faire dans l'interface web, pour automatiser les traitements par lots.
Authentification
Chaque endpoint utilise l'authentification HTTP Basic
: votre email DQE One comme nom d'utilisateur
et votre API token comme mot de passe (Authorization: Basic base64(email:api_token)
; avec curl, -u "email:token"). Aucune session,
aucun token Bearer ni OAuth n'est accepté sur ces routes.
- Connectez-vous à l'interface web de votre DQE One Standalone.
- Ouvrez My Account puis la section API Token, et générez le token.
- Utilisez-le comme mot de passe Basic. Le régénérer invalide le précédent.
Conventions
| Sujet | Comportement |
|---|---|
| URL de base |
https://{DOMAIN}/api/... — DQE One
Standalone est auto-hébergé,
{DOMAIN} est donc votre propre serveur.
|
| Cloisonnement | Tout est limité à l'utilisateur authentifié. L'id d'un autre utilisateur renvoie 404, jamais 403. |
| Succès |
{"status":"success", ...}. Les listes
sont des tableaux JSON bruts.
Les endpoints de création répondent 201,
y compris updateProcess.
|
| Erreurs |
{"status":"error","error":"<message>"}
en anglais. Les exceptions sont signalées sur
chaque endpoint (par exemple runProcess
utilise message, et l'import de
RuleSet renvoie error sous forme
de liste).
|
| 401 |
{"status":"error","error":"Unauthorized"}
pour un credential manquant, incorrect ou inconnu.
Un en-tête mal formé (non base64, ou
sans :) peut produire à la place
une erreur 500 non formatée.
|
| Méthodes |
Une méthode incorrecte renvoie 405.
runProcess et deleteProcess sont des requêtes GET qui modifient des données.
|
| Traitement asynchrone |
runProcess ne fait que mettre le
run en file d'attente. Interrogez getRuns
régulièrement. Les jobs s'exécutent un par un
pour chaque utilisateur.
|
| Erreur 500 non formatée |
Quelques entrées (un id non numérique,
un process qui n'a jamais été exécuté) provoquent
une erreur serveur brute au lieu d'un JSON. Validez
les ids de votre côté.
|
| Limites | Pas de limitation de débit, pas de pagination, pas de limite explicite de taille de téléversement, les tokens n'expirent jamais. CORS est ouvert à toute origine (l'autorité provient de l'en-tête Authorization). |
| Documentation interactive |
Votre serveur sert également ReDoc sur /doc/
et Swagger UI sur /doc/swagger/.
Ils ne sont pas entièrement exacts
(noms de clés, codes de statut, réponses tableau
ou objet) : privilégiez cette documentation et
le fichier OpenAPI ci-dessus.
|
Carte de l'API
| Article | Endpoints |
|---|---|
| Files |
addFile, listFiles,
getProcessResult, deleteFile
|
| Credentials |
createCredential, listCredentials,
getCredential, deleteCredential
|
| Processes |
createProcess, updateProcess,
listProcesses, getProcess,
runProcess, deleteProcess
|
| Runs & results |
getRuns
|
| RuleSets |
listRulesets, getRuleset,
exportRulesets, importRuleset
|
| MCP server |
Les mêmes opérations pour les assistants IA (Claude
et autres clients MCP) : JSON-RPC sur /mcp.
|
Vous cherchez la recherche de doublons en temps réel ? C'est une API distincte : Use the Lookup API in DQE One Standalone.
Exemple de bout en bout
Ce flux complet ne nécessite qu'un fichier CSV. Pour une
source de type base de données ou CRM, créez d'abord un credential
(Credentials)
et utilisez "source":"postgres",
"object":"<table>",
"credential":<id> à la place de file.
L'ordre du nettoyage est important : supprimez
d'abord le process (une fois son run Finished
ou Failed), puis le credential, puis le fichier
; chacun est refusé avec 423 tant que quelque
chose l'utilise encore.
Limitations connues
-
Les processes
find_and_replace,formatetauditne peuvent pas être créés de façon fiable via l'API, et les processes Snowflake échouent toujours à la validation : utilisez l'interface web pour ceux-ci. -
updateProcessne peut pas remettre un booléen àfalseet réinitialise les champs que vous n'envoyez pas. -
Il n'existe aucun endpoint pour annuler un run, et
getProcessResultne renvoie que la clé et les colonnes synchronisées. - Les credentials Dynamics et Snowflake nécessitent une connexion via navigateur pour être finalisés.
Ces points décrivent le comportement actuel du produit, et non des évolutions prévues.
Voir aussi
Associé à