Rising Tide Developers
Reference

Contribution Roles Reference

Complete reference for ContributionRole - allocation rules, auto-derivation, and on-chain settlement.

ContributionRole has eight values in two tiers:

  • Creator-allocated (CREATOR, COLLABORATOR) - the creator sets the recipient and percentage freely from their remainder.
  • Protocol-routed (TEMPLATE_ARTIST, STICKER_ARTIST, CONTRACT_TEMPLATE_DEVELOPER, FUNDING_GROUP, PLATFORM, APP_HOST) - the server derives both recipient and rate from the registered asset, approved group, or app record.

Role reference

CREATOR

  • Required: Exactly one per smart product
  • Auto-derived: No
  • Percentage: Calculated as 100 - sum(all other roles)
  • Notes: Cannot be removed after creation

COLLABORATOR

  • Required: No
  • Auto-derived: No
  • Notes: Requires recipientAddress; up to (10 - other contributions) allowed

TEMPLATE_ARTIST

  • Auto-derived: Yes - from StyleSet.royaltyPercentage
  • Default percentage: 20% (overridable via StyleSetProductType.royaltyPercentage)
  • Notes: One per product; adding a StyleSet replaces the previous TEMPLATE_ARTIST row

STICKER_ARTIST

  • Auto-derived: Yes - when a sticker is applied
  • Default percentage: none - read from Sticker.royaltyPercentage, set by the artist at publish time
  • Notes: One per product

FUNDING_GROUP

  • Required: No
  • Constraint: FundingGroup must be APPROVED or VERIFIED, not blacklisted, and have a stxAddress
  • Notes: Multiple FUNDING_GROUP contributions allowed per product (one row per pick); subject to the overall 10-contribution cap

PLATFORM

  • Required: No
  • Auto-derived: No
  • Notes: No rows seeded at launch. Reserved for future protocol fee. Not user-configurable.

CONTRACT_TEMPLATE_DEVELOPER

  • Required: No
  • Auto-derived: Yes - from the contract template the product deploys from
  • Notes: Protocol-routed supply-chain role. Recipient and rate are derived server-side; not user-configurable. Inert (rate 0) until the protocol fee is switched on.

APP_HOST

  • Required: No
  • Auto-derived: Yes - from the app record that hosts the product
  • Notes: Protocol-routed supply-chain role. Recipient and rate are derived server-side; not user-configurable. Inert (rate 0) until the protocol fee is switched on.

Allocation rules

RuleDetail
Percentages must sum to 100%Enforced at API validation
Max 10 contributionsAcross all roles
Positions frozen at deployfreezePositions() called before contract generation
CREATOR is requiredExactly one, cannot be skipped