API de détection d’images IA
API de détection d’images IA et de retouches locales.
Détectez la génération par IA et les retouches locales de vos images en deux appels d’API. Zones marquées et rapport vérifiable, 1,99 $US par image.
Démarrage gratuit : 5 vérifications d’images ou de documents et 5 000 caractères de texte. Sans carte, sans abonnement.
- Points d’accès
- POST /v1/files, POST /v1/analyses
- Modèle
- fvimg-2 · FVIMG V2
- Fichiers acceptés
- JPEG, PNG, WEBP
- Taille maximale
- Jusqu’à 10 Mo et 40 mégapixels
- Résultat
- Dans la même requête, ou par webhook
- Prix
- 1,99 $US par vérification d’image
Dernière mise à jour
Ce qui est contrôlé
Les questions auxquelles répond la vérification d’image.
L’image entière est-elle générée ? Une partie a-t-elle été retouchée ? Que disent les données propres au fichier ? Un seul rapport répond aux trois, et la colonne « Champ de la réponse » indique où lire chaque réponse.
| Question | Ce qui est examiné | Champ de la réponse |
|---|---|---|
| Génération par IA | Si l’image semble générée, avec une probabilité et, lorsque c’est possible, le générateur probable. | questions.ai, generator |
| Retouches locales | Si une partie de l’image a été modifiée, avec les zones marquées en pixels. | questions.edit, regions |
| Content Credentials, filigranes et étiquettes IA | Ce que les données propres au fichier affirment sur son origine, et si ces affirmations tiennent. | questions.source, provenance |
| Métadonnées du fichier | L’appareil, le logiciel et la date de prise de vue mentionnés dans les données du fichier. | provenance |
| Verdict et confiance | Un niveau de risque, une action recommandée et ce que ce fichier permet d’établir. | summary, confidence |
Requête et réponse
Deux appels, un rapport.
Envoyez l’image, puis lancez la vérification avec le modèle fvimg-2. Ajoutez Prefer: wait pour garder la requête ouverte jusqu’à ce que le rapport soit prêt. Si l’attente expire avant, la vérification répond 202 avec le statut processing. Récupérez-la plus tard ou recevez un webhook.
FILE_ID=$(curl -s https://api.fileverity.com/v1/files \ -H "Authorization: Bearer $FILEVERITY_API_KEY" \ -F file=@claim-photo.jpg | jq -r .id) curl https://api.fileverity.com/v1/analyses \ -H "Authorization: Bearer $FILEVERITY_API_KEY" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Prefer: wait=60" \ -d "{\"model\": \"fvimg-2\", \"file\": \"$FILE_ID\", \"metadata\": {\"order_id\": \"A-10492\"}}"import { readFile } from "node:fs/promises"; const headers = { Authorization: "Bearer " + process.env.FILEVERITY_API_KEY }; const form = new FormData();form.append("file", new Blob([await readFile("claim-photo.jpg")], { type: "image/jpeg" }), "claim-photo.jpg");const file = await (await fetch("https://api.fileverity.com/v1/files", { method: "POST", headers, body: form })).json(); const response = await fetch("https://api.fileverity.com/v1/analyses", { method: "POST", headers: { ...headers, "Content-Type": "application/json", "Idempotency-Key": crypto.randomUUID(), Prefer: "wait=60" }, body: JSON.stringify({ model: "fvimg-2", file: file.id, metadata: { order_id: "A-10492" } }),});const analysis = await response.json();console.log(analysis.status, analysis.summary, analysis.report_url);import osimport uuidimport requests headers = {"Authorization": "Bearer " + os.environ["FILEVERITY_API_KEY"]} file = requests.post("https://api.fileverity.com/v1/files", headers=headers, files={"file": open("claim-photo.jpg", "rb")}).json() response = requests.post( "https://api.fileverity.com/v1/analyses", headers={**headers, "Idempotency-Key": str(uuid.uuid4()), "Prefer": "wait=60"}, json={"model": "fvimg-2", "file": file["id"], "metadata": {"order_id": "A-10492"}},)analysis = response.json()print(analysis["status"], analysis["summary"], analysis["report_url"]){ "id": "an_8Hk2pQ4vN9sL1xR7cW3mY6zB", "object": "analysis", "created": 1793700120, "model": "fvimg-2-2026-10-30", "livemode": true, "status": "succeeded", "file": { "name": "claim-photo.jpg", "bytes": 2481920, "format": "jpeg" }, "report_id": "FV-7K2M-9QXD-4T8R", "report_url": "https://fileverity.com/verify/FV-7K2M-9QXD-4T8R", "summary": { "level": "L2", "assessment": "authentic_untouched", "action": "accept", "ai": "very_low", "edit": "none" }, "result": { "report": { "schema": "fileverity.report/1", "id": "FV-7K2M-9QXD-4T8R" }, "stamped_at": 1793700130 }, "error": null, "progress": null, "usage": { "amount": 199, "currency": "usd", "funding": "balance" }, "metadata": { "order_id": "A-10492" }, "completed_at": 1793700131, "expires_at": 1794304931}Cas d’usage
Placez-la là où une image devient une preuve.
L’API renvoie un niveau de risque et une action recommandée. Vos équipes gardent la décision finale.
Photos de sinistres et d’assurance
- Vous envoyez
- Photos de dégâts, de véhicules et de biens jointes à une déclaration de sinistre.
- Vous recevez
- Des constats sur la génération par IA et les retouches locales, des zones marquées et un identifiant de rapport.
- Ensuite, votre équipe
- Demandez le fichier d’origine ou une autre photo lorsque le rapport signale l’image.
Retours et demandes de remboursement
- Vous envoyez
- Photos de produits que des clients téléversent pour justifier un remboursement.
- Vous recevez
- Un verdict et une action recommandée dans la réponse, avec les zones retouchées marquées.
- Ensuite, votre équipe
- Suspendez le remboursement pour examen si une image est signalée, et traitez les autres normalement.
Places de marché et annonces
- Vous envoyez
- Photos d’annonces et photos de profil au moment du téléversement.
- Vous recevez
- Un niveau de risque et une action recommandée, issus d’une seule vérification.
- Ensuite, votre équipe
- Étiquetez, limitez ou examinez les envois signalés selon votre propre politique.
Litiges et enquêtes
- Vous envoyez
- Photos produites comme preuves dans un litige ou une enquête.
- Vous recevez
- Un rapport avec empreintes et horodatage RFC 3161, vérifiable plus tard.
- Ensuite, votre équipe
- Conservez l’identifiant de rapport avec le dossier et partagez la page de vérification au besoin.
Limites
Ce qu’elle ne fait pas.
Un résultat sans anomalie restreint l’examen, il ne le remplace pas.
- Elle ne contrôle que des images fixes. Elle n’analyse ni vidéo ni audio, n’identifie pas les personnes et ne compare pas les visages.
- Un résultat sans constat ne prouve pas qu’une image est authentique. Une nouvelle prise de vue, une capture d’écran ou un réencodage effacent des indices.
- Les captures d’écran, la compression forte et les petites images limitent ce que l’on peut établir. Le rapport indique ce que le fichier a permis d’établir.
- L’absence de Content Credentials ou de filigrane ne prouve rien, dans un sens comme dans l’autre : les métadonnées sont souvent supprimées lors du partage des images.
- Les résultats de détection varient selon le générateur et l’image. Lisez le rapport comme un élément d’examen, pas comme un verdict.
Preuves
Des preuves que vous conservez.
Chaque vérification laisse, au-delà du simple verdict, une trace que vous pouvez conserver, partager et revérifier plus tard.
Identifiant de rapport
Un identifiant de rapport de la forme FV-XXXX-XXXX-XXXX. Conservez-le à côté de votre dossier ou de votre fiche client.
Empreintes et horodatage
Des empreintes SHA-256 du fichier et du rapport, ainsi qu’un horodatage RFC 3161, sont enregistrés avec chaque rapport.
Page de vérification publique
Toute personne à qui vous transmettez l’identifiant peut le confirmer sur la page de vérification, sans compte.
Fichiers supprimés, résultats conservés
Les fichiers envoyés sont supprimés après la vérification et ne servent jamais à entraîner des modèles. Le résultat reste accessible par l’API pendant 7 jours.
Intégration
Intégrez-la à votre processus.
Les vérifications d’images et de documents suivent le même schéma : une seule intégration couvre les deux.
- Attendez le résultat avec Prefer: wait, ou recevez un webhook signé à la fin de la vérification. Gérez à la fois une réponse terminée et une réponse en cours de traitement.
- Envoyez un en-tête Idempotency-Key avec chaque requête POST : un nouvel essai ne lance jamais deux fois la même vérification.
- Développez d’abord avec des clés fv_test_. Elles renvoient des résultats d’exemple fixes et ne sont jamais facturées.
- Les vérifications échouées ne sont pas facturées. Un service occupé répond 503 avec un en-tête retry-after, et vous réessayez avec la même clé.
- Les webhooks sont signés et suivent la spécification Standard Webhooks.
- Les fichiers jusqu’à 4 Mo passent en une seule requête multipart. Les fichiers plus volumineux utilisent une URL d’envoi présignée, dans la limite du modèle.
- Les requêtes sont limitées à 120 par minute et par clé.
Tarifs
Payez chaque vérification.
Un seul solde prépayé d’espace de travail couvre les vérifications d’images, de documents et de texte. Rechargez dès 19 $US. Pas d’abonnement, rien ne se renouvelle.
| Vérification | Facturé par | Prix |
|---|---|---|
| Vérification d’imageFacturé par image | image | 1,99 $US |
| Vérification de documentFacturé par document | document | 5,99 $US |
| Vérification de texteFacturé par 1 000 caractères | 1 000 caractères | 0,14 $US |
Pour chaque requête, le texte est arrondi aux 1 000 caractères supérieurs. Une vérification de texte demande au moins 100 mots.
Démarrage gratuit
Essayez avant d’ajouter des fonds.
Votre premier espace de travail démarre avec 5 vérifications gratuites d’images ou de documents et 5 000 caractères de texte gratuits.
Aucune carte n’est nécessaire pour commencer. Un démarrage gratuit par personne, et un nombre limité par domaine de messagerie d’entreprise. Vos collègues doivent rejoindre l’espace de travail sur invitation.
Questions fréquentes
Comment détecter des images générées par IA par API ?
Envoyez l’image avec POST /v1/files, puis lancez une vérification avec POST /v1/analyses et le modèle fvimg-2. La réponse contient le constat sur la génération par IA, les éventuelles zones retouchées, l’état des Content Credentials et un identifiant de rapport que chacun peut vérifier.
Repère-t-elle les parties retouchées d’une photo ?
Oui. La vérification indique si une partie de l’image a été modifiée et marque les zones en pixels, pour qu’un examinateur voie précisément ce qui est signalé. Les retouches locales et la génération par IA de l’image entière sont signalées séparément.
Peut-elle dire quel générateur a créé une image ?
Lorsque c’est possible, le rapport nomme le générateur probable et la manière dont il a été identifié. Beaucoup d’images n’en donnent aucun, et l’absence de nom ne signifie pas que l’image est authentique.
Lit-elle les Content Credentials et les filigranes ?
Oui. Elle lit les Content Credentials, filigranes et étiquettes IA inscrits dans le fichier et en indique l’état. Leur absence n’est pas un indice d’authenticité, car les métadonnées sont souvent supprimées lors du partage des images.
Les captures d’écran et les images compressées fonctionnent-elles ?
Vous pouvez les envoyer, mais les captures d’écran, la compression forte et le redimensionnement effacent des indices. Le rapport indique ce que le fichier a permis d’établir : lisez donc avec prudence les résultats à faible confiance.
Combien coûte une vérification d’image ?
1,99 $US par vérification d’image, prélevés sur un solde prépayé d’espace de travail que vous rechargez dès 19 $US. Votre premier espace de travail démarre avec 5 vérifications gratuites d’images ou de documents, et les clés de test ne sont jamais facturées. Les vérifications échouées ne sont pas facturées.
Quels formats et quelles tailles d’image sont acceptés ?
Formats acceptés : JPEG, PNG, WEBP. Les limites sont de 10 Mo et 40 mégapixels par image. Les fichiers jusqu’à 4 Mo passent en une seule requête multipart ; les fichiers plus volumineux utilisent une URL d’envoi présignée.
Vérifie-t-elle la vidéo, l’audio ou les visages ?
Non. Elle ne contrôle que des images fixes, ne compare pas les visages et n’identifie pas les personnes. Pour les documents, utilisez l’API de détection de fraude documentaire.
Guides
Des repères pratiques pour vos équipes de vérification.
Ce que chaque contrôle permet d’établir, la pièce à demander ensuite et la place du rapport Fileverity à chaque étape.
Images
Comment savoir si une image est générée par IA
Source, métadonnées, Content Credentials, filigranes et détecteur : la méthode pour établir l’origine d’une image et consigner un constat défendable.
21 min de lecture ·
Images
Captures d’écran et images compressées : comment vérifier leur authenticité ?
Messagerie, capture d’écran, redimensionnement : ce que la compression efface, quel fichier demander et comment interpréter un résultat limité.
16 min de lecture ·
Sinistres et remboursements
Fraude à l’assurance et IA : méthode d’examen des photos de sinistre
Photo générée, retouchée ou réutilisée : une méthode d’examen pour les gestionnaires de sinistres, avec cas pratique, demande de pièces et fiche de suivi.
19 min de lecture ·
Évaluer les outils de vérification
Choisir une API de détection d’IA : dix points à vérifier avant l’intégration
Grille d’achat d’une API de détection d’IA : limites d’entrée, résultats synchrones ou asynchrones, webhooks, preuves, conservation, mode test, tarifs.
20 min de lecture ·
Lancez votre première vérification en quelques minutes.
Ouvrez la Console, utilisez votre démarrage gratuit et envoyez une requête de test. N’ajoutez des fonds que lorsque vous êtes prêt à obtenir des résultats en mode Live.