Skip to main content

Overview

The date system resolves a meaningful display date for every content post. External content shows its actual content date (e.g., a 2022 tweet imported in 2025 shows 2022), not its import date.

Date Fields

FieldTableDescription
event_datetimecontent_postsCanonical content date (from platform data or first user override)
created_atcontent_postsDB insertion timestamp (fallback)
display_dateuser_post_relationshipsPer-user date override

Resolution Priority

User-specific contexts (portfolio, library):
  1. UserPostRelationship.display_date (user override)
  2. ContentPost.event_datetime (platform/crowdsourced date)
  3. ContentPost.created_at (import date)
User-agnostic contexts (topic pages, explore, feeds):
  1. ContentPost.event_datetime
  2. ContentPost.created_at

How event_datetime Gets Populated

ScenarioTimingAction
Canonical post with embed_data.created_atAt importParsed and set automatically
User sets date on canonical post (no existing date)User actionFirst override seeds event_datetime
User sets date on owned postUser actionWritten to both relationship and post

Platform Date Availability

PlatformDate AvailableMethod
Twitter/XYesSnowflake ID bit-shift
YouTubeYesJSON-LD uploadDate
TikTokNooEmbed doesn’t provide date
InstagramNooEmbed doesn’t provide date