DocumentationOuvrir Moon AI
Parcourir la documentation

Étiquettes

Créer des étiquettes clé et valeur, les poser sur des membres, des groupes ou des ressources, et marquer une ressource sensible par l’API d’administration.

Sur cette page

Une étiquette est une paire clé = valeur, par exemple site = Lyon ou classe = 3A. Une étiquette de membre décrit une personne : elle fait entrer dans les groupes dynamiques et peut donner des rôles. Une étiquette de sensibilité se pose sur une ressource (base de connaissances, agent, serveur MCP, fichier) pour en limiter l’accès.

Toutes les routes sont sous https://chat.realmoon.ai/api/v1/orgs/{org_id}. Portées : labels:read pour lire, labels:write pour écrire.

L’objet étiquetteLien vers la section L’objet étiquette

JSON
{
  "id": "9b8a7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d",
  "org_id": "8c1f2a4e-5b6d-4e7f-9a0b-1c2d3e4f5a6b",
  "key": "classe",
  "value": "3A",
  "color": "blue",
  "kind": "member",
  "source": "manual",
  "created_at": 1793836800
}
ChampDescription
keyMise en minuscules, espaces réduits ; lettres, chiffres, espaces, _, . et -, 64 caractères au plus.
valueEspaces réduits, casse gardée, 128 caractères au plus, sans |.
colorgray, red, orange, amber, yellow, lime, green, emerald, teal, cyan, sky, blue, indigo, violet, purple, fuchsia, pink ou rose.
kindmember ou sensitivity.
sourcemanual, ou directory pour une étiquette venue de l’annuaire.

Deux étiquettes ne peuvent pas avoir la même clé et la même valeur (sans tenir compte de la casse). Dans les listes, chaque étiquette porte aussi member_count et assignment_count.

Lister les étiquettesLien vers la section Lister les étiquettes

GET /labels · labels:read

ParamètreTypeDescription
qchaîneRecherche dans la clé ou la valeur.
kindchaînemember ou sensitivity.
keychaîneSeulement cette clé.
page, limitentierPagination. Tri par clé puis valeur.

La réponse ajoute colors, la liste des couleurs permises.

Créer une étiquetteLien vers la section Créer une étiquette

POST /labels · labels:write

ChampTypeObligatoireDescription
keychaîneoui1 à 64 caractères.
valuechaîneoui1 à 128 caractères.
colorchaînenongray par défaut.
kindchaînenonmember (par défaut) ou sensitivity.

Une organisation a 5 000 étiquettes au plus. Une étiquette qui existe déjà répond 409 invalid_request (« Cette étiquette existe déjà. »).

Modifier une étiquetteLien vers la section Modifier une étiquette

PATCH /labels/{label_id} · labels:write

Champs facultatifs key, value, color et kind. Les membres et ressources étiquetés suivent la nouvelle clé ou valeur. Une étiquette nommée par la règle d’un groupe dynamique ne change ni de clé ni de valeur : 409 label_in_use, avec groups, les noms des groupes concernés. Changez d’abord leur règle.

Supprimer une étiquetteLien vers la section Supprimer une étiquette

DELETE /labels/{label_id} · labels:write

Retire l’étiquette de tous les membres, groupes et ressources, et supprime les rôles qu’elle donnait. Réponse : {"success": true}. Refusé (409 label_in_use) tant qu’un groupe dynamique la nomme.

Poser une étiquetteLien vers la section Poser une étiquette

POST /labels/{label_id}/assignments · labels:write

ChampTypeObligatoireDescription
subject_typechaîneouiuser (membres), group ou resource.
subject_idslisteoui1 à 1 000 identifiants.
resource_typechaînepour resourceknowledge, agent, mcp_server ou library (un fichier de la bibliothèque du workspace).
cURL
curl https://chat.realmoon.ai/api/v1/orgs/$ORG_ID/labels/$LABEL_ID/assignments \
  -H "Authorization: Bearer $MOONAI_ADMIN_KEY" \
  -H "Content-Type: application/json" \
  -d '{"subject_type": "user", "subject_ids": ["<id de membre>", "<id de membre>"]}'
Python
import os
import requests

BASE = f"https://chat.realmoon.ai/api/v1/orgs/{os.environ['ORG_ID']}"
HEADERS = {"Authorization": f"Bearer {os.environ['MOONAI_ADMIN_KEY']}"}

r = requests.post(
    f"{BASE}/labels/{os.environ['LABEL_ID']}/assignments",
    headers=HEADERS,
    json={"subject_type": "user", "subject_ids": ["<id de membre>", "<id de membre>"]},
    timeout=30,
)
r.raise_for_status()
print(r.json()["added"])
JavaScript
const BASE = `https://chat.realmoon.ai/api/v1/orgs/${process.env.ORG_ID}`;
const r = await fetch(`${BASE}/labels/${process.env.LABEL_ID}/assignments`, {
  method: 'POST',
  headers: { Authorization: `Bearer ${process.env.MOONAI_ADMIN_KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({ subject_type: 'user', subject_ids: ['<id de membre>', '<id de membre>'] }),
});
if (!r.ok) throw new Error(await r.text());
console.log((await r.json()).added);

Réponse : {"success": true, "added": 2}. Les sujets déjà étiquetés sont ignorés. Poser une étiquette sur des membres peut les faire entrer dans des groupes dynamiques et leur donner des rôles, tout de suite.

StatutcodeCause
400invalid_requestÉtiquette de sensibilité sur des membres ; resource_type absent pour une ressource ou présent pour un membre ou un groupe.
403forbiddenPoser une étiquette sur le créateur de la clé sans la permission de régler les groupes ; étiquette qui place des membres dans des groupes soumis à des règles ou qui attribue une licence, quand la clé n’agit que sur des groupes gérés.
403role_escalationL’étiquette donnerait des rôles que la clé n’a pas.
403license_change_forbiddenLe changement ferait changer de lot de licences des membres ; il faut licenses:write.
404not_foundMembres, groupe ou ressource introuvables.

Poser une étiquette sur un groupe ou une ressource demande la permission de gérer les étiquettes ; sur des membres, celle de les poser.

Retirer une étiquetteLien vers la section Retirer une étiquette

DELETE /labels/{label_id}/assignments · labels:write

Même corps que la pose (resource_type n’est pas lu). Réponse : {"success": true, "removed": 2}. Les sujets non étiquetés sont ignorés. Les membres peuvent sortir de groupes dynamiques et perdre des rôles.

Voir aussiLien vers la section Voir aussi

  • Groupes
  • Ressources, pour l’étiquette de sensibilité d’un serveur MCP ou d’un partage

Moon AI

Moon AI en action

0:00

À découvrir

Captures de chat.realmoon.ai du 29 octobre 2026, avec des données fictives.

Moon AI

Vos préférences

Aucun suivi publicitaire.

Ce site ne dépose aucun cookie publicitaire ni cookie de mesure d’audience : notre serveur compte les visites sans cookie. Votre thème et la fermeture de l’information sur les cookies sont mémorisés sur cet appareil.

L’application Moon AI possède ses propres réglages de confidentialité.