---
title: "Publication et catalogue"
url: https://developers.dagio.ai/fr/publication/
---

# Publication et catalogue

   
                                 
                                                                           
                   
                
          
   

## Publier une définition

Un Model publié distribue une définition d’app, pas les données privées de son auteur. Le catalogue permet de découvrir et d’installer des Workspaces selon les besoins. Une app Clients n’a pas à connaître toutes les futures apps de soumissions, facturation ou fournisseurs pour être réutilisable.

| Information     | Valeurs attendues                    | Description                        |
| --------------- | ------------------------------------ | ---------------------------------- |
| Identité        | Nom, clé et description du Model     | Reconnaître l’app                  |
| Version         | Révision publiée identifiable        | Reproduire la définition installée |
| Capacités       | Fonctions et connexions requises     | Préparer l’installation            |
| Contenu initial | Définitions et exemples autorisés    | Démarrer sans données privées      |
| Migration       | Politique et changements structurels | Faire évoluer les installations    |

## Préparer une publication

Validez les références et essayez les parcours de création, modification et consultation. Vérifiez les droits et les besoins de connexion. Relisez les libellés, les erreurs et l’aide dans les langues proposées. La publication produit une version identifiable; l’activation dans un environnement reste une décision distincte.

## Assembler après installation

Un usager peut installer Clients puis Soumissions et les relier dans les intégrations. Il peut adapter les Fields et vues ou ajouter un Workspace manquant. La configuration des liens reste visible; l’AI peut la proposer et l’usager l’examiner.

## Exemple

