Campaigns
Named operations with defined timeframes, target profiles, and objectives.
A campaign's status is derived when it is served: concluded if its end date has passed, active if it was last seen within the past 12 months, dormant if longer ago, and unknown if there is no last-seen date.
GET/campaigns
Returns all campaigns, ordered by start date.
GET/campaigns/:id
Full campaign detail with edges. Accepts UUID or slug.
