Comment fonctionne dwXport — Plongée technique
Un regard en coulisses sur l'architecture, le pipeline d'exportation, le modèle de sécurité et l'infrastructure de dwXport.
For the technically curious — here's exactly what happens when you run an export.
The Export Pipeline
Six stages from configuration to download — every step isolated, encrypted, and ephemeral.
Create Export
An isolated Azure Blob Storage container is provisioned in a dedicated Azure tenant. The storage credentials are uniquely generated and bound to your export job.
Azure Switzerland North
Connect DocuWare
Enter your DocuWare credentials. We validate the connection using our dedicated implementation of the DocuWare REST API, covering all available endpoints.
codebar/laravel-docuware · Custom REST interface? Let's connect.
Validate & Preview
Your configuration is sent to an isolated Microsoft Azure Container Instance — a fresh virtual machine spun up exclusively for this job. Nothing is shared between exports.
Encrypted Handoff
DocuWare credentials and Azure Blob Storage configuration are passed as an AES-256-CBC encrypted payload into the isolated container instance. Secrets never touch disk unencrypted.
AES-256-CBC
Stream & Export
Documents are streamed directly from your DocuWare instance to Azure Blob Storage based on your export configuration. No intermediate storage — files never land on our servers.
Monitor & Download
Your dashboard polls for real-time status updates. Once the job completes, a dedicated download link is provided — valid for 48 hours before the storage instance is completely destroyed.
48h download window
Security & Privacy by Design
Every architectural decision prioritises your data privacy. Here's what that means in practice.
Zero-Retention Policy
No backups are made — ever. Your export data exists only for the duration of the job and the 48-hour download window. After that, it's gone.
Credentials Destroyed
Sensitive data such as DocuWare credentials and storage keys are purged immediately after the export job completes. Nothing persists.
Ephemeral Storage
The entire Azure Blob Storage instance is deleted after the download window expires. There is no recovery, no archive, no trace.
Fully Isolated Execution
Each export runs in its own Azure Container Instance with encrypted payloads, dedicated storage, and HTTPS everywhere. No export ever shares infrastructure with another.
Under the Hood
For those who want the full technical picture — rate limiting, DocuWare compatibility, and more.
Le pipeline d'exportation
Chaque exportation passe par trois phases séquentielles, chacune exécutée au sein de l'instance Azure Container isolée :
Phase 1 : Validation
Le système s'authentifie auprès de votre instance DocuWare et vérifie que les identifiants fournis, l'ID de l'armoire et le dialogue de recherche sont valides. Si quelque chose est mal configuré — URL incorrecte, identifiants expirés, armoire inaccessible — l'exportation échoue immédiatement avec un message d'erreur clair avant tout transfert de données.
Phase 2 : Prétraitement
Via l'API de la plateforme DocuWare, dwXport interroge l'armoire sélectionnée à travers le dialogue de recherche configuré. Il applique tous les filtres que vous avez définis (plages de dates, conditions de champs d'index) et compte le nombre total de documents correspondants. Ce nombre est utilisé pour calculer les pourcentages de progression pendant l'exportation.
Phase 3 : Exportation
Les documents sont récupérés par lots configurables (par défaut : 100 documents par lot) et transmis directement vers votre Azure Blob Storage. Pour chaque document, le système :
- Télécharge le binaire du document depuis DocuWare via l'API de la plateforme
- Résout le chemin de destination en utilisant votre structure de dossiers et votre modèle de nom de fichier (ex.
{YEAR}/{DEPARTMENT}/{DWDOCID}.{DWEXTENSION}) - Téléverse le fichier vers Azure Blob Storage avec la clé résolue
- Écrit éventuellement un fichier de métadonnées
.jsonassocié contenant tous les champs d'index DocuWare - Met à jour l'état de progression avec les compteurs actuels et les totaux d'octets
Limitation de débit et throttling
Pour protéger votre instance DocuWare d'une charge excessive, dwXport applique des limites de débit configurables :
| Paramètre | Par défaut | Description |
|---|---|---|
| Requêtes par seconde | 10 | Maximum d'appels API par seconde |
| Taille du lot | 100 | Documents traités par lot |
| Pause entre les lots | 1 000 ms | Période de refroidissement entre les lots |
Ces valeurs par défaut sont conservatrices. Pour les instances DocuWare Cloud, nous recommandons de conserver les valeurs par défaut. Les installations On-Premise avec des ressources dédiées peuvent augmenter ces valeurs en toute sécurité.
Sur la base de ces limites de débit, les vitesses d'exportation typiques varient entre 0,7 et 1,2 secondes par document, selon la taille des documents et les conditions réseau.
Progression en temps réel
Pendant une exportation, le tableau de bord affiche la progression en direct :
- Total des documents correspondants
- Documents traités et échoués
- Octets transférés
- Temps estimé de fin
Une fois terminé, dwXport génère un rapport HTML détaillé avec un résumé de l'exportation, un listing par document et les détails des erreurs pour tout document échoué.
Compatibilité DocuWare
dwXport fonctionne avec DocuWare Cloud et les installations On-Premise. Le système communique exclusivement via l'API REST de la plateforme DocuWare, aucun plugin spécial ni modification côté serveur n'est nécessaire.
Tous les types de documents stockés dans DocuWare sont pris en charge — PDF, images, documents Office et tout autre format de fichier. Les documents sont exportés dans leur format d'origine avec l'ensemble de leurs métadonnées (tous les champs d'index).
Questions? Let's Talk.
Whether you need a custom integration or just want to understand the architecture better — we're here to help.