Plugin QGIS
ALIGN Connector est un plugin QGIS qui publie ce que vous avez sur votre poste de travail dans le Datastore de votre organisation : une couche, plusieurs, ou le projet entier sous forme de carte web. Il porte votre identité, n’accorde jamais rien par lui-même, et vous montre ce que le serveur répond. C’est un logiciel libre (GPL), dont le code source est sur GitHub, et il dialogue avec ALIGN avec les mêmes autorisations que celles dont vous disposez dans le navigateur.
Le plugin est en bêta : il est distribué depuis le dépôt de plugins d’ALIGN lui-même, jusqu’à ce qu’il rejoigne le dépôt officiel de QGIS.

Installer
Section intitulée « Installer »- QGIS 3.22 ou plus récent, QGIS 4 compris (le plugin fonctionne sous Qt5 et Qt6 à partir d’une seule source ; il est développé sur la 3.44 LTR).
- Dans QGIS, Extensions → Installer/Gérer les extensions → Paramètres : cochez Show also
experimental plugins, puis sous Dépôts d’extensions cliquez sur Ajouter avec le nom
ALIGNet l’URLhttps://aligngeo.com/qgis/plugins.xml. De retour dans Toutes, recherchez ALIGN Connector et cliquez sur Installer l’extension. Les mises à jour arrivent ensuite comme celles de n’importe quel autre plugin. (Vous préférez un fichier ? La même adresse sert le ZIP, pour Installer depuis un ZIP.) - Le plugin ajoute un seul bouton ALIGN à la barre d’outils : cliquez dessus pour ouvrir le panneau, ouvrez sa flèche pour Se connecter, Ouvrir ALIGN dans le navigateur et Settings. Les mêmes entrées se trouvent dans le menu Internet, et Publier sur ALIGN… figure dans le menu contextuel de toute couche vectorielle ou raster.
Rien d’autre à installer : aucun paquet Python, aucune clé à coller. Le plugin parle la langue dans laquelle QGIS fonctionne, l’anglais et le français à ce jour.
Se connecter
Section intitulée « Se connecter »Internet → ALIGN → Se connecter à ALIGN… ouvre votre navigateur sur ALIGN, où vous approuvez la connexion, comme vous autoriseriez n’importe quelle application. QGIS reçoit un jeton limité à la seule publication : le plugin ne peut pas s’en servir pour lire, lister ni télécharger les données de votre organisation.
Deux choses encadrent cette connexion :
- Votre organisation doit autoriser les plugins de bureau. Un propriétaire ou un administrateur l’active dans Settings → Integrations. D’ici là, une publication est refusée avec un message qui dit exactement cela.
- Vous pouvez la révoquer à tout moment. Chaque QGIS connecté apparaît sur la vignette QGIS de Settings → Integrations, où vous le révoquez ; se déconnecter depuis QGIS la révoque aussi côté serveur.
Votre rôle décide de ce que vous pouvez faire, comme dans le navigateur : un lecteur ne peut pas publier. Voir Rôles.

Ouvrez le panneau ALIGN (bouton de la barre d’outils, ou Publier sur ALIGN… sur une couche). La vue Publier liste les couches de votre projet dans l’ordre du panneau Couches ; cochez-en une, plusieurs, ou Tout le projet.
Pour chaque couche cochée, le panneau affiche un récapitulatif avant que quoi que ce soit ne quitte QGIS : combien d’entités seront écrites, si les coordonnées seront converties en WGS 84, ce que devient le style, quelles métadonnées voyagent. Lisez-le ; c’est le contrat de cette publication.
Choisissez ensuite :
- Organisation, avec son stockage et ses crédits restants sous le sélecteur.
- Titre, proposé à partir du titre de métadonnées de la couche quand elle en a un.
- Visibilité : privé, pour vous seul, ou partagé avec l’organisation.
- Description, pour la fiche de l’élément.
- Publier seulement les entités sélectionnées, pour une couche vectorielle qui a une sélection.
- Créer aussi une carte web avec ces couches : une fois toutes les couches arrivées, ALIGN compose une carte web avec l’ordre et la visibilité du panneau Couches (groupes aplatis), ouverte sur l’emprise que vous regardez, et la vue Activité vous en donne le lien.
Les fichiers volumineux continuent de s’importer en arrière-plan : vous pouvez continuer à travailler, et un transfert interrompu reprend là où il s’était arrêté. La vue Activité suit chaque publication et se termine par Ouvrir dans ALIGN.
Remplacer une couche publiée
Section intitulée « Remplacer une couche publiée »Une couche que vous avez publiée garde, dans le fichier de projet, l’élément qu’elle est devenue : rouvrez le projet une semaine plus tard, corrigez la couche, publiez à nouveau, et le panneau indique Déjà sur ALIGN : publiée dans … le … avec Replace the item already on ALIGN coché. L’élément garde son identifiant, si bien que chaque carte web qui l’affiche montre la nouvelle version à son prochain chargement ; la version précédente est conservée sur ALIGN ; la ligne d’Activity nomme les champs attributaires ajoutés, supprimés ou dont le type a changé, parce qu’une fenêtre contextuelle ou un style qui lisait l’un d’eux demandera votre attention.
Décochez la case pour publier plutôt un nouvel élément. Un remplacement est refusé, avec sa raison et la même solution, quand vous n’avez pas le droit d’écrire dans l’élément (seul son créateur ou un administrateur de l’organisation le peut), quand l’export est dans un autre format que celui de l’élément, ou quand l’élément a été converti à son arrivée (un GeoTIFF transformé en COG, un MBTiles transformé en PMTiles), ce qui ne peut pas encore être remplacé sur place. Un élément supprimé sur ALIGN est publié comme un nouvel élément, et la ligne d’Activity le signale.

