Skip to content

Suppression de fichiers avec API Token

La suppression de fichiers avec API Token est destinée aux scripts, tâches automatisées et programmes tiers. Vous n’avez pas besoin d’ouvrir le panneau d’administration : l’URL du site, l’API Token et les identifiants de fichiers précis suffisent pour supprimer un ou plusieurs fichiers dans ImgHost.

La suppression est une opération d’écriture. Une fois la commande exécutée, les données sont réellement supprimées. Il est recommandé d’utiliser d’abord imghost-token-list.mjs pour vérifier les valeurs fileId à supprimer, puis de transmettre ces identifiants au script de suppression.

Modifier l’API Token

Préparation

Dans le panneau d’administration, ouvrez :

text
System Settings -> Security Settings -> API Token

Lors de la création ou de la modification de l’API Token, vérifiez qu’il dispose du droit de suppression. Ce script n’a besoin que du droit delete.

Vous pouvez aussi placer le token dans une variable d’environnement :

powershell
$env:IMGHOST_API_TOKEN="your API Token"

Télécharger le script

ScriptUtilisation
script de suppression de fichiersSupprime un ou plusieurs identifiants de fichiers indiqués explicitement

Node.js 18 ou plus récent est nécessaire.

Comportement de l’API de suppression

Le script de suppression appelle l’interface de suppression du serveur :

text
POST /api/manage/delete/batch

La requête doit contenir l’API Token :

text
Authorization: Bearer <token>

Exemple de corps de requête :

json
{
  "fileIds": ["photos/2026/a.txt"],
  "deleteStrictness": "strict"
}

Si fileIds contient un seul fichier, il s’agit d’une suppression de fichier unique. S’il contient plusieurs fichiers, il s’agit d’une suppression par lot. Le serveur traite au maximum 15 fichiers par requête, et le script découpe automatiquement le travail en plusieurs requêtes selon --batch-size.

L’interface renvoie un flux de progression NDJSON. Les événements courants incluent batch_start, file_step, file_done, batch_complete et batch_error. Le script lit ces événements et les résume sous forme lisible ou en JSON.

Après une suppression réussie, le serveur met automatiquement à jour les index de fichiers, les statistiques de dossiers, les statistiques de capacité et le nettoyage de la mémoire intermédiaire.

Paramètres du script de suppression

ParamètreObligatoireDescription
--base-url <url>OuiURL du site ImgHost, par exemple https://image.ai6.me
--token <token>OuiAPI Token. Vous pouvez aussi utiliser la variable d’environnement IMGHOST_API_TOKEN
--file-id <id>OuiIdentifiant du fichier à supprimer. Peut être indiqué plusieurs fois
--strictness <strict|soft>NonNiveau d’exigence de la suppression. Valeur par défaut : strict
--batch-size <n>NonNombre de fichiers supprimés par requête. Valeur par défaut : 15, maximum 15
--retries <n>NonNombre de tentatives en cas d’échec temporaire. Valeur par défaut : 3
--timeout-ms <n>NonDélai maximal d’une requête. Valeur par défaut : 180000
--output <pretty|json>NonFormat de sortie. Valeur par défaut : pretty
--save-response <path>NonEnregistre le résultat final dans un fichier JSON
-h / --helpNonAffiche l’aide du script

Ce script supprime uniquement les valeurs --file-id transmises explicitement. Il ne fait pas de correspondance approximative, ne vide pas un dossier en bloc et ne lit pas les identifiants à supprimer depuis une liste séparée par des virgules ou depuis un fichier local.

Suppression stricte et suppression souple

ModeDescription
strictMode par défaut. Si la suppression échoue sur le stockage distant, l’enregistrement ImgHost est conservé pour permettre une nouvelle tentative ou une vérification
softSi la suppression échoue sur le stockage distant, l’enregistrement ImgHost est tout de même nettoyé et le résultat contient un avertissement

Si le fichier distant doit absolument être supprimé pour que l’opération soit considérée comme réussie, utilisez le mode par défaut strict. Si une plateforme distante ne permet plus la suppression et que vous voulez seulement nettoyer l’enregistrement ImgHost, utilisez soft.

Exemples d’utilisation

Supprimer un fichier :

powershell
node imghost-token-delete.mjs `
  --base-url "https://your-domain" `
  --token "your API Token" `
  --file-id "photos/2026/a.txt"

Utiliser le token depuis la variable d’environnement :

powershell
$env:IMGHOST_API_TOKEN="your API Token"

node imghost-token-delete.mjs `
  --base-url "https://your-domain" `
  --file-id "photos/2026/a.txt"

Supprimer plusieurs fichiers :

powershell
node imghost-token-delete.mjs `
  --base-url "https://your-domain" `
  --file-id "photos/2026/a.txt" `
  --file-id "photos/2026/b.txt" `
  --file-id "photos/2026/c.txt"

Nettoyer l’enregistrement ImgHost même si la suppression échoue sur le stockage distant :

powershell
node imghost-token-delete.mjs `
  --base-url "https://your-domain" `
  --file-id "photos/2026/a.txt" `
  --strictness soft

Produire du JSON et enregistrer le résultat :

powershell
node imghost-token-delete.mjs `
  --base-url "https://your-domain" `
  --file-id "photos/2026/a.txt" `
  --output json `
  --save-response ".\delete-result.json"

Limiter chaque requête à 5 fichiers :

powershell
node imghost-token-delete.mjs `
  --base-url "https://your-domain" `
  --file-id "photos/2026/a.txt" `
  --file-id "photos/2026/b.txt" `
  --batch-size 5

Vérifier fileId avant la suppression

Le script de suppression a besoin de l’identifiant de fichier ImgHost. Vous pouvez d’abord utiliser le script de liste pour afficher les fichiers d’un dossier :

powershell
node imghost-token-list.mjs `
  --base-url "https://your-domain" `
  --token "your API Token" `
  --files `
  --dir "photos/2026" `
  --count 10 `
  --output json

Le champ name du résultat est généralement le fileId que vous pouvez transmettre au script de suppression.

Questions fréquentes

Pourquoi la suppression a-t-elle échoué alors que le fichier est encore dans la liste ?

Avec le mode par défaut strict, l’enregistrement ImgHost est conservé si la suppression échoue sur le stockage distant. Cela évite de supprimer uniquement l’index local alors que le fichier distant existe toujours. Après avoir confirmé que vous voulez seulement nettoyer l’enregistrement ImgHost, réessayez le même fileId avec soft.

Pourquoi le résultat contient-il des avertissements ?

Les avertissements indiquent généralement un problème non bloquant pendant la suppression sur le stockage distant, le nettoyage de la mémoire intermédiaire ou la finalisation des statistiques. Le script les regroupe pour vous aider à décider si une nouvelle tentative est nécessaire.

Peut-on supprimer tout un dossier en une seule fois ?

Ce script ne propose pas d’opération pour vider un dossier entier. Utilisez d’abord le script de liste pour filtrer des valeurs fileId précises, puis transmettez les fichiers à supprimer un par un au script de suppression.

Released as user documentation for ImgHost.