Patrick Schurig 325409dd3f feat(i18n): prose traduite DE/EN et référence régénérée en anglais
82 pages .de.md et 82 .en.md. La volumétrie explique la forme : 95 % du volume
est GÉNÉRÉ (74 013 mots contre 3 506 rédigés, mesuré sur 107 pages). On ne
traduisait donc pas 77 500 mots — on traduit la prose, et le vocabulaire des
générateurs fait le reste.

Prose traduite à la main : accueil, installation (4), fonctionnalités (4),
tarifs, référence, dépannage, FAQ, intégrations (2), api/index, et les 6 fiches
appareils qui portent une vraie prose + compatibilite.md. Les blocs générés ne
sont JAMAIS recopiés dans une traduction : le script de pose les reprend
verbatim du fichier français via des placeholders, pour qu'une traduction ne
puisse pas désynchroniser un bloc généré.

Les 49 fiches légères n'ont rien à traduire : leur tagline vient d'amont et est
DÉJÀ en anglais (« Connects nymea to powerfox. »). Constat, pas renoncement.

Localisation ≠ traduction, et tarifs.md en est l'exemple à connaître : la
version FR parle de Tempo et du signal RTE, la DE de §14a EnWG et de SMARD,
l'EN des deux. Ce ne sont pas des traductions l'une de l'autre, et c'est
volontaire — les signaux tarifaires sont nationaux. Aucune des deux n'est
annoncée comme livrée : les deux sont Roadmap, et les pages le disent.

Référence régénérée : en-têtes et libellés en anglais (Field/Type/Notes,
Supported models, Settings, Read-only, Brand / Model…). Conséquence assumée et
signalée : les pages FR en ligne changent aussi.

README.md (il était VIDE) : la règle du 95 % généré en tête, la frontière de
décision du multi-langue avec sa mesure, pourquoi SCAFFOLD existe, et le piège
--strict/navigation.instant.

TODO : multi-langue clos, et trois points ouverts qui en restent — les tagline
vivent dans les meta.json de 5 autres dépôts (forme à ajouter : tagline_de /
tagline_en), les stubs traduits restent des stubs (la dette éditoriale a triplé
en surface, pas en fond), api/types.md n'a pas besoin de variante. Le P1
openmeteo est corrigé sur constat : il EST dans PORTING_STATUS depuis, et une
ligne commentée contradictoire y traîne encore.

Vérifié : mkdocs build --strict vert sur les trois langues, 322 pages HTML,
contenu traduit relu dans le HTML produit, et les deux générateurs rendent
« Doc à jour » en --check.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-10-13 06:39:20 +02:00

286 lines
5.9 KiB
Markdown

# Users
<!-- BEGIN GENERATED: __api_Users__ -->
## Methods
### Users.ChangePassword
<span class="badge perm-admin">ADMIN</span>
Change the password for the currently logged in user.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `newPassword` | `String` | |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
---
### Users.ChangeUserPassword
<span class="badge perm-admin">ADMIN</span>
Change the password for the given user. All tokens for this user will be removed in order to force all clients to log in again.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `newPassword` | `String` | |
| `username` | `String` | |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
---
### Users.CreateUser
<span class="badge perm-admin">ADMIN</span>
Create a new user in the API with the given username and password. Use scopes to define the permissions for the new user. If the user has not the permission "PermissionScopeAccessAllThings", the list of things this user has access to can be defined in the "allowedThingIds" property. If no scopes are given, this user will be an admin user. Call Authenticate after this to obtain a device token for this user.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `allowedThingIds` | `Uuid`[] | optional |
| `displayName` | `String` | optional |
| `email` | `String` | optional |
| `scopes` | [PermissionScopes](../types.md#permissionscopes) | optional |
| `password` | `String` | |
| `username` | `String` | |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
---
### Users.GetTokens
<span class="badge perm-admin">ADMIN</span>
Get all the tokens for the current user.
**Parameters:**
_No parameters._
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
| `tokenInfoList` | [TokenInfoList](../types.md#tokeninfolist) | optional |
---
### Users.GetUserInfo
<span class="badge perm-none">PUBLIC</span>
Get info about the current token (the currently logged in user).
**Parameters:**
_No parameters._
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
| `userInfo` | [UserInfo](../types.md#userinfo) | optional |
---
### Users.GetUserTokens
<span class="badge perm-admin">ADMIN</span>
Get all the tokens for the given username.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `username` | `String` | |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
| `tokenInfoList` | [TokenInfoList](../types.md#tokeninfolist) | optional |
---
### Users.GetUsers
<span class="badge perm-admin">ADMIN</span>
Return a list of all users in the system.
**Parameters:**
_No parameters._
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `users` | [UserInfoList](../types.md#userinfolist) | |
---
### Users.RemoveToken
<span class="badge perm-admin">ADMIN</span>
Revoke access for a given token. Depending on the logged in user only the own tokens can be removed. If you are logged in as admin, any token can be removed.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `tokenId` | `Uuid` | |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
---
### Users.RemoveUser
<span class="badge perm-admin">ADMIN</span>
Remove a user from the system.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `username` | `String` | |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
---
### Users.SetUserInfo
<span class="badge perm-admin">ADMIN</span>
Change user info. If username is given, info for the respective user is changed, otherwise the current user info is edited. Requires admin permissions to edit user info other than the own.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `displayName` | `String` | optional |
| `email` | `String` | optional |
| `username` | `String` | optional |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
---
### Users.SetUserScopes
<span class="badge perm-admin">ADMIN</span>
Set the permissions (scopes) for a given user. If the user has not the permission "PermissionScopeAccessAllThings" the list of thing IDs this user has access to can be defined in the "allowedThingIds" property.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `allowedThingIds` | `Uuid`[] | optional |
| `scopes` | [PermissionScopes](../types.md#permissionscopes) | |
| `username` | `String` | |
**Returns:**
| Field | Type | Notes |
| --- | --- | --- |
| `error` | [UserError](../types.md#usererror) | |
---
## Notifications
### Users.PushButtonAuthFinished
Emitted when a push button authentication reaches final state. NOTE: This notification is special. It will only be emitted to connections that did actively request a push button authentication, but also it will be emitted regardless of the notification settings.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `token` | `String` | optional |
| `success` | `Bool` | |
| `transactionId` | `Int` | |
---
### Users.UserAdded
Emitted when a user is added to the system.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `userInfo` | [UserInfo](../types.md#userinfo) | |
---
### Users.UserChanged
Emitted whenever a user is changed.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `userInfo` | [UserInfo](../types.md#userinfo) | |
---
### Users.UserRemoved
Emitted when a user is removed from the system.
**Parameters:**
| Field | Type | Notes |
| --- | --- | --- |
| `username` | `String` | |
---
<!-- END GENERATED -->