# Une alternative à Perspective API qui se remplace sans rien réécrire

> Perspective API ferme le 31 décembre 2026. VigiMod répond aux mêmes requêtes comments:analyze : changez l'hôte et la clé, gardez votre code. Gratuit pendant la bêta, 26 langues.

Source: https://www.vigimod.com/fr/perspective-api-alternative · VigiMod (https://www.vigimod.com) · 2026-11-15

Perspective API de Google cesse de répondre le 31 décembre 2026. VigiMod répond aux mêmes requêtes sur le même chemin : changez l'hôte et la clé, et votre code, plugin ou script continue de fonctionner. Gratuit pendant la bêta, entraîné sur 26 langues.

## Changez l'hôte et la clé, rien d'autre

Le même chemin (/v1alpha1/comments:analyze), le même JSON en entrée et en sortie, la clé dans ?key= comme avant (ou dans l'en-tête X-API-Key).

### Avant : Perspective API

```python
import requests

r = requests.post(
    "https://commentanalyzer.googleapis.com/v1alpha1/comments:analyze",
    params={"key": PERSPECTIVE_KEY},
    json={
        "comment": {"text": message},
        "languages": ["it"],
        "requestedAttributes": {"TOXICITY": {}, "INSULT": {}, "THREAT": {}},
    },
)
scores = {k: v["summaryScore"]["value"] for k, v in r.json()["attributeScores"].items()}
flagged = scores["TOXICITY"] >= 0.8
```

### Après : VigiMod

```python
import requests

r = requests.post(
    "https://api.vigimod.com/v1alpha1/comments:analyze",   # the only changes:
    params={"key": VIGIMOD_KEY},            # host and key
    json={
        "comment": {"text": message},
        "languages": ["it"],
        "requestedAttributes": {"TOXICITY": {}, "INSULT": {}, "THREAT": {}},
    },
)
scores = {k: v["summaryScore"]["value"] for k, v in r.json()["attributeScores"].items()}
flagged = scores["TOXICITY"] >= 0.8
```

### curl

```bash
curl -s "https://api.vigimod.com/v1alpha1/comments:analyze?key=$VIGIMOD_KEY" \
  -H "Content-Type: application/json" \
  -d '{"comment": {"text": "sei proprio un idiota"},
       "requestedAttributes": {"TOXICITY": {}, "SEVERE_TOXICITY": {}}}'

# {"attributeScores": {
#    "TOXICITY": {"summaryScore": {"value": 1.0, "type": "PROBABILITY"}},
#    "SEVERE_TOXICITY": {"summaryScore": {"value": 0.6, "type": "PROBABILITY"}}}}
# an insult: toxic, but not hate or a threat, so not severe
```

### Node.js

```js
const r = await fetch(
  `https://api.vigimod.com/v1alpha1/comments:analyze?key=${process.env.VIGIMOD_KEY}`,
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      comment: { text: message },
      requestedAttributes: { TOXICITY: {}, PROFANITY: {} },
    }),
  },
);
const { attributeScores } = await r.json();
const toxicity = attributeScores.TOXICITY.summaryScore.value;
```

## Outils basés sur Perspective

### Coral

Admin → Configure → Moderation → filtre de commentaires toxiques Perspective : réglez l'endpoint sur https://api.vigimod.com/v1alpha1 et la clé sur votre clé VigiMod. Montez le timeout à 3000 ms : si la réponse arrive en retard, Coral publie le commentaire sans score.

### Discourse

Le plugin officiel Perspective appelle directement l'hôte de Google et n'a pas de réglage pour le changer : dans votre copie du plugin, remplacez commentanalyzer.googleapis.com par api.vigimod.com et mettez votre clé VigiMod dans perspective_google_api_key.

### Drupal, WordPress et vos propres scripts

Tout module ou script qui permet de régler l'URL de Perspective fonctionne : utilisez https://api.vigimod.com/v1alpha1/comments:analyze avec votre clé VigiMod. Si l'URL est écrite dans le code, c'est une ligne à changer.

## Comment chaque attribut de Perspective est calculé

| Attribut Perspective | VigiMod utilise | Note |
|---|---|---|
| TOXICITY | toxic | Messages grossiers, irrespectueux ou agressifs, insultes, haine et menaces compris. |
| SEVERE_TOXICITY | hate, threat, toxic (au plus 0,6) | Haine et menaces ; un message seulement grossier reste sous 0,7. |
| IDENTITY_ATTACK | hate | Attaques contre des personnes pour ce qu'elles sont. |
| INSULT | insult | Insultes visant une personne. |
| THREAT | threat | Menaces de violence ou de préjudice. |
| SEXUALLY_EXPLICIT | sexual | Contenu sexuel. |
| PROFANITY | règle intégrée | Jurons et langage vulgaire, dans toutes les langues (OBSCENE est aussi accepté). |
| FLIRTATION | règle intégrée | Drague et avances sexuelles (expérimental dans Perspective). |
| SPAM | advertising | Publicité non sollicitée. |
| Autres | — | ATTACK_ON_AUTHOR, INCOHERENT, INFLAMMATORY, LIKELY_TO_REJECT, UNSUBSTANTIAL et les attributs bridging renvoient une erreur 400 qui les nomme. |

## Ce qu'il faut savoir avant de changer

- Les scores viennent du modèle de VigiMod, pas de celui de Perspective. Ils sont remis à l'échelle pour que 0,7 soit le seuil réglé de VigiMod pour chaque attribut : des seuils entre 0,7 et 0,9 se comportent de façon sensée, mais vérifiez les vôtres sur quelques jours de vrais messages.
- Un attribut que VigiMod ne calcule pas renvoie une erreur 400 explicite, jamais un nombre inventé. Les noms _EXPERIMENTAL sont acceptés.
- context.entries est utilisé : les messages précédents changent les scores, donc les réponses, les blagues et les citations sont lues avec ce qui précède.
- Les commentaires de plus de 1 000 caractères sont évalués par parties, jusqu'à 10 000 caractères ; chaque partie compte comme un message pour la limite de débit, et spanScores donne le score de chaque partie.
- Rien n'est conservé : les commentaires sont évalués puis supprimés, et comments:suggestscore est accepté mais ses scores ne sont pas gardés.
- Toutes les langues sont acceptées : le modèle a été entraîné sur 26 et fonctionne le mieux en anglais, italien, espagnol, français, allemand et portugais.

## Quand vous voulez plus que Perspective

L'endpoint compatible est le changement rapide. L'endpoint natif /moderate, avec la même clé, ajoute :

- Des règles personnalisées en langage naturel, comme « Interdit de vendre des comptes », chacune avec son score.
- Des scores d'automutilation, de publicité et de spam par utilisateur, et des listes d'injures discriminatoires par catégorie.
- Des politiques créées dans le tableau de bord, avec des actions si/alors (supprimer, timeout, ban), une file de revue et des webhooks.
- La même confidentialité : les messages sont vérifiés puis supprimés, jamais utilisés pour entraîner des modèles.

## Migrez en trois étapes

1. Créez un compte gratuit et une clé API.
2. Remplacez commentanalyzer.googleapis.com par api.vigimod.com, et votre clé Perspective par la clé VigiMod.
3. Observez quelques jours de vrais messages et ajustez vos seuils si besoin.

## Questions

### Quand Perspective API cesse-t-elle de fonctionner ?

Selon l'annonce de Jigsaw, elle n'accepte plus de nouvelles demandes d'accès depuis février 2026 et continue de répondre aux utilisateurs existants jusqu'au 31 décembre 2026.

### Perspective API est-elle gratuite ?

Elle était gratuite, avec un quota par projet. Après le 31 décembre 2026, elle ne répond plus à personne, donc une offre gratuite ne sert plus à rien. VigiMod est gratuit pendant la bêta.

### Qu'est-ce qui remplace Perspective API ?

Google n'a pas publié de successeur direct. VigiMod répond aux mêmes requêtes comments:analyze, donc le code écrit pour Perspective continue de fonctionner avec un nouvel hôte et une nouvelle clé.

### Dois-je changer mon code ?

Seulement l'hôte et la clé. La requête et la réponse ont la même forme ; un attribut que VigiMod ne calcule pas renvoie une erreur 400 qui le nomme.

### Les scores sont-ils les mêmes que ceux de Perspective ?

Aucun modèle ne donne les mêmes chiffres. Les deux renvoient une probabilité de 0 à 1 par attribut, et ceux de VigiMod sont remis à l'échelle pour que 0,7 soit son seuil. Vérifiez vos seuils sur vos propres messages.

### Quelles langues sont prises en charge ?

Il a été entraîné sur 26 langues et fonctionne le mieux en anglais, italien, espagnol, français, allemand et portugais. Tous les codes de langue sont acceptés.

### VigiMod est-il gratuit ?

Oui, pendant la bêta : toutes les fonctions, 120 messages par minute et par clé, jusqu'à 10 clés.

Documentation: https://www.vigimod.com/en/docs#perspective · Benchmark: https://www.vigimod.com/en/benchmark · Support: support@vigimod.com
