Clusters
Clusters de l'environnement et extension d'un tenant à un autre cluster.
Introduction
API REST `/v1` de StackNGO : applications, secrets, sites statiques, domaines, identité et accès.
Accepter de devenir le payeur du tenant (JWT d'identité)
Le compte connecté doit être le compte invité. Le tenant entre dans le quota de tenants du nouveau payeur et sort de celui de l'ancien ; aucun droit sur le tenant n'est donné ni retiré. L'ancien payeur et les admins du tenant sont prévenus par e-mail. L'invitation reste valable si le payeur a changé entre-temps ; acceptée pendant un préavis, elle le lève.
adminAssumeLoginToken
Jeton de connexion à usage unique de la demande approuvée, pour son demandeur seul, dans la
adminCreateAssumeRequest
Demande l'accès à un tenant (droits d'admin du tenant, plafond 8 h). Chaque admin joignable
adminGetAssumeRequest
Une demande d'assume role. Mêmes conditions d'accès que `GET /admin/tenants`.
adminGetTenant
Un tenant (tier, facturation, création). Mêmes conditions d'accès que `GET /admin/tenants`.
adminListAssumeRequests
Demandes d'assume role, les plus récentes d'abord (`mine=true` : celles de l'appelant).
adminListTenants
Tous les tenants de la plateforme. Jeton : JWT d'identité d'un utilisateur de
adminSetTenantMaster
Change la région master du tenant (accepté depuis toute région, la master pouvant être
adminSetTenantRegions
Régions où le tenant peut s'étendre (`*` = toutes ; liste vide = régions `open` de
Journal d'une application
Journal de l'App : événements récents (7 jours, 100 au plus), du plus récent au plus ancien, en termes clients. Action IAM : `deploy:read`.
Requêtes HTTP, temps de réponse, réseau et instances d'une application
Pour chaque service de l'App sur une période : requêtes par seconde selon la classe du code de réponse (2xx à 5xx), temps de réponse p50, p95 et p99 en secondes, part des requêtes en 5xx (entre 0 et 1), débit réseau entrant et sortant en octets par seconde, instances prêtes et voulues. Mêmes pas de mesure que `/metrics` ; 50 services au plus (`truncated` si davantage). Un service sans trafic a des séries vides. Action IAM : `deploy:logs`.
Journaux d'une application (flux)
Journaux des exemplaires de l'App, en texte, préfixés par le nom de l'exemplaire ; tail 200 par défaut (5000 max), since 24h max, follow 10 min max, 10 Mio max. Action IAM : `deploy:logs`.
Consommation CPU et mémoire d'une application
Consommation CPU (en cœurs) et mémoire (en octets) de l'App sur une période, pour l'ensemble de l'App, par service ou par exemplaire, avec les ressources réservées (requests) et les plafonds (limits) connus. Une mesure par minute (1h), 5 minutes (6h), 15 minutes (24h) ou heure (7d) ; 50 séries au plus (`truncated` si davantage). `series` vide : pas encore de mesure. Action IAM : `deploy:logs`.
Apps
Apps
Échange une session contre une session sur un autre tenant
Sans `login_token` ni `grant` : le Bearer est une session ; exige `iam:AssumeRole` sur
Ajoute des sujets au binding de la policy (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
Ajoute des sujets au binding de la policy (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
attachShell
WebSocket du terminal, authentifié par le ticket seul (`?ticket=`), depuis une origine
Authentification
Authentification
Billing
Billing
Annuler l'invitation en attente
Annuler l'invitation en attente
Désarmer la rotation d'un secret
Désarmer la rotation d'un secret
CDN
CDN
checkMyPermissions
Dit si l'appelant (jeton de la session, jamais un autre sujet) peut faire chaque action
Figer le tenant sur une branche d'environnement
`name: main` revient au suivi direct de main ; tout autre nom fige le tenant sur `env/<tenant>/<name>`.
Purger le cache d'un site
Vide le cache du site. Action IAM : `cdn:purge`.
Clusters
Clusters
Finaliser une application de manifestes
Vérifie que chaque objet a été déposé, valide son contenu contre le schéma du kind (kind et metadata.name égaux à ceux déclarés), exige les droits que ce contenu implique (lecture des Secrets référencés, registry:pull des images du registre, droits accordés par une clé d'accès au registre, hosts déjà servis par un autre objet), puis l'écrit dans l'état désiré et déclenche la synchronisation. Un lot refusé n'écrit rien ; la version en place est conservée. 409 si une clé d'accès ou une application prend le nom d'un Secret déjà référencé, ou si une clé d'accès encore lue en variables d'env repasse `ci` à false.
Finaliser le téléversement
Vérifie les fichiers déposés, supprime les autres (prune), vide le cache. Action IAM : `cdn:upload`.
Créer une application
Crée une App à un service dans l'état désiré, après le contrôle strict de sng apply. Action IAM : `deploy:write`.
Préparer une application de manifestes
Première étape de `sng apply`. Renvoie une URL de dépôt par objet ; le client y dépose
Inviter un utilisateur
Rend le lien d'invitation à usage unique (`url`), une seule fois ; il n'est plus lisible ensuite. Valable 168 heures par défaut (1 à 720). 1 000 invitations en attente au plus.
Inviter une adresse à reprendre la facturation du tenant
Admin du tenant. Si un compte StackNGO porte cette adresse vérifiée, il reçoit par e-mail un lien valable 7 jours ; sinon aucun e-mail n'est envoyé. La réponse est la même dans les deux cas. Une nouvelle invitation remplace celle en attente. Le payeur ne change qu'à l'acceptation. Au plus 5 invitations ou renvois par tenant sur 24 h.
Créer un site statique
Crée le CDNSite dans l'état désiré. Action IAM : `cdn:write`.
Déclarer un domaine apporté
Déclare un domaine apporté dans l'état désiré. Action IAM : `dns:write` sur `dnszone/*` puis `dnszone/{domaine}`. 409 si le domaine est déjà déclaré par le tenant.
Lien d'ajout d'un moyen de paiement
Lien vers une page de paiement sécurisée où ajouter une carte ou un compte PayPal ; elle ramène ensuite à la page Facturation de la console. Corps vide ou `{}`.
Ouvrir une demande de support
Corps `multipart/form-data` : champ `request` (JSON) et jusqu'à 3 fichiers `files[]` (5 Mio par fichier, 10 Mio au total ; PNG, JPEG, GIF, WebP, PDF, texte, CSV, JSON). 20 demandes par tenant et par heure. `grantAccess: true` exige le droit `support:grantaccess` (403 `grant_access_forbidden`, aucune demande créée).
createTenantGrant
Jeton (5 min) attestant que l'utilisateur de la session peut créer son tenant sur le
Crée un tenant (registre, policies gérées, Admin au créateur)
Ouvert à tout utilisateur connecté (jeton d'identité d'un utilisateur, jamais celui d'une
Approuve ou refuse une demande d'assume role
Lien personnel d'un admin du tenant, à usage unique ; la première décision s'applique. L'admin doit encore porter la policy admin du tenant. Limite dédiée de 20 requêtes / minute / IP.
Supprimer une application
Retire l'App de l'état désiré ; la plateforme la supprime, les volumes restent. Action IAM : `deploy:delete`.
Révoquer une invitation
Révoquer une invitation
Supprimer un rôle
Le rôle est aussi retiré des comptes qui l'avaient.
Supprimer un utilisateur
Supprime le compte, ses moyens de connexion, ses sessions et ses rôles.
Retire le binding de la policy {name} (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
Retire le binding de la policy {name} (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
Supprimer un site statique
Retire le site, son contenu (stockage par défaut) et son cache. Action IAM : `cdn:delete`.
Supprimer un enregistrement DNS
Retire l'enregistrement de l'état désiré ; la plateforme le retire du DNS. Action IAM : `dns:delete` sur `dnsrecord/{id}`.
Retirer un domaine apporté
Retire le domaine de l'état désiré. 409 tant que des enregistrements du tenant visent la zone. Action IAM : `dns:delete` sur `dnszone/{domaine}`.
Retire un groupe de l'état désiré (iam:write)
Retire un groupe de l'état désiré (iam:write)
Supprimer un trust OIDC
Supprimer un trust OIDC
Retire une policy et son binding de l'état désiré (policy:admin)
Retire une policy et son binding de l'état désiré (policy:admin)
Supprimer un manifeste
Retire le manifeste de l'état désiré ; la plateforme démonte ensuite ce qu'il avait créé selon la politique de suppression du kind. Un `CDNSite` exige aussi `cdn:delete`.
Retire un rôle de l'état désiré (iam:write)
Retire un rôle de l'état désiré (iam:write)
Supprimer un secret
Supprimer un secret
Détruire le tenant
Détruit l'organisation d'identité, les secrets, l'état désiré, l'environnement, les policies et le registre du tenant. Irréversible. Refusé sur l'organisation de la plateforme.
Métadonnées d'un secret
Métadonnées d'un secret
Retire des sujets du binding de la policy (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
Retire des sujets du binding de la policy (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
Bloquer un utilisateur
Le compte ne peut plus se connecter ; ses sessions et ses jetons sont révoqués.
Mettre un site en maintenance (503)
Maintenance : le CDN répond 503 (contenu et Ingress conservés). Action IAM : `cdn:write`.
DNS
DNS
Télécharger une pièce jointe
Seules les pièces des messages publics sont servies (en-têtes `Content-Disposition: attachment` et `X-Content-Type-Options: nosniff`).
Débloquer un utilisateur
Débloquer un utilisateur
Remettre un site en service
Lève la maintenance. Action IAM : `cdn:write`.
Créer un tenant à partir de l'état du tenant courant
Réservé aux administrateurs du tenant courant. Chaque manifeste copié est validé comme à l'apply ; un seul manifeste invalide refuse la création (400). Le nouveau tenant compte dans le quota de tenants de l'utilisateur, son payeur (`403 tenant_quota_exceeded`).
Environnements
Environnements
État désiré
État désiré
Alias POST de GET /export
Alias POST de GET /export
Exporter l'état désiré
Exporter l'état désiré
Lire les identifiants d'une clé d'accès au registre
Rend l'identifiant et le mot de passe courants d'une clé d'accès au registre (RegistryAccessKey) déclarée par manifeste, pour une CI ou un outil qui ne peut pas ouvrir de session. Réservé aux administrateurs du tenant. La réponse n'est jamais mise en cache.
Catalogue des actions et ressources d'un document de policy (policy:list)
Services, verbes et types de ressources admis, pour composer ou vérifier un document.
Lire une application et son état
App, manifeste compris. Action IAM : `deploy:read`.
Lire les identifiants OIDC d'une application
Identifiant client, secret client et émetteur d'une application déclarée par manifeste (IAMApplication). Réservé aux administrateurs de l'espace. La réponse n'est jamais mise en cache.
Lire une invitation (sans son lien)
Lire une invitation (sans son lien)
Lire un rôle
Lire un rôle
Lire la page de connexion et l'inscription
Lire la page de connexion et l'inscription
Lire un utilisateur et ses moyens de connexion
Lire un utilisateur et ses moyens de connexion
Payeur du tenant, invitation en attente et préavis
Réservé aux admins du tenant (utilisateur, pas d'application). Le payeur est décrit par son nom et son e-mail masqué, jamais par son identifiant. `notice` est présent quand le tenant n'a plus de payeur et sera supprimé à `deleteAt`.
Facturation d'un tenant
Réservé aux admins du tenant (utilisateur, session du tenant). Payeur (nom et e-mail masqué, jamais son identifiant), invitation en attente, préavis éventuel et tier. Le payeur ne change que par une invitation acceptée (`POST /tenants/{tenant}/billing-owner/invitations`).
Lire un enregistrement DNS
Enregistrement et son état de publication. Action IAM : `dns:read` sur `dnsrecord/{id}`.
Lire un domaine apporté
Domaine apporté : phase, TXT de preuve, serveurs de noms. Action IAM : `dns:read` sur `dnszone/{domaine}`.
Configuration d'environnement du tenant
Configuration d'environnement du tenant
Lit un groupe (iam:read)
Lit un groupe (iam:read)
Profil JWT courant
Profil JWT courant
Clés publiques des sessions (JWKS)
Clés publiques des sessions (JWKS)
Structure du formulaire d'un type de ressource
Structure du formulaire d'un type de ressource de `/kinds` : ses sections, leur
Policies directes, rôles et groupes d'un membre (iam:read)
Policies directes, rôles et groupes d'un membre (iam:read)
Votre facturation (JWT d'identité)
Profil de facturation et moyens de paiement de votre compte. Seul un compte utilisateur de la console ou de sng y a accès ; un jeton d'application reçoit 403.
Télécharger une facture (PDF Factur-X)
Télécharger une facture (PDF Factur-X)
Lire un trust OIDC
Lire un trust OIDC
Spécification OpenAPI de l'API
Ce document. Public, sans authentification, avec `ETag` et `Cache-Control` (5 min).
Lit une policy (policy:read)
Lit une policy (policy:read)
Ressources qui citent une ressource
Avant une suppression : objets de l'état désiré qui citent cette ressource par son nom
Lire un manifeste
Lire un manifeste
Lit un rôle (iam:read)
Lit un rôle (iam:read)
Lire la valeur d'un secret
Lire la valeur d'un secret
getShell
État d'une session de l'utilisateur (404 pour la session d'un autre).
Une demande et son fil
Les échanges internes de l'équipe n'apparaissent jamais. Une demande d'un autre tenant répond 404.
Gabarit YAML d'un Kind
Gabarit YAML d'un Kind
getTenantMaster
Région de cette API (`self`), région master du tenant de la session (`master`, seule à écrire ses droits) et API de la master (`server`). `master` absent : tenant d'avant le multi-région.
Tenants dont l'utilisateur est le payeur et son quota (JWT d'identité)
Tenants dont l'utilisateur est le payeur et son quota (JWT d'identité)
getTenantRegions
Régions du tenant de la session : région de cette API (`self`), région master (`master`,
Lire l'organisation d'identité du tenant
Lire l'organisation d'identité du tenant
Tier courant et consommation
Tier courant et consommation
Autoriser l'équipe à accéder au tenant pour cette demande
Réservé aux admins du tenant. Vaut approbation d'une session d'administration complète, tracée, de 8 h par demande, tant que la demande est ouverte. Idempotent.
Créer l'annuaire des utilisateurs du tenant
Créer l'annuaire des utilisateurs du tenant
Déconnexion
Révoque des sessions avant leur expiration, selon le jeton présenté :
IAM runtime
IAM runtime
IAM
IAM
Lire l'invitation reçue (JWT d'identité)
Seulement pour le compte invité, avec le jeton du lien. Lien faux, expiré, déjà utilisé, annulé ou reçu par un autre compte : 404 `invitation_invalid`, sans distinction.
joinTenant
Crée sur ce cluster le tenant attesté par un jeton de `POST /clusters/{cluster}/grants`
Lister les applications
Apps du tenant, avec leur état dans le cluster. Action IAM : `deploy:list`.
Lister les invitations
Lister les invitations
Lister les rôles de vos applications
Lister les rôles de vos applications
Lister les utilisateurs de vos applications
Annuaire de votre espace (comptes de vos applications `directory: tenant`), distinct des membres.
Tenants facturés à votre compte (JWT d'identité)
Tenants dont l'utilisateur est le payeur, qu'il en soit membre ou non.
Bindings demandés du tenant (policy:list)
Bindings demandés du tenant (policy:list)
Lister les sites statiques
Sites du tenant. Action IAM : `cdn:list`.
Lister les enregistrements DNS
Enregistrements du tenant. Action IAM : `dns:list` sur `dnsrecord/*`, puis sur chaque `dnsrecord/<id>` (les enregistrements refusés sont omis).
Lister les domaines apportés
Domaines apportés du tenant, avec leur état. Action IAM : `dns:list` sur `dnszone/*`, puis sur chaque `dnszone/<domaine>` (les zones refusées sont omises).
Groupes du tenant de la session, avec leur état (iam:list)
Groupes du tenant de la session, avec leur état (iam:list)
listKinds
Kinds acceptés par l'apply. Jeton : JWT d'identité.
Lister les membres du tenant
Un membre est une personne à qui une policy du tenant donne accès. Les noms des policies ne sont renvoyés que si l'appelant peut aussi lister les policies du tenant (policy:list policy/*) ; sinon `policies` est vide.
Vos factures et avoirs
Du plus récent au plus ancien, 25 par page. Liste vide tant que le profil n'est pas saisi.
Lister les trusts OIDC du tenant
Lister les trusts OIDC du tenant
Policies du tenant de la session, avec leur statut (policy:list)
Policies du tenant de la session, avec leur statut (policy:list)
Principaux appliqués et sujets demandés d'une policy (policy:read)
Principaux appliqués et sujets demandés d'une policy (policy:read)
Lister les manifestes d'un kind
Lister les manifestes d'un kind
Rôles du tenant de la session, avec leur état (iam:list)
Rôles du tenant de la session, avec leur état (iam:list)
Lister les versions d'un secret
Lister les versions d'un secret
Lister les secrets
Lister les secrets
listServers
Clusters de l'environnement (`server.yml` à la racine du bucket des tenants) et
Vos demandes de support
Les demandes du tenant, de la plus récente à la plus ancienne (100 au plus, sans pagination).
Catalogue des gabarits état désiré
Catalogue des gabarits état désiré
Journal des accès des employés Stackngo au tenant
Demandes d'assume role du tenant de la session, les plus récentes d'abord. Action `iam:admin` sur `tenant/<t>`.
Grille des tiers (JWT d'identité), pour créer un tenant
Même catalogue que `GET /tiers`, lisible sans session de tenant.
Tenants où l'utilisateur a au moins une policy (JWT d'identité)
Tenants où l'utilisateur a au moins une policy (JWT d'identité)
Grille des tiers
Grille des tiers
Méta
Méta
OIDC
OIDC
Échange une identité d'origine contre une session tenant
- Utilisateur : `tenant` obligatoire ; exige `iam:AssumeRole` sur `tenant/<tenant>`,
openShell
Ouvre (ou retrouve) le Cloud Shell de l'utilisateur sur le tenant de sa session : session
Modifier une application
Modifie un service (champs absents inchangés). Action IAM : `deploy:write`.
Comparer des manifestes à l'état désiré
Comparer des manifestes à l'état désiré
Policies
Policies
Préparer le téléversement de fichiers
URL de dépôt (PUT) vers le stockage du site (409 si le site utilise votre propre stockage objet). Action IAM : `cdn:upload`.
Demande désignée par un lien de décision (sans effet)
Le jeton vient du fragment du lien reçu par e-mail ; il n'est jamais consommé ici. Limite dédiée de 20 requêtes / minute / IP.
Créer ou remplacer un rôle
100 rôles par espace, 50 permissions par rôle. `If-Match` (version lue) rend l'écriture conditionnelle.
Modifier la page de connexion et l'inscription
Remplace le thème et la politique d'inscription. Le thème est vérifié (couleurs, contraste, images) avant d'être enregistré ; la page de connexion change en quelques minutes. Valable pour toutes les régions de l'espace, à écrire depuis sa région principale (sinon 409 `not master`).
Remplace les sujets du binding de la policy {name} (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
Remplace les sujets du binding de la policy {name} (policy:admin ; oidctrust:admin sur chaque trust OIDC lié ou délié)
Créer ou modifier un enregistrement DNS
Crée ou met à jour l'enregistrement (zone, nom, type) : ttl et cibles remplacés. Idempotent : 201 à la création, 200 sinon. Un enregistrement d'un domaine pas encore déclaré est accepté : il est publié dès que la zone est déclarée et prouvée. Action IAM : `dns:write` sur `dnsrecord/{id}` (id dérivé du corps). 409 si le même enregistrement est déclaré sous un autre nom.
Crée ou remplace un groupe dans l'état désiré (iam:write)
Écrit un IAMGroup dans l'état désiré du tenant ; appliqué en moins d'une minute. Donner un rôle au groupe exige aussi iam:write sur ce rôle (`role/<rôle>`).
Remplace les rôles et groupes d'un membre (iam:read sur le membre, iam:write sur chaque rôle ou groupe touché)
Ajoute le membre aux rôles et groupes listés et le retire des autres ; une liste absente reste inchangée. Seuls les rôles et groupes écrits depuis la console ou l'API sont modifiés ; ceux déclarés par un manifeste (`managed`) restent tels quels. Les policies directes ne changent pas ici (`/iam/bindings`), et celles attribuées par la plateforme ne sont jamais modifiables.
Saisir ou modifier votre profil de facturation
Nom, adresse et, pour une entreprise, SIREN et numéro de TVA. Les factures sont envoyées à l'adresse vérifiée de votre compte, qui ne se choisit pas ici. Les factures déjà émises ne changent pas.
Créer ou remplacer un trust OIDC
Au plus 20 trusts par tenant. Un trust n'accorde aucun droit : attachez-lui une policy (`POST /iam/policies/{name}/attach` avec `oidcTrusts`).
Crée ou remplace une policy dans l'état désiré (policy:admin)
Écrit un IAMPolicy dans l'état désiré du tenant ; appliquée en moins d'une minute (statut pending puis applied).
Crée ou remplace un rôle dans l'état désiré (iam:write)
Écrit un IAMRole dans l'état désiré du tenant ; appliqué en moins d'une minute. Les policies du rôle s'attribuent par `POST /iam/policies/{name}/attach` avec `{'roles': ['<rôle>']}`.
Créer ou remplacer un secret
Créer ou remplacer un secret
Activer le suivi de main sur l'environnement figé
Activer le suivi de main sur l'environnement figé
Registre
Registre
Retirer un moyen de paiement
Le moyen par défaut passe au plus récent des autres. Le dernier moyen d'un compte qui a un paiement en cours ne peut pas être retiré (409, `code: last_payment_method`) : en ajouter un autre d'abord.
Rouvrir une demande résolue
Dans les 7 jours qui suivent la résolution ; au-delà, 409 `reopen_window_expired`.
Répondre à une demande
`multipart/form-data` (champ `body`, fichiers `files[]`) ou JSON `{'body': '…'}`. Une demande résolue depuis moins de 7 jours est rouverte ; au-delà, 409 `ticket_closed`.
Renvoyer l'invitation en attente
Nouveau lien valable 7 jours ; l'ancien ne vaut plus rien. Même réponse que l'invitation.
Marquer la demande comme résolue
Met aussi fin à l'accès de l'équipe au tenant, le cas échéant.
Redémarrer les services d'une application
Redémarre les exemplaires (champ restartedAt du manifeste). Action IAM : `deploy:write`.
Restaurer l'état désiré à une révision
Remplace l'état désiré par le contenu de `ref` (défaut `main`) de l'historique de l'état désiré. Les secrets ne sont pas concernés. Réservé aux administrateurs du tenant (la restauration réécrit tous les objets sans contrôle objet par objet). Chaque manifeste restauré est validé comme à l'apply ; un seul manifeste invalide refuse la restauration (400) et l'état en place est conservé.
Restaurer un secret supprimé
Restaurer un secret supprimé
Révoque l'accès d'un employé Stackngo
Coupe les sessions émises et tout renouvellement. Idempotent. Action `iam:admin` sur `tenant/<t>`.
Retirer l'accès de l'équipe
Révoque aussi les sessions de l'équipe en cours. Idempotent.
Rôles et groupes
Rôles et groupes
Renouveler le mot de passe d'une clé d'accès au registre
Demande un nouveau mot de passe, généré par la plateforme. L'ancien reste accepté pendant la période de grâce de la clé (graceHours, 24 h par défaut) ; lisez ensuite les identifiants et mettez à jour les outils qui les utilisent. La clé de pull par défaut est gérée par la plateforme et ne se renouvelle pas ici. Réservé aux administrateurs du tenant.
Renouveler le secret client d'une application
Demande un nouveau secret client, généré par la plateforme. L'ancien secret est refusé dès que le renouvellement est traité (quelques secondes) ; lisez ensuite les identifiants et redémarrez les applications qui les utilisent. Réservé aux administrateurs de l'espace.
Faire tourner un secret
Faire tourner un secret
Changer le nombre d'exemplaires d'un service
Fixe replicas d'un service (refusé avec autoscale, ou volume au-delà de 1). Action IAM : `deploy:write`.
schemas
106 items
Secrets
Secrets
Remplacer les rôles d'un utilisateur
Remplacer les rôles d'un utilisateur
Choisir le moyen de paiement par défaut
Choisir le moyen de paiement par défaut
setTenantMaster
Change la région master du tenant de la session (geste de l'admin du tenant). Accepté
setTenantRegions
Régions où le tenant peut s'étendre (geste de l'admin du tenant), choisies parmi les
Changer de tier
Geste de l'admin du tenant. Monter est toujours accepté. Descendre exige que la consommation tienne dans le tier visé (sinon 409 avec le détail ; 503 si la consommation est illisible).
shellTicket
Ticket WebSocket à usage unique, valable 60 s, lié à la session et à l'utilisateur.
stopShell
Supprime la session.
Support
Support
Tenants
Tenants
Tiers
Tiers
Modifier la politique de l'organisation
Mot de passe, MFA, avatar, application par défaut. Les clés en camelCase (`displayName`, …) sont aussi acceptées.
Valider des manifestes sans les écrire
Avec un contenu, mêmes contrôles que la validation finale d'un apply (schéma du Kind, nom, règles propres au Kind), avant tout dépôt.
Cesser de payer un tenant (JWT d'identité)
Réservé au payeur du tenant, membre ou non. Confirmation par le nom du tenant. Le créateur du tenant reprend la facturation s'il en est encore membre et si son quota de tenants le permet (`outcome: creator`). Sinon le tenant entre en préavis de 7 jours (`outcome: notice`) : il reste utilisable, ses admins sont prévenus par e-mail, et il est supprimé à `deleteAt` sauf si un compte accepte entre-temps une invitation à le payer. Au plus 10 demandes par heure.