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

Referência da API

Propriedades

Uma propriedade agrupa os sites e repositórios de um produto. Estes endpoints retornam a pontuação combinada, a de cada ferramenta, as descobertas de todas as ferramentas em uma lista e o que fazer a seguir.

As propriedades são criadas no app, em Propriedades. A API apenas lê: qualquer chave serve, inclusive as somente leitura. Uma chave de time vê as propriedades do time.

Listar propriedades

GET/api/v1/properties

Todas as propriedades do time (ou do dono) da chave, com pontuações por ferramenta.

Resposta

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" }
      ]
    }
  ]
}

Obter uma propriedade

GET/api/v1/properties/{id}

Uma propriedade com a evolução de 30 dias, os problemas unificados e os próximos passos.

Parâmetros de caminho

idstringObrigatórioO id da propriedade, vindo da lista.

Resposta

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 }
      ]
    }
  ]
}

Campos

scorenumber | nullOpcionalA saúde combinada: a média de cada ferramenta nos alvos da propriedade, depois as ferramentas com o mesmo peso. null enquanto nada foi verificado.
tools[]object[]OpcionalUma entrada por ferramenta que verificou a propriedade: pontuação, mudança desde a verificação anterior, quantos alvos verificou (scanned de of) e quando.
issues[]object[]OpcionalAs descobertas das últimas verificações de todas as ferramentas, unificadas: o mesmo problema vindo de duas ferramentas é uma entrada, com as duas em tools e quantas vezes apareceu em places.
issues[].taskobject | nullOpcionalA tarefa de remediação aberta para o problema, se alguém foi designado.
nextSteps[]object[]OpcionalO que verificar ou corrigir a seguir, o mais urgente primeiro (tipos abaixo). url abre a página certa com o alvo já preenchido.
packs[]object[]OpcionalPacotes de políticas instalados na propriedade (do marketplace), cada um verificado com as varreduras mais recentes: pass, quantas regras passam (passed de total) e cada regra com seu limite (expected) e valor atual (actual). Os nomes dos pacotes oficiais estão em inglês.
trend[]object[]OpcionalA pontuação combinada por dia nos últimos 30 dias.

Tipos de próximo passo

nextSteps cruza as ferramentas, então uma descoberta em uma aponta para a verificação ou a correção que outra torna possível.

  • secretsLive

    O repo vaza um segredo: confira o que o site no ar expõe.

  • regression

    A pontuação de uma ferramenta caiu 10 pontos ou mais desde a verificação anterior.

  • run360

    A maioria das ferramentas ainda não verificou um site.

  • headersInCode

    O site no ar não tem alguns cabeçalhos de segurança e o repo dele está na propriedade.

  • neverScanned

    Uma ferramenta nunca rodou em um alvo.

  • stale

    A última verificação de um alvo tem mais de 30 dias.

  • linkRepo

    A propriedade tem sites, mas nenhum repositório.

  • addSite

    A propriedade tem repositórios, mas nenhum site.

Exemplos

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