Publiez Clients avec sa fiche, son tableau et ses Actions. L’installation dans une nouvelle organisation crée la structure autorisée, puis l’organisation ajoute ses données et connexions. Une publication suivante passe par la [migration](https://developers.dagio.ai/fr/migrations/) plutôt que modifier silencieusement les fiches existantes.

## Parcourir et installer depuis le Marketplace

Dans Surface, le Marketplace s'ouvre dans une modale centrée, limitée à 1 900 pixels de largeur, avec son propre défilement. La croix ou Échap ramène au Portfolio. Le catalogue public reste aussi accessible dans une page autonome.

**Discover**, **My publications** et **Installed** distinguent découverte, historique de publication
et collection installée. Discover filtre par Category, Type, Scope et Search. La découverte publique
ne demande aucun forfait payant. Publier dans le public exige **Plus ou supérieur**. **Pro ou Business**
donne accès au Private Repository personnel; une organisation Business autorisée possède son dépôt
Organization. Perdre le droit de publier ne supprime pas son historique public.

Les cards et fiches présentent les installations réussies enregistrées et les notes. Une installation
compte une fois par profil et release exacte; les rejeux et réinstallations ne gonflent pas ce cumul.
Une mesure historique absente reste indiquée indisponible. Un utilisateur ayant installé la
publication peut écrire ou modifier son avis. La modification remplace sa contribution à la note.
L'auteur utilise un pseudonyme public, sans exposer l'identifiant privé du compte.

La fiche réunit son action principale, son titre et son pill Installed. La galerie présente
les captures publiées et les images de templates déclarées. **Overview** affiche le Summary natif
avec une synthèse compacte **Details**. Pour les extensions, Overview présente le contenu fourni par l'éditeur sans répéter les capacités techniques. Les templates et applications présentent aussi leur aperçu ou leurs Spaces inclus. Les autres onglets présentent **Reviews**,
**Permissions**, **Installation guide** et **Manage installation**. Manage installation
regroupe la création d’application, la disponibilité du template et les actions de désinstallation
applicables; les auteurs utilisent **Publication** pour leurs actions éditoriales.
L'auteur peut composer le Summary et le guide comme Surfaces natives incluses dans la release revue.
Le fournisseur peut aussi fournir un courriel public et un logo par URL HTTPS. Le menu de la fiche propose le contact par courriel si fourni, les mises à jour disponibles des extensions et la désinstallation. Ces données font partie de la release immuable : une fiche existante nécessite une nouvelle publication pour les ajouter. Un état vide illustré signale les informations éditoriales absentes. Une extension installée n'affiche pas de bouton View templates.
**Permissions** présente les autorisations de la release exacte et de ses extensions requises.
Avant l’installation ou une mise à jour, consultez le dialogue et choisissez **Accept and install**.
Annuler conserve l’installation courante. Vos droits d’accès restent applicables; les connexions
externes et opérations sensibles conservent leur configuration ou confirmation distincte. L’AI et
MCP peuvent consulter le plan, mais ne peuvent pas accepter les autorisations pour vous.

Dans **Manage installation**, consultez l’état de l’accord, acceptez à nouveau une release ou
choisissez **Revoke permissions**. Révoquer une extension arrête ses actions; révoquer une application ou un template arrête les
nouvelles créations depuis ce paquet jusqu’à une nouvelle acceptation. Le contenu et l’historique
existants sont conservés.
Une installation sans accord doit être revue avant utilisation.

## Publier et installer un template de Surface

**My publications → Publish template** prépare une Surface native, sa présentation, ses Spaces
Content, Knowledge ou Data compatibles et ses extensions requises. Publier une nouvelle version
conserve l'immuabilité de la release précédente.

La fiche propose **All compatible Spaces**, incluant les futurs Spaces compatibles, ou une sélection
précise. Le template compatible est ensuite proposé par **New Surface** dans ces Spaces.
Ses extensions requises sont installées avec le template, comme avec un paquet applicatif.
Une dépendance manquante ou non autorisée empêche l'installation. Désinstaller un template le retire
des choix de création futurs et conserve les Surfaces déjà créées. Les blocs Data distribués restent sans liaison; le destinataire choisit sa source après création. Une liaison Data vivante et le contenu runtime d’une extension ne sont pas inclus dans les templates portables.

## Publier une extension de Surface

Une extension ajoute des types de Surface, leurs Spaces compatibles et leurs templates illustrés.
Elle peut aussi déclarer des Settings utilisateur et des fournisseurs de données. Elle possède sa
propre version et ne crée pas d’application Portfolio. Son installation rend ses templates
accessibles dans les Spaces déclarés.

Le Marketplace distingue applications et extensions. La publication suit les mêmes contrôles de
revue et de compte que les applications : Marketplace public, **Private Repository** personnel
avec Pro ou Business, ou dépôt **Organization** autorisé avec Business. La publication identifie un paquet exact
approuvé; une fiche ne donne aucun accès aux contenus ou sources privés.

Les Surfaces existantes conservent la release exacte de leur extension. Désinstaller bloque la
création et les nouvelles écritures, tout en conservant contenu et historique. Réinstaller la
release requise permet de reprendre l’édition.

## Gérer et créer des extensions

**Settings → Extensions** présente les extensions installées dans des cards Surface illustrées.
Ouvrez une card pour consulter les mises à jour ou désinstaller l’extension. Le modal affiche les
applications qui l’exigent et les Surfaces qui l’utilisent. Les installations requérantes (paquets applicatifs, instances ou templates) bloquent le retrait tant que leur exigence demeure ou qu’elles ne sont pas désinstallées. Les Surfaces
et leur historique sont conservés.

**My extensions** présente les extensions que vous développez. **New extension** crée une extension
à l’aide du SDK Surface et ouvre **Extension Builder**. Renseignez son nom et votre namespace de
paquet (par exemple, `acme` pour `@acme`); son identité interne est générée automatiquement. Une
extension peut fournir des types de Surface, des templates et des Settings utilisateur. Le template
est le contenu de départ d’une nouvelle Surface; l’extension fournit ses capacités. Configurez les
Spaces compatibles et les images de templates, modifiez les sources ou ouvrez l’assistant avec cette
extension sélectionnée. Enregistrer crée une révision des sources; cela n’active pas de code
exécutable. Examinez le diff, validez les sources et essayez l’aperçu isolé.

**Export extension** restitue son dossier source pour le développement local et la CI. Utilisez un
dépôt indépendant nommé `dagio-surface-ext-<id>` pour les versions livrées. Associer son URL ne
connecte ni n’autorise la livraison Git. Testez et construisez les sources exportées, puis faites
admettre leur paquet exact avant de le soumettre à publication. Son empreinte source doit
correspondre à ce build. Aucune synchronisation Git automatique dans les deux sens n’est effectuée.

Une application peut déclarer ses versions d’extensions obligatoires dans son Builder. Son
installation résout leurs publications approuvées et installe les dépendances avant activation.
L’accès aux dépôts privés est revérifié; une application publique ne peut pas exiger une extension
privée.

<!-- surface-examples:start -->

## Exemples appliqués : Publier une app réutilisable

La publication décrit l’app; les politiques conservent les accès aux Actions des instances.

### Configuration

Fragment à placer dans `publication`. [Propriétés et valeurs admises](https://developers.dagio.ai/fr/reference/workspace-model-foundation/).

```json
{
  "kind": "workspace-application",
  "license": "Propriétaire",
  "requiredCapabilities": [],
  "requiredConnections": []
}
```

### Variante et raccordement

Fragment à placer dans `contentActions[]`. [Propriétés et valeurs admises](https://developers.dagio.ai/fr/reference/content-space-action-policy/).

```json
{
  "contract": "ContentSpaceActionPolicy@1",
  "spaceKey": "clients",
  "actionKey": "prepare-quote",
  "minimumRole": "editor"
}
```

### Exemple de disposition UI

La disposition illustrative ci-dessous situe cette configuration dans l’app Clients/Soumissions. Chaque fragment s’insère à l’emplacement indiqué; ses références aux Fields, Queries et Actions correspondent aux déclarations du Model.

1. Objet concerné
2. Changement proposé
3. Vérifications
4. Confirmer

<!-- surface-examples:end -->
