Skip to main content

CSV exports

Insights → Exports downloads your data as CSV. Exports are available to every member of the project on every plan, have no row limit, and are streamed (large campaigns download as fast as the connection allows).

ExportScopeEndpoint (API, for automation)
Participantsthe whole projectGET /v1/projects/:projectId/exports/participants.csv
Participantsone campaignGET /v1/projects/:projectId/campaigns/:campaignId/exports/participants.csv
Submissionsone campaign, optional ?status= and ?questId=…/campaigns/:campaignId/exports/submissions.csv
Leaderboardone campaign…/campaigns/:campaignId/exports/leaderboard.csv
Distributionone campaign…/campaigns/:campaignId/exports/distribution.csv

Files are named <project>-<campaign>-<kind>-<date>.csv.

Format​

  • UTF-8 with a byte order mark (spreadsheets detect the encoding), RFC 4180 quoting, CRLF line ends.
  • Dates are ISO 8601 in UTC; token amounts in base units are plain integers.
  • Formula-injection guard: a text cell starting with =, +, -, @, a tab or a line break (including full-width forms) is prefixed with a single quote, so earner-supplied text never runs as a spreadsheet formula.
  • No e-mail addresses are exported. Earners are identified by their public id (dymauser_…), username and wallets.
  • Points follow the platform rule: the sum of the points credited by verified submissions, per earner.

Columns​

Participants​

ColumnContent
user_public_idstable public id of the earner
username, display_nameprofile names
account_statusactive or suspended
primary_walletthe earner's primary wallet
walletsevery linked wallet
campaignsproject export only: campaigns the earner took part in
submissionssubmissions made
completionsverified submissions
quests_completeddistinct quests completed
points, xpcredited points and XP
first_activity, last_activityfirst and last submission

Submissions​

submission_id, created_at, updated_at, verified_at, claimed_at, status, quest_id, quest_slug, quest_title, task_type, verification_method, user_public_id, username, display_name, wallet_address, points_awarded, xp_awarded, period_key (the day, interval or once a completion belongs to), reject_reason, inputs_json (what the earner submitted).

A verified submission has status = claimed and verified_at = claimed_at (points are credited at verification).

Leaderboard​

rank, user_public_id, username, display_name, account_status, primary_wallet, points, xp, completions, quests_completed, share_pct (share of the campaign's points), last_verified_at.

Distribution​

ColumnContent
rankby points
user_public_id, usernamethe earner
payout_address, payout_address_sourcewhere the payout goes; wallet (linked on the chain), derived (same key, other chain) or manual
pointsthe earner's campaign points
share_pctshare of the distributed amount
amount_base, amount_displaypayout in base units and in token units
denom, symbolthe reward token
statusprojected before the list is frozen, then pending, committed, paid, failed, skipped or excluded
tx_hashpayout transaction (manual payouts, or the escrow's)
batchmanual payout batch number
excluded_reasonno_payout_address, below_min, suspended, project_member, duplicate_address, forbidden_address
paid_atwhen the payout was recorded

The older GET /v1/projects/:projectId/participants/export (CSV wrapped in JSON) still answers but is deprecated: use the streamed files above.