Ce qui est publié
Section intitulée « Ce qui est publié »| Votre couche | Ce qui est envoyé | Ce qu’ALIGN stocke |
|---|---|---|
| Toute couche vectorielle que QGIS sait lire | FlatGeobuf en WGS 84 (reprojeté à l’export ; la couche elle-même n’est pas modifiée) | une couche, servie telle quelle |
| Une couche vectorielle lue depuis un fichier FlatGeobuf ou GeoParquet déjà en WGS 84 | ce fichier, octet pour octet | le même fichier |
| Une couche de tuiles vectorielles lue depuis une archive PMTiles ou MBTiles sur disque | cette archive, octet pour octet | le PMTiles (un MBTiles est converti à son arrivée) |
| Un raster stocké en GeoTIFF | ce fichier, octet pour octet | un Cloud-Optimized GeoTIFF, préparé à son arrivée |
| Tout autre raster que GDAL sait lire | un GeoTIFF compressé écrit pour l’occasion | un Cloud-Optimized GeoTIFF |
| Un service : XYZ, WMS, WMTS, WFS, OGC API Features, ArcGIS Feature ou Map Service, tuiles vectorielles, un COG ou un PMTiles distant, un nuage de points ou des 3D Tiles par URL | son adresse et le nom de la couche, aucune donnée | une référence dynamique, lue à l’ouverture de la carte, une par service |
Trois choses accompagnent une couche vectorielle :
- Le style. Les rendus symbole unique, catégorisé et gradué deviennent le style propre du Map Builder ; un rendu par ensemble de règles composé de règles d’égalité devient des catégories. Ce que le web ne sait pas dessiner (hachures, marqueurs SVG, tailles en unités de carte, propriétés pilotées par des expressions, étiquettes) est simplifié, et le récapitulatif comme la vue Messages le signalent avant que vous ne publiiez. Une différence à connaître : QGIS masque une entité qui n’entre dans aucune catégorie, la carte web la dessine. Sans ligne « toutes les autres valeurs », ces entités arrivent dans un gris neutre et translucide qui n’appartient à aucune classe, et le récapitulatif le dit ; ajoutez la ligne dans QGIS pour choisir leur apparence. La symbologie raster n’est pas transmise.
- Les métadonnées. Ce que vous avez saisi dans Propriétés de la couche → Métadonnées (résumé, thème et mots-clés INSPIRE, licence, contraintes d’accès, contact, historique) remplit le bloc de métadonnées de l’élément. Un champ que votre organisation impose pour chaque jeu de données garde la valeur de l’organisation, et la publication indique lequel.
- La provenance. L’élément enregistre qu’il vient de QGIS, quand, et depuis quel système de coordonnées.
Un raster reprojeté est conservé deux fois : votre original et la copie prête à l’affichage, toutes deux décomptées de votre stockage. Un service est conservé comme référence, comme le fait ArcGIS Online : ALIGN stocke l’adresse, lit le service quand une carte s’ouvre, et réutilise un seul élément pour un même service, quel que soit le nombre de fois où il est publié. Un service dont l’adresse porte une clé ou une signature est refusé : une référence ne stocke jamais d’identifiants de connexion.
Ce qui n’est pas publié
Section intitulée « Ce qui n’est pas publié »La vue Messages liste chaque couche que le plugin n’enverra pas, avec la raison :
- une table sans géométrie, une couche vide, des géométries courbes (segmentez-les d’abord) ;
- un nuage de points, un maillage ou une scène 3D locaux (ALIGN n’accepte les nuages de points et les 3D Tiles que par URL) ;
- une connexion WCS ou ArcGIS Image Service (rien à publier, et le Map Builder ne les lit pas en direct) ;
- une couche WMTS hors des tile matrix sets en Web Mercator ;
- un modèle d’URL XYZ avec des variables de sous-domaine ou de ligne inversée.
Les tuiles raster d’une archive MBTiles sont stockées, mais pas encore affichées par le Map Builder. Les étiquettes ne sont pas encore transmises : ajoutez-les dans le Map Builder.

