← Glossary

Absence-is-data

The contract rule that an AI surface returning nothing for a query is a valid, reportable result — not an error, and never a fabricated answer. If no AI Overview appears, the capture still completes: the surface is recorded as absent and the job is flagged, so downstream metrics can count the absence. Coercing absence to zero, retrying it away, or inventing content would corrupt visibility data.

In AI Search API

Enforced at the schema level: an Envelope with provenance.surfacePresent: false must carry the surface_absent warning and finish with status "completed" — the public contract rejects anything else. A query where your brand or an AI module simply did not show up is a data point you keep, not a request that failed.

GET /v1/jobs/:id — an absent surface, honestly reported
{
  "job": {
    "status": "completed",
    "warnings": ["surface_absent"]
  },
  "provenance": {
    "surfacePresent": false
  }
}

Related terms

See it in the product

Every definition here is enforced in the Envelope contract — run a capture and read the fields yourself.