The coverage report
GET /v1/coverage answers one question: for this
entity, on this channel, in this market — what can I actually rely on?
Reading the fields
string
full — some source in the cascade fills this for essentially every entity.
partial — filled for a defined subset, described in note.
unavailable — no source in the cascade reports it here; the field is always null, and
running more sources would not change that.boolean
Whether the field can be used in
filters or as a sort key for this channel and market.
A partial field is often readable but not filterable, because filtering on it would silently
drop every entity where it is missing.integer | null
The usual delay between something happening on the channel and it being reflected here. Pair it
with
meta.refreshed_at on a record to know how current a number is.Per-record completeness
Coverage describes a channel and market.meta on each record describes that record.
number
The share of requested fields that came back populated. With
fields set on an enrich call,
it is measured against exactly what you asked for.string[]
Which fields are
null and why they are absent — either unavailable for this channel and
market, or not populated for this particular entity.status: "partial" when some requested fields could not be filled. That
is a successful call with an incomplete answer, and it is worth branching on:
Freshness
Refresh cadence varies by entity, and it follows how fast the underlying thing actually changes.meta.refreshed_at is when Unif last refreshed the record — not when you called. Two records in
the same response can legitimately carry different timestamps, because they were refreshed on
different cycles.Building against coverage rather than around it
1
Check coverage when you add a market
Not on every request — coverage changes on the order of weeks, usually when the cascade gains
a source or one is re-tuned. A weekly sync into your own config is the right cadence.
2
Degrade filters rather than failing
If
gpm is not filterable in a market, fall back to filtering on revenue and ranking by
gpm client-side over a wider result set.3
Alert on completeness drops
A sustained fall in
meta.completeness for an entity you track is an upstream change worth
knowing about before your dashboards start looking wrong.