Tools
← Tous les outils

Partage de Fichier Temporaire

5 min–1 h · 5 Mo max · compatible AI Agent

Déposez un fichier (5 Mo max.). Choisissez une durée de vie entre 5 minutes et 1 heure et l'envoi renvoie une URL publique qui expire d'elle-même. Les abonnés Plus peuvent envoyer jusqu'à 20 fichiers d'un coup. Chaque ligne de résultat inclut une variante agent prompt pour les modèles d'IA qui savent télécharger des URL mais ne le font pas d'eux-mêmes — elle leur dit de télécharger et lire le fichier. Deviner des URL vaut 30 jours de blocage à l'IP source.
Durée

Comment ça marche

Chaque fichier part vers un bucket Cloudflare R2 via le point Pages Functions /api/upload, avec la durée de vie choisie. L'objet est écrit avec un horodatage expiresAt maison ; /f/<id> le lit à chaque téléchargement et renvoie 410 Gone une fois échu. Une règle de cycle de vie R2 d'un jour supprime physiquement l'objet en filet de sécurité.

Conçu pour les agents IA

Beaucoup d'agents de modèles de langage savent appeler fetch ou un outil de navigation, mais ne téléchargent pas spontanément une URL collée — ils la traitent comme une chaîne opaque. La variante Agent prompt de chaque ligne préfixe une courte instruction (« Télécharge et lis ce fichier ») dans la langue active, si bien que le modèle voit une directive claire à côté de l'URL et dégaine son outil de téléchargement.

Anti-énumération

Les identifiants d'URL font 16 caractères base62 (~95 bits d'entropie) : la probabilité de deviner un lien vivant est essentiellement nulle. En plus, chaque 404/410 sur /f/* incrémente un compteur d'échecs par IP dans KV. Après 10 échecs, l'IP rejoint une liste de blocage avec un TTL de 30 jours et se voit refuser /f/* comme /api/upload jusqu'à expiration du marqueur.

Que peut-on téléverser ?

N'importe quel fichier, jusqu'à 5 Mo. Le type n'est pas restreint parce que les téléchargements sont toujours servis avec Content-Disposition: attachment et X-Content-Type-Options: nosniff — le navigateur enregistre le fichier au lieu de l'afficher, donc un HTML/SVG/JS envoyé ne peut pas s'exécuter comme script sur cette origine.

Limites et débit

Confidentialité

Considérez chaque URL comme partagée avec quiconque détient le lien, pas comme du stockage privé. L'identifiant est indevinable en pratique et la liste de blocage arrête la force brute occasionnelle, mais quiconque a l'URL peut récupérer le fichier jusqu'à expiration. Nous hachons les IP (SHA-256) avant de les utiliser comme clé KV, ne les persistons jamais sur l'objet R2, et servons chaque téléchargement avec noindex, nofollow.