Aller au contenu

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.

Commencer gratuitementLire la documentation

Démarrage gratuit : 5 vérifications d’images ou de documents et 5 000 caractères de texte. Sans carte, sans abonnement.

En un coup d’œilfvimg-2
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.

Questions traitées par la vérification d’image et champs de la réponse qui les portent
QuestionCe qui est examinéChamp de la réponse
Génération par IASi l’image semble générée, avec une probabilité et, lorsque c’est possible, le générateur probable.questions.ai, generator
Retouches localesSi une partie de l’image a été modifiée, avec les zones marquées en pixels.questions.edit, regions
Content Credentials, filigranes et étiquettes IACe que les données propres au fichier affirment sur son origine, et si ces affirmations tiennent.questions.source, provenance
Métadonnées du fichierL’appareil, le logiciel et la date de prise de vue mentionnés dans les données du fichier.provenance
Verdict et confianceUn 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.

RequêtePOST /v1/files, POST /v1/analyses
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\"}}"
Réponse200 OK
{  "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}
La première requête envoie le fichier, la seconde lance la vérification. La réponse montre une vérification terminée.

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.

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.

Tarifs de l’API et de la Console
VérificationPrix
Vérification d’imageFacturé par image1,99 $US
Vérification de documentFacturé par document5,99 $US
Vérification de texteFacturé par 1 000 caractères0,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.

Tous les guides

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.