Get Feed Facets

Changed on

Catalogue breakdown of this org's feed by one filter dimension.

by (required) is tags, section, author, content_type or metadata.<key> — the include dimensions /feed/filter accepts. min drops values with fewer matches. Honors the same media negotiation (supportedContentTypes/mediaContractVersion) and exclude.* rules as /feed/filter, so for any value v::

data.counts[v] == total items /feed/filter?<by>=v would page through

Counts are over published, ready, non-deleted content of a supported type (base_feed_conditions); each content row counts once per distinct value it carries. Response::

{"data": {"by": "tags", "counts": {"baseball": 183, "hockey": 111}},
 "meta": {"request_id": "..."}}

counts is ordered by count descending, then value ascending. Invalid by → 400. One aggregate query per org/dimension/filter combination, shared through Redis for FACETS_CACHE_TTL_S (60 s) when Redis is configured — the publishable key ships in client apps that call this on every launch, and the unnest over the org's catalogue is the kind of hot-table scan robots_results.org_tag_taxonomy bounds elsewhere.

Orgs with discovery_feed_enabled route filtered requests through the discovery pipeline, which (absent media negotiation) only serves video/live_stream; the counts mirror that pool, and equal its X-Pool-Size header for the same filter. Per-viewer "seen" dedupe happens after the pool, so a given viewer may receive fewer items.

get/v1/feed/facets

Request

  • Base URL
    https://api.shortkit.dev (the document declares no server; this is the origin it was published from)
  • Auth
    none declared

Query parameters

bystring nullable
mininteger

Response

Successful Response

unknown required

Changes