Discovery

Absence — why a factor is NOT in the corpus

Open (no key). The reasoned counterpart to /v1/coverage: where that reports a zero, this reports why. Each record carries the subject, the publisher we checked, the route we tried, a confidence and a review date. Five classifications: "structural" (no publisher issues this anywhere — stop retrying), "not_yet_sourced" (a publisher exists and is named; our backlog), "refused" (we found it and declined; the reason is stated), "held_not_counted" (we DO hold it — see we_hold for the key — and the coverage metric cannot see it), and "coupled" (zero only because another family is zero). These are authored judgements about what the world publishes, not values derived from our corpus, so each carries a review date and reports stale:true once past it.

get/v1/absence

Request

  • Base URL: https://api.greencalculus.com
  • URL: https://api.greencalculus.com/v1/absence
  • Auth: none required

Query parameters

countrystring

ISO-3166 alpha-3 code.

familystring

Inventory family, as used by /v1/coverage.

classificationstring

structural | not_yet_sourced | refused | held_not_counted | coupled.

Response

Absence records + the classification legend + caveat

countinteger
classificationsobject

The vocabulary and what each class commits us to — structural, not_yet_sourced, refused, held_not_published, not_surveyed.

absenceobject

Keyed by pattern (e.g. "*.grid").

caveatstring
evidencestring

Public pointer to the gap classification that produced these records.

docsstring uri
metaobject

Example response

{
  "receipt": {
    "id": "gcr_5a7b64dfa501bfea508cba7d0e5d8d03…",
    "algorithm": "sha256",
    "mb_version": "2026.180"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.