> For the complete documentation index, see [llms.txt](https://documentation.efalia.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.efalia.com/documentations/multigest/installation/webservices-introduction.md).

# Webservices — Introduction

Les webservices Multigest permettent l'intégration de la GED avec des applications métier tierces (ERP, CRM, logiciels de facturation…), en donnant à ces applications un accès direct aux documents stockés dans Multigest.

***

## Introduction

### Principe

Les webservices établissent un **lien d'interconnexion** entre Multigest et les logiciels métier. Concrètement, un utilisateur peut accéder aux documents liés à un objet métier (facture, client, commande…) **directement depuis son interface habituelle**, sans ouvrir Multigest.

**Exemple :** Les images de factures sont archivées dans Multigest avec les données d'index (numéro de facture, client…). Le logiciel de comptabilité appelle le webservice pour afficher la facture correspondant à l'écriture en cours de traitement.

### Architecture

Les webservices Multigest utilisent le protocole **SOAP** (Simple Object Access Protocol). Ils exposent un ensemble de fonctions organisées par catégorie :

| Catégorie                    | Description                                         |
| ---------------------------- | --------------------------------------------------- |
| **Fonctions générales**      | Authentification, gestion de session                |
| **Accès SSO**                | Connexion transparente pour les utilisateurs        |
| **Gestion des dossiers GED** | Création, modification, suppression de dossiers     |
| **Gestion des documents**    | Import, export, consultation de documents           |
| **Gestion des mails**        | Intégration messagerie                              |
| **Gestion des bannettes**    | Accès aux bannettes depuis des applications tierces |
| **Transfert inter-armoire**  | Déplacement de documents entre armoires             |
| **Service E-parapheur**      | Intégration du circuit de signature électronique    |

### Activation

Les webservices doivent être activés dans `webserveur.ini`. Vérifiez avec votre administrateur Efalia que le module est correctement configuré dans votre installation.

***

## Prérequis

Avant de mettre en place une interconnexion via les webservices Multigest, trois conditions fondamentales doivent être réunies.

### Clé Unique d'Identification

Une **clé unique** doit exister dans les deux systèmes (application métier et GED) pour permettre la mise en correspondance des enregistrements.

| Aspect            | Description                                                  |
| ----------------- | ------------------------------------------------------------ |
| **Exemple**       | Numéro de facture, identifiant client, référence commande    |
| **Clé composite** | Combinaison de plusieurs champs possible                     |
| **Unicité**       | Le système vérifie l'absence de doublons lors des recherches |

### Réplication des Données

Les données d'index de l'armoire GED constituent une **réplication partielle ou complète** des données de l'application métier centrale.

* L'application métier est la source de référence
* L'armoire GED stocke les index permettant de retrouver les documents
* La cohérence entre les deux systèmes est sous la responsabilité de l'intégrateur

### Règles d'Habilitation

Les droits d'accès aux documents doivent être **équivalents** dans les deux systèmes :

* Un utilisateur n'ayant pas accès à un dossier dans Multigest ne doit pas y accéder via le webservice
* Les droits Multigest (armoire, dossier, document) s'appliquent aussi lors des appels API
* Le compte utilisateur passé lors de chaque appel API détermine les droits effectifs

{% hint style="warning" %}
L'application métier doit implémenter ses propres contrôles d'accès équivalents à ceux définis dans Multigest. Un appel API avec un compte à droits étendus ne doit être utilisé que pour les opérations système, jamais pour des accès utilisateur finaux.
{% endhint %}

### Paramètres Globaux Requis pour Chaque Appel

| Paramètre                     | Description                                                         |
| ----------------------------- | ------------------------------------------------------------------- |
| **Nom physique de l'armoire** | Identifiant interne de l'armoire Multigest (pas le libellé affiché) |
| **Login utilisateur**         | Compte Multigest au nom duquel l'action est effectuée               |
| **Clé unique partagée**       | Valeur identifiant le dossier ou document cible                     |

***

## Fonctionnement

### Opérations Disponibles

Les fonctions API permettent à une application métier de :

| Opération               | Description                                                                                            |
| ----------------------- | ------------------------------------------------------------------------------------------------------ |
| **Consultation**        | Générer une URL d'accès à un dossier GED — l'utilisateur est redirigé vers la vue Multigest du dossier |
| **Création de dossier** | Créer un dossier GED directement depuis le logiciel métier                                             |
| **Import de document**  | Déposer un document dans un dossier GED                                                                |
| **Recherche**           | Interroger l'armoire selon des critères d'index                                                        |
| **Téléchargement**      | Récupérer un document depuis la GED                                                                    |

{% hint style="info" %}
L'API webservice ne permet **pas** l'administration des utilisateurs ni la gestion des armoires. Ces opérations restent réservées à l'interface d'administration Multigest.
{% endhint %}

### Paramètres Globaux

Chaque appel API nécessite systématiquement :

| Paramètre      | Description                                                                         |
| -------------- | ----------------------------------------------------------------------------------- |
| **Armoire**    | Nom physique de l'armoire Multigest (identifiant interne)                           |
| **User**       | Login de l'utilisateur Multigest au nom duquel l'opération est effectuée            |
| **Clé unique** | Valeur permettant d'identifier le dossier cible (passée via `GedAddChampRecherche`) |

### Flux d'un Appel API Type

```
Application métier
  │
  ├─ GedInitConnection(adresse, port)     → Initialise la connexion
  ├─ GedAddChampRecherche("CLE", valeur)  → Définit les critères
  ├─ GedDossierExist(armoire, user)       → Vérifie l'existence du dossier
  ├─ GedDossierConsult(armoire, user...)  → Génère l'URL de consultation
  │
  └─ URL renvoyée → Ouverture dans le navigateur de l'utilisateur
```

### Scénario d'Intégration Typique

**Cas : Accès aux factures depuis un ERP**

1. L'utilisateur est dans son ERP, sur la fiche d'une facture (numéro `FAC-2024-001`)
2. Il clique sur un bouton "Voir dans la GED"
3. L'ERP appelle `GedAddChampRecherche("NUM_FACTURE", "FAC-2024-001")` puis `GedDossierConsult()`
4. Multigest retourne une URL de session unique
5. Le navigateur ouvre la vue Multigest du dossier correspondant
6. L'utilisateur consulte les documents liés à cette facture

***

## Schéma Fonctionnel

### Scénario 1 — Application Métier Windows

Intégration d'un logiciel Windows (ERP, application de gestion) avec Multigest via l'API native.

```
┌──────────────────────┐         ┌──────────────────────────────┐
│  Application Métier  │         │       Serveur Multigest       │
│     (Windows)        │         │                              │
│                      │  TCP    │  ┌─────────────────────────┐ │
│  ┌────────────────┐  │ Sockets │  │  Automate Multigest     │ │
│  │ GED Connector  │◄─┼─────────┼─►│  Webserveur (port xxxx) │ │
│  │   (DLL/API)    │  │         │  └────────────┬────────────┘ │
│  └────────────────┘  │         │               │              │
│                      │         │  ┌────────────▼────────────┐ │
│  Bouton "Voir GED"   │         │  │  Base de données        │ │
│  → appel API         │         │  │  + Stockage documents   │ │
└──────────────────────┘         └──────────────────────────────┘
```

**Flux :**

1. L'utilisateur clique sur "Voir dans la GED" dans l'application métier
2. L'API est appelée avec les critères d'identification (clé unique)
3. L'Automate Multigest Webserveur retourne une URL ou les données demandées
4. L'application métier affiche le document ou ouvre le navigateur sur le dossier GED

### Scénario 2 — Application Métier Web

Intégration d'une application web avec Multigest via les webservices SOAP.

```
┌──────────────────────┐         ┌──────────────────────────────┐
│  Application Web     │         │       Serveur Multigest       │
│                      │         │                              │
│  ┌────────────────┐  │  SOAP   │  ┌─────────────────────────┐ │
│  │  Serveur web   │◄─┼─────────┼─►│  Apache + PHP           │ │
│  │  (PHP/.NET/…)  │  │  HTTP   │  │  Webservices SOAP       │ │
│  └────────────────┘  │         │  └────────────┬────────────┘ │
│         │            │         │               │              │
│  ┌──────▼─────────┐  │         │  ┌────────────▼────────────┐ │
│  │ Navigateur     │  │         │  │  Automate + BDD         │ │
│  │ utilisateur    │  │         │  │  + Stockage             │ │
│  └────────────────┘  │         └──────────────────────────────┘
└──────────────────────┘
```

**Flux :**

1. L'utilisateur clique sur un lien dans l'application web
2. Le serveur web appelle l'API SOAP Multigest
3. Multigest retourne une URL de session
4. L'utilisateur est redirigé vers le dossier GED dans son navigateur

### Infrastructure Requise

| Composant                         | Rôle                                  |
| --------------------------------- | ------------------------------------- |
| **Automate MultiGest Webserveur** | Traite les requêtes API (TCP sockets) |
| **Apache + PHP**                  | Traite les requêtes SOAP (HTTP)       |
| **Base de données**               | Source des données GED                |
| **Stockage fichiers**             | Source des documents physiques        |

***

**Pour aller plus loin :**

* [API — Endpoints](/documentations/multigest/installation/api-endpoints.md)
* [API — Référence](/documentations/multigest/installation/api-reference.md)
* [Connecteur CMIS](/documentations/multigest/installation/modules-avances.md)
* [Complément Office](/documentations/multigest/installation/deploiement-client.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.efalia.com/documentations/multigest/installation/webservices-introduction.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
