The content object
records returns a content array of ranked items. Each item carries the source metadata (platform, title, tags, engagement counts, publishedAt, creatorId, …) plus a set of normalized signals and a single ranking score the list is sorted by.
Every signal is normalized within the result set for that query — values are relative to the other items returned, not absolute.
Signal reference
Ranking — exampleRankingScore
The ranking score branches on engagement coverage — the fraction of items in the set with views > 0 — so sorting stays reliable even on sparse social data.
Sufficient engagement data (coverage ≥ 0.3):
Engagement is gated behind relevance (the relevance · engagementScore product), so an irrelevant viral clip can’t leapfrog on engagement alone.
Sparse engagement data (coverage < 0.3):
The content list is returned sorted by exampleRankingScore descending.
Weights are tuned as the ranking model evolves — treat the exact coefficients as current behavior, not a fixed contract.
Enrichment
Each item also carries an optional enrichment object — LLM-derived content attributes used for analysis and filtering: themes, aestheticStyle, emotionMood, brandProducts, tone (+ toneConfidence), noveltyScore, saturationScore, and a coverage flag set (attributes / novelty / sentiment) marking which attributes were computed. Fields are null when an attribute wasn’t available for that item.
Relationship graph edges
records also returns a graph over the result set (see the API Reference). Two content nodes are linked by:
semantic_similarity— when the cosine similarity of their media vectors is ≥ 0.84.tag_overlap— otherwise, when the Jaccard overlap of their tags is ≥ 0.28.
Plus creator_posted, tagged_with and contains edges connecting creators, tags and narratives.