L'API Notiondesk vous permet de modifier les langues prises en charge par votre centre d'aide, de choisir sa langue par défaut et d'activer ou de désactiver la traduction automatique par IA. Utilisez-la pour déployer une nouvelle langue dans plusieurs centres d'aide ou pour synchroniser les paramètres linguistiques avec votre configuration.
| Méthode | Chemin | Portée | Fait |
|---|---|---|---|
PATCH | /sites/{site_id}/settings/supported-languages | write | Définit les langues prises en charge et la langue par défaut |
PATCH | /sites/{site_id}/settings/auto-translate | write | Active ou désactive la traduction automatique et définit sa langue source. |
Les deux itinéraires répondent 204 No Content. Lisez le nouvel état avec GET /sites/{site_id}, comme décrit dans Lisez vos centres d'aide avec l'API Notiondesk .
Définissez les langues disponibles pour votre centre d'aide.
curl -i -X PATCH "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/settings/supported-languages" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16" \
-H "Content-Type: application/json" \
-d '{"locales": ["en", "fr", "de"], "default_locale": "en"}'| Champ | Taper | Notes | Relisez comme |
|---|---|---|---|
locales | liste de chaînes de caractères | Au moins une des langues prises en charge par le centre d'aide. Chacune doit faire partie des available_locales langues du centre d'aide. | supported_locales |
default_locale | chaîne | La langue de repli des lecteurs. Doit figurer dans les langues résultantes et ne peut pas être null | default_locale |
Un champ non renseigné conserve sa valeur actuelle.
locales Cette action remplace la liste complète. Toute langue omise sera supprimée du centre d'aide, ainsi que ses paramètres (titre et description de la page, par exemple). Pour ajouter une langue, veuillez lire d'abord la section correspondante, puis renvoyer la liste complète incluant la nouvelle langue.supported_localesMême ajout en JavaScript, en conservant les langages actuels :
Limites du plan
Votre forfait définit le nombre de langues qu'un centre d'aide peut prendre en charge. Une liste locales plus longue que cela répond à l'erreur 403 permission_denied.
Lorsque votre centre d'aide stocke une langue qui n'est pas affichée dans son supported_locales, chaque requête adressée à cette route renvoie une erreur 403 permission_denied, quelle que soit la langue envoyée. Cela se produit lorsque :
const siteId = "c74781f6-1aea-4e17-ab23-bbb8b4d174b6";
const headers = {
Authorization: `Bearer ${process.env.NOTIONDESK_API_KEY}`,
"nd-version": "2026-10-16",
"Content-Type": "application/json",
};
const site = await (await fetch(`https://api.notiondesk.so/sites/${siteId}`, { headers })).json();
const locales = [...new Set([...site.supported_locales, "de"])];
await fetch(`https://api.notiondesk.so/sites/${siteId}/settings/supported-languages`, {
method: "PATCH",
headers,
body: JSON.stringify({ locales }),
});- le centre d'aide contient plus de langues que ne le permet le forfait, par exemple après une rétrogradation ;
- Une langue enregistrée est désactivée ;
- La langue par défaut ne possède aucun paramètre enregistré et occupe l'une des places du forfait.
Modifiez les langues de ce centre d'aide dans le tableau de bord. L'API refuse cette modification afin de protéger les langues qu'elle ne peut pas afficher : une requête modifiant uniquement la langue par défaut les supprimerait, ainsi que leurs paramètres. Consultez la section « Prise en charge de plusieurs langues dans votre centre d'aide » .
Activer ou désactiver la traduction automatique
curl -i -X PATCH "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/settings/auto-translate" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16" \
-H "Content-Type: application/json" \
-d '{"auto_translate_enabled": true, "auto_translate_source_locale": "en"}'| Champ | Taper | Notes |
|---|---|---|
auto_translate_enabled | booléen | Que les traductions manquantes soient produites automatiquement |
auto_translate_source_locale | chaîne de caractères ou null | La traduction automatique utilise une langue spécifique. Doit être l'une des langues répertoriées dans le centre d'aide (supported_locales). null efface cette langue. |
Envoyez les booléens JSON true ou false. Les valeurs 0 et "false" sont interprétées comme true, ce qui active la traduction facturée.
L'activation de la traduction automatique lance la traduction de votre centre d'aide. La première fois, la facturation des traductions est également activée pour votre espace de travail. Votre forfait doit inclure la traduction automatique. Découvrez son fonctionnement dans la section « Premiers pas avec la traduction automatique par IA » .
Quelle traduction de factures pendant qu'elle est en cours
| Action | Ce qui est traduit |
|---|---|
| Ajouter une langue | Le contenu du centre d'aide, dans la nouvelle langue |
| Toute synchronisation, planifiée ou déclenchée | Le contenu que la synchronisation a modifié dans la langue source, et tout ce qui n'a pas encore été traduit |
| Synchronisation d'un article avec des fichiers téléchargés sur Notion | Toutes les langues traduites automatiquement de cet article, même celles dont le texte est resté inchangé. |
Consultez la section « Synchronisations Trigger Notion avec l’API Notiondesk » pour savoir comment les synchronisations sont traduites.
Erreurs
| Statut | Quand | code |
|---|---|---|
| 400 | locales est vide ou contient une langue indisponible, default_locale est null ou n'est pas présent dans les langues résultantes, auto_translate_source_locale n'est pas une des langues du centre d'aide, ou le corps contient un champ inconnu | validation_error |
| 403 | La clé ne possède pas la portée write | insufficient_scope |
| 403 | Trop de langues sont incluses dans votre forfait, une langue enregistrée est masquée (voir Limites du forfait ), votre forfait n'inclut pas la traduction automatique ou le créateur de la clé ne peut pas modifier ce centre d'aide | permission_denied |
| 404 | Le centre d'aide n'existe pas dans votre espace de travail. | not_found |
Consultez la section « Gérer les erreurs d’API Notiondesk, les limites de débit et les nouvelles tentatives » pour connaître l’enveloppe d’erreur et les autres codes.
Questions fréquentes
Comment ajouter une langue sans supprimer les autres ?
Consultez la section supported_locales du centre d'aide, ajoutez la nouvelle langue et envoyez la liste complète sous le nom locales. La route remplacera la liste par celle que vous envoyez.
Quels codes de langue puis-je utiliser ?
Ceux qui se trouvent dans le available_locales du centre d'aide, renvoyés par GET /sites/{site_id}.
Puis-je traduire un seul article avec l'API ?
Non. La traduction automatique s'applique à l'ensemble du centre d'aide lorsqu'elle est activée, et chaque synchronisation traduit les modifications apportées. L'API permet de l'activer ou de la désactiver et de définir sa langue source.
La suppression d'une langue entraîne-t-elle la suppression de ses articles dans Notion ?
Non. L'API ne modifie jamais votre contenu Notion. Supprimer une langue empêche le centre d'aide de la proposer et supprime les paramètres du centre d'aide pour cette langue.