Refus et solutions
Section intitulée « Refus et solutions »Le plugin rapporte ce que le serveur a répondu, dans votre langue :
| Ce que vous lisez | Pourquoi | Que faire |
|---|---|---|
| Votre session ALIGN a expiré | le jeton a été révoqué ou a expiré | reconnectez-vous |
| Cette organisation n’a pas activé le plugin QGIS pour ses membres | le réglage Desktop plugins est désactivé | un propriétaire ou un administrateur l’active dans Settings → Integrations |
| Votre rôle dans cette organisation ne permet pas de publier | vous y êtes lecteur | demandez un rôle d’éditeur, ou publiez dans une autre organisation |
| Convertir ce fichier demande N crédits ; cette organisation en a M | un raster ou une archive de tuiles doit être converti à son arrivée, et l’estimation dépasse le solde ; rien n’a été transféré | ajoutez des crédits dans Plans & Capacity, puis publiez à nouveau |
| Il ne reste pas assez d’espace dans le Datastore de cette organisation | le fichier dépasserait le stockage de l’offre ; c’est vérifié avant le premier octet | libérez de l’espace, ou passez à une offre supérieure |
| ALIGN n’accepte pas ce type de fichier | un format que le Datastore ne peut pas servir tel quel | laissez le plugin convertir (il le fait pour toute couche QGIS), ou importez depuis l’application web |
La vérification du stockage et l’estimation des crédits ont lieu avant le début du transfert : une publication qui ne tiendrait pas est refusée en quelques secondes, pas après une heure d’import.
Automatiser
Section intitulée « Automatiser »Le plugin ajoute un fournisseur ALIGN à la Boîte à outils de traitements, avec un seul
algorithme, Publier une couche sur ALIGN (align:publishlayer). Il publie exactement comme le
panneau, avec le style et les métadonnées de la couche, et s’utilise depuis le Modeleur graphique,
l’exécution par lots, la console Python, et tout pont MCP qui permet à un agent d’exécuter
des algorithmes de traitement. Connectez-vous d’abord depuis le panneau : l’algorithme n’ouvre
jamais de navigateur.
import processing
result = processing.run("align:publishlayer", { "INPUT": "Countries", # a layer, its id or a file path "ORGANIZATION": "Town GIS", # the organization's name or id "TITLE": "", # empty: the layer's metadata title, else its name "DESCRIPTION": "Boundaries, 2026 edition", "VISIBILITY": 1, # 0 private, 1 organization "SELECTED_ONLY": False, "REPLACE": True, # replace the item this layer was published as, when it lives in this organization})print(result["ASSET_ID"], result["ALIGN_URL"])REPLACE est activé par défaut : une couche qui se souvient de son élément est remplacée
sur place, comme depuis le panneau ; réglez-le sur False pour obtenir un nouvel élément à
chaque exécution.
Chaque refus du panneau est un refus de l’algorithme, dans les mêmes termes : pas connecté, organisation introuvable (le message liste les vôtres), une couche qui ne peut pas être publiée, l’interrupteur de l’organisation, le rôle, le stockage, les crédits. Une couche de service est refusée avec un renvoi vers le panneau, qui l’enregistre comme référence.
Signaler un problème
Section intitulée « Signaler un problème »Les bugs et les demandes vont dans le suivi des tickets du plugin sur GitHub. Avant d’écrire, ouvrez la vue Messages du panneau ALIGN et cliquez sur Copy diagnostic (aussi dans le menu du bouton de barre d’outils), puis collez-le dans le ticket. Il contient ce qu’il faut pour reproduire : les versions du plugin, de QGIS, de Qt et de Python, le système, les adresses ALIGN auxquelles le plugin parle, si vous êtes connecté, les noms de vos organisations, les dernières publications avec les codes de refus d’ALIGN, et les couches que le panneau refuse avec leur raison. Il ne contient jamais de jeton, d’adresse e-mail ni d’identifiant de compte, et rien ne quitte votre machine tant que vous ne le collez pas. Le plugin n’envoie aucune télémétrie.
Pages liées
Section intitulée « Pages liées »- Services OGC : l’autre sens, lire vos couches ALIGN dans QGIS sans ce plugin.
- La page d’un élément : là où arrive une couche publiée, avec sa provenance et ses métadonnées.
- Rôles : qui peut publier.
- Offres, consommation et facturation : le stockage et les crédits sur lesquels puise une publication.