Overview
Campaigns capture structured user intent through interactive mechanics. They generate first-party preference signals (USER_DECLARED) that feed into the agentic product feed’s intent scoring. Campaigns belong to a creator within your organization and follow a defined lifecycle from draft to completion.
Campaign Types
Create a Campaign
This creates a campaign in
DRAFT status. Configure it with a PUT before publishing.
Configure a Draft Campaign
UsePUT /campaign/{id} to set up the campaign content, timing, and reward structure:
Configuration Fields
Campaign Lifecycle
Submit for Review
Publish
requiresReview: false to skip the SUBMITTED → APPROVED step and publish directly.
Update a Published Campaign
Only a subset of fields can be changed after publishing:title, description, hero, showInstructions, showLeaderboard, status.
Participation
Cast Votes (MULTIVARIANT)
Voting creates a
CampaignJourney record linking the user to the campaign and records individual CampaignVote entries. If a reward is configured, points are awarded automatically.
Submit Survey (SURVEY)
Survey responses are stored as
CampaignResponse records and feed into the enrichment pipeline as USER_DECLARED preference data.
Get Survey Report
Configure a Campaign Reward
Link an on-chain reward to a campaign:
At least one of
imageUrl or animationUrl is required.

