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.

1

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

2

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.

3

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.

4

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

5

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.

6

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 :

  1. Télécharge le binaire du document depuis DocuWare via l'API de la plateforme
  2. 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})
  3. Téléverse le fichier vers Azure Blob Storage avec la clé résolue
  4. Écrit éventuellement un fichier de métadonnées .json associé contenant tous les champs d'index DocuWare
  5. 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.