Skip to content
SEO Optimizer is live, Audit on page SEO and AI-search readiness. Try it free

Référence de l'API

Propriétés

Une propriété regroupe les sites et dépôts d'un produit. Ces endpoints renvoient son score global, le score de chaque outil, les constats de tous les outils dans une seule liste et la suite à donner.

Les propriétés se créent dans l'app, sur Propriétés. L'API les lit : toute clé convient, même en lecture seule. Une clé d'équipe voit les propriétés de l'équipe.

Lister les propriétés

GET/api/v1/properties

Toutes les propriétés de l'équipe (ou du titulaire) de la clé, avec les scores par outil.

Réponse

json
{
  "properties": [
    {
      "id": "cm9prop...",
      "name": "Acme Store",
      "category": "ecommerce",
      "client": null,
      "score": 76,
      "lastScannedAt": "2026-11-12T09:30:00.000Z",
      "openTasks": 4,
      "targets": [
        { "target": "shop.acme.com", "kind": "site" },
        { "target": "acme/storefront", "kind": "repo" }
      ],
      "tools": [
        { "tool": "audit", "score": 86, "change": 3, "scanned": 1, "of": 1, "at": "2026-11-12T09:30:00.000Z" },
        { "tool": "security", "score": 54, "change": -12, "scanned": 1, "of": 1, "at": "2026-11-10T08:00:00.000Z" }
      ]
    }
  ]
}

Lire une propriété

GET/api/v1/properties/{id}

Une propriété avec son évolution sur 30 jours, ses problèmes fusionnés et ses prochaines étapes.

Paramètres de chemin

idstringObligatoireL'id de la propriété, issu de la liste.

Réponse

json
{
  "id": "cm9prop...",
  "name": "Acme Store",
  "score": 76,
  "trend": [{ "day": "2026-11-12", "score": 76 }],
  "issues": [
    {
      "title": "Missing Content-Security-Policy",
      "severity": "high",
      "tools": ["security", "audit"],
      "targets": ["shop.acme.com"],
      "places": 1,
      "task": { "id": "cm9task...", "status": "open", "assignee": "Sam Lee" },
      "url": "https://www.scanverra.com/security-scan/cm9scan...?finding=..."
    }
  ],
  "nextSteps": [
    { "kind": "secretsLive", "tool": "security", "target": "shop.acme.com", "url": "https://www.scanverra.com/security-scan?url=..." }
  ],
  "packs": [
    {
      "ref": "checkout-security",
      "name": "Checkout security",
      "official": true,
      "pass": false,
      "passed": 5,
      "total": 7,
      "rules": [
        { "kind": "minScore", "tool": "security", "expected": 85, "actual": 50, "pass": false }
      ]
    }
  ]
}

Champs

scorenumber | nullFacultatifLa santé globale : la moyenne de chaque outil sur les cibles de la propriété, puis les outils à poids égal. null tant que rien n'a été analysé.
tools[]object[]FacultatifUne entrée par outil ayant analysé la propriété : score, évolution depuis l'analyse précédente, nombre de cibles analysées (scanned sur of) et date.
issues[]object[]FacultatifLes constats des dernières analyses de tous les outils, fusionnés : un même problème signalé par deux outils est une entrée, avec les deux dans tools et le nombre d'occurrences dans places.
issues[].taskobject | nullFacultatifLa tâche de remédiation ouverte pour ce problème, si quelqu'un en est chargé.
nextSteps[]object[]FacultatifQuoi analyser ou corriger ensuite, le plus urgent d'abord (types ci-dessous). url ouvre la bonne page avec la cible préremplie.
packs[]object[]FacultatifPacks de règles installés sur la propriété (depuis la marketplace), chacun vérifié avec ses dernières analyses : pass, combien de règles réussissent (passed sur total) et chaque règle avec son seuil (expected) et sa valeur actuelle (actual). Les noms des packs officiels sont en anglais.
trend[]object[]FacultatifLe score global par jour sur les 30 derniers jours.

Types de prochaine étape

nextSteps croise les outils : un constat dans un outil renvoie vers l'analyse ou le correctif qu'un autre outil permet.

  • secretsLive

    Le dépôt divulgue un secret : vérifiez ce que le site en ligne expose.

  • regression

    Le score d'un outil a baissé de 10 points ou plus depuis l'analyse précédente.

  • run360

    La plupart des outils n'ont pas encore vérifié un site.

  • headersInCode

    Le site en ligne n'a pas certains en-têtes de sécurité et son dépôt fait partie de la propriété.

  • neverScanned

    Un outil n'a jamais tourné sur une cible.

  • stale

    La dernière analyse d'une cible date de plus de 30 jours.

  • linkRepo

    La propriété a des sites mais aucun dépôt.

  • addSite

    La propriété a des dépôts mais aucun site.

Exemples

curl https://www.scanverra.com/api/v1/properties \
  -H "X-API-Key: $SCANVERRA_API_KEY"