> Ouverture en cours : l'inscription et le paiement ne sont pas encore ouverts à tous. L'état du jour : https://subagent.fr/docs/etat.md
>
> Pour un agent : la carte du site est sur https://subagent.fr/llms.txt ; chaque page existe en Markdown, à la même adresse suffixée `.md`.

# `request_inbox_review`

> Demande la reprise d’une boîte suspendue : la demande est notée sur la boîte et au journal, et un administrateur de Subagent décide.

## En bref

| Propriété | Valeur |
|---|---|
| Titre | Demander la reprise d’une boîte suspendue |
| Outil MCP | `request_inbox_review`, sur `https://api.subagent.fr/mcp` |
| Appel HTTP | `POST https://api.subagent.fr/v1/request_inbox_review` |
| Accès | permission `approve` |
| État de l'espace | vérifié : sinon, refus `space_unverified` |
| Effet | écriture |
| Vue dans l'assistant | non |

## Ce que fait l'outil

Le serveur décrit l'outil ainsi à l'agent qui se branche :

> Demande la reprise d’une boîte suspendue : la demande est notée sur la boîte et au journal, et un administrateur de Subagent décide. Rien ne reprend tout seul, et aucune date n’est promise. C’est un geste humain : il demande la permission approve, que porte l’assistant de votre humain. Avant de demander, corrigez ce qui a causé la suspension (`status_reason` le dit : adresses mortes, plaintes). Redemander ne change rien de plus : la première demande reste, avec sa date.

## Paramètres

`request_inbox_review` accepte ces paramètres. Un paramètre inconnu est refusé avec le code `invalid_argument`.

| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
| `inbox_id` | identifiant `inb_…` | oui | La boîte suspendue (inb_…, voir `inbox_status`). |
| `note` | texte | non | Ce que votre humain veut dire à l’administrateur, facultatif : une ligne, 300 caractères au plus. |

## Résultat

L'outil rend un texte lisible en français et un objet structuré (`structuredContent`). En HTTP, la réponse est cet objet.

| Champ | Type | Contenu |
|---|---|---|
| `already_requested` | booléen | `true` : elle l’était déjà, rien n’a été ajouté. |
| `inbox` | objet | Une boîte. Voir [les champs d'une boîte](https://subagent.fr/docs/boites.md#champs). |
| `requested` | booléen | `true` : la reprise de cette boîte est demandée. |
| `requested_at` | texte | Date de la demande (ISO 8601). |

## Exemple d'appel

Les valeurs sont fictives.

HTTP :

```sh
curl -X POST https://api.subagent.fr/v1/request_inbox_review \
  -H "Authorization: Bearer $SUBAGENT_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "inbox_id": "inb_3f9c2a7e5b1d4c8e9a0f6b2d7c4e1a95",
  "note": "La liste de destinataires est corrigée."
}'
```

MCP (`tools/call`) :

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "request_inbox_review",
    "arguments": {
      "inbox_id": "inb_3f9c2a7e5b1d4c8e9a0f6b2d7c4e1a95",
      "note": "La liste de destinataires est corrigée."
    }
  }
}
```

## Refus possibles

| Code | HTTP | Ce qui s'est passé | Que faire |
|---|---|---|---|
| `not_found` | 404 | L'objet n'existe pas pour cette clé. | Vérifier l'identifiant : il vient de `list_inboxes`, `list_threads`, `get_thread` ou `list_drafts`. |
| `inbox_not_suspended` | 409 | La boîte n'est pas suspendue : il n'y a pas de reprise à demander. | Lire l'état de chaque boîte avec `inbox_status`. |

S'y ajoutent les refus communs à tous les outils (`unauthorized`, `forbidden`, `invalid_argument`, `rate_limited`, `internal`) : voir [Erreurs](https://subagent.fr/docs/erreurs.md#acces).

## Voir aussi

- [Boîtes : une boîte suspendue](https://subagent.fr/docs/boites.md#request_inbox_review)
- [Règles d'envoi : le coupe-circuit](https://subagent.fr/docs/regles-envoi.md#coupe-circuit)
- [`inbox_status`](https://subagent.fr/docs/reference/inbox_status.md)
- [`list_inboxes`](https://subagent.fr/docs/reference/list_inboxes.md)
- [Tous les outils](https://subagent.fr/docs/reference/index.md)
