Sponsor Marketplace
Pharmaceutical companies, CROs, biotech firms, AI companies, universities, and NGOs can create data programs, fund patient compensation, and access aggregate compliance data — all without ever seeing individual patient records.
Sponsor Types
| Type | Typical Use Case | Data Interest |
|---|---|---|
| Pharma | Drug development, post-market surveillance | Medication response, adverse events, biomarkers |
| CRO | Clinical trial feasibility, site selection | Patient demographics, condition prevalence |
| Biotech | Target validation, companion diagnostics | Genomic data, molecular biomarkers |
| AI Company | Training diagnostic/predictive models | Medical imaging, clinical text, wearable signals |
| University | Epidemiological research, population health | Longitudinal health records, survey data |
| NGO | Global health initiatives, rare disease registries | Under-served population data, treatment access |
Program Creation Flow
Sponsor → Create Program → Define Requirements → System Generates Commitments → Program Goes Live
1. POST /api/SponsorPrograms
├── title, description, category
├── promisedAnnualUsd (per patient)
├── budgetCommitted (total)
├── termMonths
└── requirements[] (with hidden thresholds)
2. For each requirement:
├── requirementKey: "weekly_glucose"
├── dataCategory: "vitals" (patient sees this)
├── patientInstruction: "Submit your glucose readings" (patient sees this)
├── dataType: "glucose_mg_dl" (oracle-only)
├── threshold: 180 (oracle-only, HIDDEN)
├── comparator: 1 (LTE = must be ≤ 180)
└── frequency: "weekly"
3. System generates:
├── Poseidon(salt, dataType, threshold, comparator) → commitment
├── Stores commitment publicly (patients can verify it exists)
└── Stores threshold encrypted (oracle decrypts at evaluation time)
What Patients See vs. What's Hidden
| Visible to Patient | Hidden from Patient |
|---|---|
| "Submit your activity data" | Threshold: ≥ 5,000 steps |
| "Submit your vitals weekly" | Threshold: systolic ≤ 140 |
| "Submit glucose readings" | Threshold: fasting 70–130 range |
| Commitment hash (0x1a2b...) | Salt, threshold, comparator |
| Data category | Data type (internal key) |
| Frequency | Exact evaluation logic |
Funding & Escrow
Sponsors fund programs through Stripe Connect escrow:
Budget States:
committed → deposited → spent
$50,000 $25,000 $8,340
Program Funding Status:
seeking_sponsor → partially_funded → fully_funded
(0% deposited) (1-99%) (100% of projected need)
Funding Formula
Total Needed = promisedAnnualUsd × maxParticipants × (termMonths / 12)
Example:
$120/yr × 500 patients × 2 years = $120,000 total needed
Deposit $30,000 → partially_funded (25%)
Deposit $90,000 more → fully_funded (100%)
Early Bird Economics
Programs in seeking_sponsor status still accept patient enrollments. These early enrollees earn a 1.5x multiplier because they took the risk of contributing before funding was guaranteed. When funding arrives, their promised credits convert to real payouts first.
Sponsor Dashboard
Sponsors access an aggregate-only dashboard. Individual patient data is never exposed.
Available Metrics
| Metric | Description | Privacy Level |
|---|---|---|
| Active participants | Count of enrolled patients | Aggregate |
| Average compliance | Mean compliance score across all enrollees | Aggregate |
| Fulfillment rate | % of submissions that pass oracle verification | Aggregate |
| Total submissions | Count of all blind submissions received | Aggregate |
| Geographic breakdown | Country-level counts (opt-in) | Country-level |
| Budget committed/deposited/spent/remaining | Financial tracking | Sponsor-only |
| Total credits earned/paid/pending | Credit conversion tracking | Aggregate |
What Sponsors Cannot See
- Individual patient identities
- Raw health data values
- Individual compliance scores
- Specific requirement thresholds that were missed
- Patient location beyond country level
- Data commitment contents (Poseidon hashes only)
API Reference
Create Program
POST /api/SponsorPrograms
Authorization: Bearer {token}
Content-Type: application/json
{
"title": "Type 2 Diabetes Glucose Monitoring",
"description": "Real-world glucose response data...",
"category": "chronic_condition",
"promisedAnnualUsd": 120,
"budgetCommitted": 50000,
"termMonths": 12,
"maxParticipants": 500,
"organizationName": "Acme Pharma",
"sponsorType": "pharma",
"requirements": [
{
"requirementKey": "weekly_glucose",
"dataCategory": "vitals",
"patientInstruction": "Submit your weekly glucose readings",
"frequency": "weekly",
"dataType": "glucose_mg_dl",
"threshold": 180,
"comparator": 1
}
],
"targetCountries": ["US", "GB", "NG", "TH", "IN"]
}
Fund Program
PATCH /api/SponsorPrograms/{programId}/fund
Authorization: Bearer {token}
{
"amount": 25000,
"stripePaymentIntentId": "pi_3abc..."
}
Get Dashboard
GET /api/SponsorPrograms/{programId}/dashboard
Authorization: Bearer {token}
Response:
{
"program": { "id": "...", "title": "...", "currentParticipants": 127 },
"budget": { "committed": 50000, "deposited": 25000, "spent": 8340, "remaining": 16660 },
"compliance": { "averageScore": 84, "totalSubmissions": 1847, "fulfillmentRate": 78 },
"geographic": { "US": 45, "NG": 31, "TH": 22, "GB": 18, "IN": 11 },
"credits": { "totalEarned": 12450, "totalPaid": 8340, "pendingConversion": 4110 }
}
Future: Sponsor Marketplace Discovery
Planned features for a public sponsor marketplace:
- Program templates: Pre-built requirement sets for common conditions
- Competitive bidding: Multiple sponsors bid on the same dataset
- Data licensing: Perpetual royalty model (patients earn when model generates revenue)
- Cross-program analytics: Aggregate insights across multiple programs
- Regulatory compliance packages: HIPAA/GDPR-ready program templates
- Diversity goals: Auto-adjust pricing to fill geographic representation gaps