This document defines the end-to-end Sponsor and Partner Marketplace for CommDesk.
It is aligned with current project docs and source code:
docs/CommDesk-Event-System.mddocs/CommDesk-Member-System.mddocs/CommDesk-Participant-Platform-System.mddocs/CommDesk-Judging-System.mddocs/CommDesk-RSVP-System.mddocs/Community-Signup-System.mdsrc/features/Events/v1/Constants/Event.constant.tssrc/features/Events/v1/Components/Partners_And_Sponsors.tsxsrc/features/AddMember/v1/Constant/Role.constant.tssrc/features/AddMember/v1/Constant/Interest.constant.ts
This is a 0 -> MONSTER specification, but grounded in the current CommDesk baseline and practical implementation phases.
A global platform where sponsors and communities discover, connect, collaborate, and grow in one place.
This replaces fragmented workflows like forms, cold outreach, and manual deal tracking.
Make CommDesk the default platform for sponsorships in developer communities.
Three primary business entities:
- Sponsors and Partners (organizations)
- Communities (organizer workspaces)
- Events (hackathons, workshops, meetups, etc.)
Platform rule:
- organizations are global records
- event sponsor entries are event-level assignments
- one organization can support many communities and many events
Core identity model (aligned with Member and Signup docs):
User -> login/auth account
Organization -> sponsor or partner company/profile
Member -> community-scoped role
Event -> actual program
Important relationship:
One User can belong to multiple communities via Member records.
This is what already exists in repository code today.
From src/features/Events/v1/Components/Partners_And_Sponsors.tsx:
- panel with count badge
Addaction button- expand/collapse via
HideandView - cards rendered with category-based styling
From src/features/Events/v1/Constants/Event.constant.ts:
SPONSOR_CATEGORYPARTNER_CATEGORYPARTNERS_AND_SPONSORS_TIERPARTNERS_AND_SPONSORS_CATEGORY
These values are currently the source-of-truth labels for event UI and should be preserved by backend validation.
From src/features/AddMember/v1/Constant/Role.constant.ts:
Partnerships LeadSponsorship LeadIndustry Relations Lead
From src/features/AddMember/v1/Constant/Interest.constant.ts:
PARTNERSHIPS & SPONSORSHIPS
Today, sponsor and partner records in the event panel are frontend mock data.
This doc defines the production architecture to move from UI-only data to a global marketplace with requests, deals, contracts, payments, and analytics.
Global Marketplace
-> Organization Directory
-> Opportunities
-> Requests
-> Negotiations
-> Deals
-> Contracts
-> Payments
-> Analytics
-> Hiring
Connected to:
-> Event System
-> Member System
-> Participant Platform
-> Judging System
-> RSVP System
Design principles:
- global profile first, event assignment second
- no duplicate organization records per event
- full auditability for requests, negotiation, and payment state changes
- role-gated access per community and organization
Route:
/become-sponsor
Required input:
- company name
- logo
- website
- official email
- industry
- budget range
- sponsorship type
System checks:
- organization legitimacy
- domain and email consistency
- duplicate domain/profile detection
- trust and spam signals
Verification states:
Pending Verification
Verified
Community Added
Disabled
Create:
- User account(s)
- Organization profile
- default organization role assignment
Security alignment with Member/Signup docs:
- do not send plain temporary passwords
- send secure activation/reset link
- enforce password setup during first login
Activation outcome:
Organization status -> Active
- legalName
- displayName
- logoUrl
- website
- industry
- shortDescription
- longDescription
- technologies[]
- developerTools[]
- supportedRegions[]
- preferredEventTypes[]
- supportedCommunityTypes[]
- budgetRange
- availableSponsorshipTypes[]
- primaryEmail
- businessEmail
- devRelEmail
- hiringEmail
- billingEmail
- verificationStatus
- reputationScore
- communitiesSupportedCount
- eventsSponsoredCount
- developersReachedCount
Communities can:
- create events
- create sponsorship opportunities
- send outbound sponsor requests
- receive inbound sponsor applications
- negotiate and finalize deals
- track fulfillment and outcomes
Core use cases:
- Community outbound request:
Community creates event -> sends request to sponsor -> negotiates -> closes deal
- Sponsor inbound application:
Sponsor browses opportunities -> applies -> community accepts -> sponsor assigned to event
- Recurring partner program:
Organization creates long-term program -> supports multiple communities/events over time
Each opportunity is linked to an event.
Example:
HackFest 2026
500 participants
Looking for Platinum Sponsor
Budget: INR 5L
Benefits: logo, workshop, hiring access
Opportunity includes:
- event snapshot
- desired sponsor category
- requested budget range
- offered benefits
- timeline and decision deadline
Two symmetric paths must be supported.
- discover organizations
- send request
- sponsor responds
- browse opportunities
- apply
- community accepts/rejects
Sponsor workspace inbox should include:
- incoming requests
- submitted applications
- active negotiations
- accepted deals
- historical contracts
Inbox filters:
- status
- event type
- region
- budget band
- community reputation
Negotiation must support:
- budget counter offers
- benefit edits
- term edits
- threaded messages
- multi-step revision history
Suggested status flow:
Pending -> Negotiation -> Accepted | Rejected | Withdrawn | Expired
After negotiation acceptance:
Deal accepted -> Contract generated -> Both sides sign
Contract snapshot should include:
- final amount and currency
- deliverables and benefits
- SLA and timelines
- cancellation and dispute terms
- signatures and signed timestamps
Suggested contract statuses:
Draft -> PendingSignature -> Signed -> Completed | Cancelled | Disputed
Recommended flow:
Sponsor -> CommDesk escrow -> Community
Payment features:
- invoice generation
- platform fee calculation
- escrow hold
- payout release on milestone or event completion
- refund/dispute handling
Suggested statuses:
Initiated -> InEscrow -> Released | Refunded | Failed | Disputed
Note:
- payment gateway integration is a backend roadmap item
- no production payment module exists in current source yet
Reputation should be computed for both organizations and communities.
Inputs:
- deal success rate
- response speed
- completion quality
- review rating
- dispute frequency
Used for:
- ranking
- trust scoring
- marketplace filtering
- spam/fraud control
Matching signals:
- event type and category
- participant scale
- region
- tech stack relevance
- historical sponsorship outcomes
Examples:
AI event -> AI companies
Web event -> frontend and devtools companies
Cloud event -> AWS, Azure, GCP aligned sponsors
Sponsors and partners must appear in events with:
- logo
- category label
- website
Event assignment layer uses existing event APIs from Event System docs:
GET /api/v1/events/:eventId/partners
POST /api/v1/events/:eventId/partners
PATCH /api/v1/events/:eventId/partners/:linkId
DELETE /api/v1/events/:eventId/partners/:linkId
Category compatibility rule:
- backend must accept current category labels from
SPONSOR_CATEGORYandPARTNER_CATEGORY - backend must map to normalized tier keywords from
PARTNERS_AND_SPONSORS_TIER
Current category labels in code:
Title Sponsor
Presenting Sponsor
Co-Presenting Sponsor
Diamond Sponsor
Platinum Sponsor
Premier Sponsor
Elite Sponsor
Gold Sponsor
Silver Sponsor
Bronze Sponsor
Knowledge Sponsor
Education Sponsor
Learning Sponsor
Media Sponsor
Press Sponsor
Broadcast Sponsor
Support Sponsor
Associate Sponsor
Contributor Sponsor
Community Sponsor
Ecosystem Sponsor
Official Partner
Community Partner
Ecosystem Partner
Knowledge Partner
Media Partner
Support Partner
Associate Partner
Strategic Partner
Innovation Partner
Technology Partner
Outreach Partner
Venue Partner
Event-level benefits should be configurable per sponsor assignment.
Benefit examples:
- logo placement
- keynote/workshop slot
- booth
- social promotion
- newsletter mention
- hiring access
Behavior:
- default by tier
- editable per deal
- tracked for fulfillment status
Build using sponsor technology and win sponsor prize.
Integrated with Judging System criteria and transparency settings.
- live sessions
- speaker metadata
- attendance tracking
- recording links
- docs
- SDK links
- sample repos
- onboarding credits and coupons
- talent search against participant opt-in
- filters by skill, project score, track, and challenge participation
Participants should see:
- sponsor logos and categories
- sponsor challenges and prizes
- workshops and resources
- sponsor job opportunities
Privacy rule:
- hiring visibility requires explicit participant opt-in from Participant Platform settings
Sponsor analytics should include:
- participants reached
- projects built with sponsor technology
- workshop registrations and attendance
- challenge submissions and winners
- profile and resource clicks
- hiring funnel metrics
Community analytics should include:
- sponsor response rates
- deal conversion rates
- sponsor retention by quarter
- fulfilled vs missed benefit ratio
Support recurring programs across many communities/events.
Example:
AI Program -> 10 communities -> 50 events
Program capabilities:
- reusable templates for benefits/contracts
- annual/quarterly budget allocation
- multi-event reporting
Core collections:
Users
Organizations
Members
Events
Opportunities
Requests
Negotiations
Deals
Contracts
Payments
Challenges
Workshops
Resources
Analytics
Reputation
Programs
Recommended additional collections:
OrganizationMembers
SponsorInboxThread
ContractSignature
PaymentLedger
AuditLog
Organizations:
- unique normalized domain index
- index on
entityType,verificationStatus - text index on
displayName,industry,technologies
EventSponsorAssignment:
- stores event snapshot fields (
displayNameSnapshot,logoUrlSnapshot,websiteSnapshot) - stores
displayCategoryandtierKeyword - stores
benefits[]and visibility flags
Requests/Negotiations/Deals:
- immutable audit timeline
- actor identity on each state change
Contracts:
- references final deal
- stores signed document hash and signature metadata
Payments:
- stores invoice, fee, escrow, payout, and dispute metadata
Required controls:
- verified sponsors for trusted routes
- rate limiting on requests/messages
- duplicate request suppression
- spam and abuse detection
- role-based access control
- audit logging on all state transitions
- signed URL policy for private assets
- encrypted sensitive fields
Community gate (from Signup docs):
- only approved/active communities can fully use marketplace outreach
- Organizer
- Partnerships Lead
- Sponsorship Lead
- Industry Relations Lead
- Sponsor Admin
- Sponsor Manager
- DevRel Manager
- Hiring Manager
- Partner Admin
- Partnership Manager
- judges can access sponsor challenge judging context only
- participants can access public sponsor content and opted-in hiring surfaces
Use /api/v1 prefix to align with other CommDesk system docs.
POST /api/v1/sponsors/apply
GET /api/v1/sponsors
GET /api/v1/sponsors/:organizationId
GET /api/v1/sponsors/dashboard
PATCH /api/v1/sponsors/:organizationId
POST /api/v1/sponsors/:organizationId/verify
POST /api/v1/opportunities
GET /api/v1/opportunities
GET /api/v1/opportunities/:opportunityId
POST /api/v1/opportunities/:opportunityId/apply
POST /api/v1/requests
GET /api/v1/requests
GET /api/v1/requests/:requestId
PATCH /api/v1/requests/:requestId/accept
PATCH /api/v1/requests/:requestId/reject
PATCH /api/v1/requests/:requestId/negotiate
PATCH /api/v1/requests/:requestId/withdraw
POST /api/v1/negotiations/message
POST /api/v1/deals
GET /api/v1/deals/:dealId
POST /api/v1/contracts
GET /api/v1/contracts/:contractId
POST /api/v1/contracts/:contractId/sign
POST /api/v1/events/:eventId/sponsors
GET /api/v1/events/:eventId/sponsors
GET /api/v1/events/:eventId/partners
POST /api/v1/events/:eventId/partners
PATCH /api/v1/events/:eventId/partners/:linkId
DELETE /api/v1/events/:eventId/partners/:linkId
GET /api/v1/events/:eventId/sponsor-challenges
POST /api/v1/events/:eventId/sponsor-challenges
GET /api/v1/events/:eventId/sponsor-workshops
POST /api/v1/events/:eventId/sponsor-workshops
GET /api/v1/events/:eventId/sponsor-resources
POST /api/v1/events/:eventId/sponsor-resources
POST /api/v1/payments
GET /api/v1/payments/:paymentId
GET /api/v1/analytics/sponsors
GET /api/v1/sponsors/:organizationId/analytics
GET /api/v1/sponsors/:organizationId/talent
Apply -> Verified -> Dashboard
-> Browse opportunities / receive requests
-> Negotiate -> Accept -> Deal -> Contract -> Pay
-> Run event modules (challenge/workshop/resources)
-> Track analytics -> Hire -> Renew
Create event -> Create opportunity
-> Send requests / receive sponsor applications
-> Negotiate and finalize deal
-> Assign sponsor category to event
-> Deliver benefits -> Close report -> Build long-term relationship
More sponsors -> more opportunities
More opportunities -> more communities
More communities -> more data
More data -> better matching
Better matching -> more successful deals
- persist event sponsor assignments using existing event partner APIs
- enforce category compatibility with source constants
- replace mock card data with API-backed data
- organization onboarding and verification
- global directory and opportunity listing
- two-way request and inbox workflows
- negotiation states and messaging
- deal objects
- contract generation and e-sign
- sponsor benefit fulfillment tracking
- escrow and payout workflow
- invoices and platform fees
- reputation scoring and anti-spam ranking
- AI matching
- long-term sponsor programs
- advanced analytics and hiring pipelines
CommDesk becomes global infrastructure for sponsorships, partnerships, and developer ecosystem growth.
Final truth:
You are not building one feature.
You are building a marketplace, an ecosystem, and a revenue engine.
One line:
CommDesk = the place where sponsors and developer communities connect, collaborate, and grow.