Introduction

Support DQE
Support DQE
  • Mise à jour
Introduction - DQE One Standalone API

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.

{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.
Hors périmètre : l'API de recherche de doublons en temps réel (Use the Lookup API in DQE One Standalone) et le serveur MCP pour les assistants IA (DQE One Standalone — MCP server).

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.

  1. Connectez-vous à l'interface web de votre DQE One Standalone.
  2. Ouvrez My Account puis la section API Token, et générez le token.
  3. Utilisez-le comme mot de passe Basic. Le régénérer invalide le précédent.
Traitez le token comme un mot de passe. Il n'expire jamais, n'a aucun scope et donne un accès complet à tout ce que possède votre compte (fichiers, métadonnées des credentials, processes, RuleSets). Ne le versionnez pas et ne le laissez pas apparaître dans les logs. Consultez Manage your profile in DQE One Standalone pour savoir comment le renouveler.

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.

export DOMAIN=standalone.example.com EMAIL=you@example.com TOKEN=your_api_token # 1. Upload a file (headers: unique, no spaces) curl -u "$EMAIL:$TOKEN" -F "file=@contacts.csv" https://$DOMAIN/api/File/add # - 201 {"status":"success","id":12} # 2. Create a Check Email process on it curl -u "$EMAIL:$TOKEN" -H "Content-Type: application/json" \ -d '{"name":"Email check","kind":"check_email","source":"csv","file":12,"primaryKey":"Id","fields":{"FieldLabel":"Email"}}' \ https://$DOMAIN/api/Process/create # - 201 {"status":"success","id":42} # 3. Run it (asynchronous) curl -u "$EMAIL:$TOKEN" "https://$DOMAIN/api/Process/run?id=42" # - 200 {"status":"success","message":"Process Enqueue","run_id":"101"} # 4. Poll until status is Finished or Failed curl -u "$EMAIL:$TOKEN" "https://$DOMAIN/api/Run/get?id=101" # 5. Download the result (primary key + synchronised columns) curl -u "$EMAIL:$TOKEN" -OJ "https://$DOMAIN/api/File/get?processId=42"

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, format et audit ne 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.
  • updateProcess ne peut pas remettre un booléen à false et réinitialise les champs que vous n'envoyez pas.
  • Il n'existe aucun endpoint pour annuler un run, et getProcessResult ne 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é à

Cet article vous a-t-il été utile ?

Utilisateurs qui ont trouvé cela utile : 0 sur 0