personal_access_token.reactivation.create
Markdownv0.3.0
Réactiver l'un de ses jetons personnels désactivé pour inactivité, sous une session de console.
- API
POST /v1/account/personal-access-tokens/{tokenId}/reactivate - CLI
bastide personal_access_token reactivation create
EX-SEC-390. La désactivation après quatre-vingt-dix jours sans usage est une échéance, pas une sanction : son titulaire rouvre le jeton, qui garde son nom, ses portées et son échéance. L'inactivité repart de la réactivation. Un jeton révoqué ou échu ne se réactive pas. Sous une session de console seulement ; cinquante jetons en vigueur au plus.
| Propriété | Valeur |
|---|---|
| Niveau | account |
| Rang minimal | — |
| Rôle transversal | — |
| Portées | org:admin |
| Compte de service | ne la mène pas : elle est réservée à une personne |
| Réversibilité | R — réversible : exécution directe, tracée, annulable |
| Idempotence | une clé d'idempotence est acceptée : le rejeu rend la première réponse |
| Limites de débit, par jeton | 600 appels par 60 secondes (general), et 60 appels par 60 secondes (sensitive) |
API
POST /v1/account/personal-access-tokens/{tokenId}/reactivate — succès en 200.
| Paramètre | Où | Type | Requis | Description |
|---|---|---|---|---|
tokenId | chemin | texte, motif ^pat_[0-9A-HJKMNP-TV-Z]{26}$ | oui | Identifiant de jeton personnel |
Idempotency-Key | en-tête | texte, de 8 à 128 caractères | non | Clé d'idempotence. Un rejeu portant la même clé retourne le résultat initial sans nouvel effet de bord, et la réponse porte alors « Idempotency-Replayed: true ». Équivaut au champ « idempotencyKey » du corps ; les deux à la fois ne sont acceptés que s'ils sont identiques. |
idempotencyKey | corps | texte, de 8 à 128 caractères | non | Clé d'idempotence, obligatoire. Un rejeu portant la même clé rend le résultat initial, sans nouvel effet de bord. |
La réponse :
| Champ | Type | Description |
|---|---|---|
tokenId | texte, motif ^pat_[0-9A-HJKMNP-TV-Z]{26}$ | Identifiant de jeton personnel |
name | objet (untrusted, source, content) | |
displayPrefix | texte | Les douze premiers caractères de l'identifiant : de quoi le reconnaître. |
scopes | liste de de 1 à 12 éléments — chaque élément : l'un de project:read, project:write, deploy:write, db:read, db:write, db:destructive, secrets:write, billing:read, billing:write, domain:write, audit:read, org:admin | Ce que ce jeton peut faire, dans la limite du rang de son titulaire. |
state | l'un de active, revoked, disabled, expired | « disabled » : désactivé pour inactivité, quatre-vingt-dix jours sans servir ; son titulaire le réactive sous une session de console. Seul « active » ouvre un appel. |
createdAt | texte, format date-time | |
expiresAt | texte, format date-time | Au plus 365 jours après sa création. |
lastUsedAt | texte, format date-time, ou nul | Son dernier usage, à cinq minutes près. Nul s'il n'a jamais servi. |
lastUsedIp | texte, ou nul | L'adresse d'où il a servi la dernière fois. |
revokedAt | texte, format date-time, ou nul | |
disabledAt | texte, format date-time, ou nul | |
reactivatedAt | texte, format date-time, ou nul | Sa dernière réactivation par son titulaire. L'inactivité se compte depuis le plus récent de sa création, de son dernier usage et de cet instant. |
inactivityNoticeAt | texte, format date-time, ou nul | L'instant où son titulaire a été prévenu qu'il allait être désactivé. S'efface dès que le jeton sert. |
disablesAt | texte, format date-time, ou nul | Quand il sera désactivé s'il ne sert pas d'ici là. Nul s'il n'est plus en vigueur, ou s'il arrive à échéance avant. |
undoToken | nul |
En-têtes de la réponse : RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset, RateLimit-Policy, Idempotency-Replayed.
Autres réponses : 400, 401, 403, 404, 409, 429, 500, 503 — communes à toute opération.
Ligne de commande
bastide personal_access_token reactivation create --token-id <valeur>
| Option | Type | Requise | Défaut | Description |
|---|---|---|---|---|
--token-id | texte | oui | — | Identifiant de jeton personnel |
--idempotency-key | texte | non | — | Clé d'idempotence, obligatoire. Un rejeu portant la même clé rend le résultat initial, sans nouvel effet de bord. |
La commande s'exécute sans confirmation.
MCP
Aucun outil : elle touche à l'identité d'une personne ou d'un compte — ses facteurs, ses sessions, ses jetons, ce que l'organisation exige de ses membres : un agent agit sous un jeton de soixante minutes au plus et ne se fabrique aucun accès durable (§ 6.4.3, EX-MCP-080).
Erreurs
| Code | Surface | Cause |
|---|---|---|
session_requise | les deux | Ce geste ne se fait que sous une session de console, ouverte par un mot de passe : un jeton personnel ne le fait pas. |
jeton_non_desactive | les deux | Le jeton n'est pas désactivé pour inactivité : il est en vigueur, révoqué ou échu. Seul ce que l'inactivité a fermé se réactive. |
quota_de_jetons_personnels_atteint | les deux | Le compte porte déjà le nombre publié de jetons personnels en vigueur : cinquante. |
idempotency_key_conflict | API | Deux clés d'idempotence différentes ont été présentées, dans le corps et dans l'en-tête. |
S'y ajoutent les refus communs à toute opération — entrée invalide, authentification, autorisation, cible introuvable, conflit, limite de débit, indisponibilité — que le catalogue des erreurs décrit.
Exemples
Réactiver un jeton personnel désactivé :
{
"tokenId": "pat_01JQ8ZK4M7NP2RSTVWXYZ34567",
"idempotencyKey": "reactivation-de-jeton-personnel-2026-10-14"
}