Skip to main content

Developer Portal & Marketplace

Build and monetize apps, plugins, and integrations for the Olympus platform.

Overview

The Developer Portal enables third-party developers to build apps, plugins, and integrations for the Olympus platform. With a 70/30 revenue sharing model, developers can monetize their creations while helping restaurants extend platform functionality.

Business Model

Revenue TypeDeveloperPlatform
Free Apps100%0%
Paid Apps70%30%
Subscriptions (Year 1)70%30%
Subscriptions (Year 2+)85%15%

Architecture

┌─────────────────────────────────────────────────────────────────┐
│ Developer Portal │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ Developer │ │ App Store │ │ Revenue │ │
│ │ Accounts │ │ & Discovery │ │ & Payouts │ │
│ │ (Go) │ │ (Go) │ │ (Rust) │ │
│ └────────┬────────┘ └────────┬────────┘ └────────┬────────┘ │
│ │ │ │ │
│ ┌────────┴────────────────────┴────────────────────┴────────┐ │
│ │ GraphQL API Gateway │ │
│ └───────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────┐
│ Integration Types │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌────────┐ │
│ │ Webhooks │ │ REST APIs │ │ Plugins │ │ Themes │ │
│ │ │ │ │ │ (WASM) │ │ │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ └────────┘ │
└─────────────────────────────────────────────────────────────────┘

Developer Accounts

Registration

  1. Visit developers.olympuscloud.ai
  2. Sign up with email or GitHub
  3. Verify email address
  4. Complete developer profile
  5. Accept Developer Terms of Service

Account Tiers

TierPriceAPI CallsAppsSupport
Free$0/mo10,000/mo2Community
Pro$49/mo100,000/mo10Email
Partner$299/mo1,000,000/moUnlimitedPriority

API Keys

┌─────────────────────────────────────────────────────────────────┐
│ API KEYS My Account │
├─────────────────────────────────────────────────────────────────┤
│ │
│ DEVELOPMENT │
│ ─────────────────────────────────────────────────────────── │
│ Name: Development Key │
│ Key: dev_sk_abc123...xyz789 [Copy] [Rotate] │
│ Created: Jan 15, 2026 │
│ Last Used: 2 min ago │
│ Scopes: read, write │
│ │
│ PRODUCTION │
│ ─────────────────────────────────────────────────────────── │
│ Name: Production Key │
│ Key: prod_sk_def456...uvw012 [Copy] [Rotate] │
│ Created: Jan 10, 2026 │
│ Last Used: 5 min ago │
│ Scopes: read, write │
│ │
│ [Create New Key] │
│ │
└─────────────────────────────────────────────────────────────────┘

Integration Types

Webhooks

Receive real-time events from the platform:

Event CategoryEvents
Ordersorder.created, order.updated, order.completed
Paymentspayment.completed, refund.processed
Inventoryitem.low_stock, item.out_of_stock
Reservationsreservation.created, reservation.cancelled
Staffclock_in, clock_out, shift_started

REST APIs

Full access to platform data and functionality:

APIDescription
Orders APICreate, read, update orders
Menu APIManage menu items, categories
Payments APIProcess payments, refunds
Inventory APITrack stock levels
Analytics APIAccess reporting data
Users APIManage staff accounts

Plugins (WASM)

Custom business logic running on the platform:

Plugin TypeUse Case
Order ModifierCustom pricing logic
ValidationOrder validation rules
IntegrationThird-party service sync
ReportingCustom report generation

Themes

Customize the look and feel:

ComponentCustomizable
ColorsPrimary, secondary, accent
TypographyFonts, sizes
LogoHeader, receipt
LayoutComponent arrangement

App Submission

Submission Flow

Review Process

StageDurationChecks
Automated ScanUnder 5 minSecurity, API usage
Manual Review1-3 daysFunctionality, UX, policy
Final Approval1 dayLegal, business review

Submission Requirements

RequirementDescription
App NameUnique, descriptive
DescriptionClear functionality explanation
ScreenshotsMin 3, showing key features
Privacy PolicyRequired for data access
Support URLHelp documentation link
PricingFree or paid tiers

Review Criteria

CategoryRequirements
SecurityNo hardcoded secrets, secure API calls
PerformanceUnder 2s response time, efficient queries
UXIntuitive interface, error handling
PolicyCompliant with guidelines
DataMinimal data collection, privacy compliant

Marketplace

App Discovery

┌─────────────────────────────────────────────────────────────────┐
│ MARKETPLACE 156 Apps │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 🔍 Search apps... [Category ▼] [Price ▼] [Rating ▼] │
│ │
│ FEATURED │
│ ─────────────────────────────────────────────────────────── │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ [Logo] │ │ [Logo] │ │ [Logo] │ │
│ │ Yelp Reviews │ │ QuickBooks │ │ Loyalty Plus │ │
│ │ ★★★★★ (128) │ │ ★★★★☆ (89) │ │ ★★★★★ (256) │ │
│ │ Free │ │ $29/mo │ │ $19/mo │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ CATEGORIES │
│ ─────────────────────────────────────────────────────────── │
│ 📊 Analytics (24) 🔗 Integrations (45) 📱 Marketing (18)│
│ 💳 Payments (12) 📦 Inventory (15) 👥 HR (8) │
│ 🎨 Themes (22) 🛠️ Operations (12) │
│ │
└─────────────────────────────────────────────────────────────────┘

App Listing

FieldDisplay
Name & IconApp branding
RatingAverage stars, review count
PriceFree, one-time, or subscription
DescriptionWhat it does
ScreenshotsVisual preview
ReviewsUser feedback
DeveloperPublisher info

Installation Flow

  1. Click Install on app listing
  2. Review permissions requested
  3. Select locations to install
  4. Authorize data access
  5. Configure settings (if required)
  6. App is active

Revenue & Payouts

Commission Structure

Sale TypeDeveloper SharePlatform Share
One-time purchase70%30%
Monthly subscription70%30%
Annual subscription70% (Y1), 85% (Y2+)30% (Y1), 15% (Y2+)

Payout Schedule

ThresholdScheduleMethod
$100 minimumMonthly (15th)Stripe Connect
$1,000+Weekly (Friday)Stripe Connect
$10,000+DailyWire transfer

Revenue Dashboard

┌─────────────────────────────────────────────────────────────────┐
│ REVENUE January │
├─────────────────────────────────────────────────────────────────┤
│ │
│ EARNINGS │
│ ─────────────────────────────────────────────────────────── │
│ Gross Revenue: $4,850 │
│ Platform Fee: -$1,455 (30%) │
│ Net Earnings: $3,395 │
│ │
│ BY APP │
│ ─────────────────────────────────────────────────────────── │
│ Loyalty Plus $2,450 52 installs $67.13 avg │
│ Analytics Pro $1,800 24 installs $75.00 avg │
│ Menu Optimizer $600 12 installs $50.00 avg │
│ │
│ PAYOUT HISTORY │
│ ─────────────────────────────────────────────────────────── │
│ Jan 15: $2,890 ✓ Completed │
│ Dec 15: $2,450 ✓ Completed │
│ Nov 15: $1,980 ✓ Completed │
│ │
│ NEXT PAYOUT: Feb 15 • Estimated: $3,395 │
│ │
└─────────────────────────────────────────────────────────────────┘

REST API Access

Authentication

All API access uses JWT Bearer tokens. Authenticate via POST /v1/auth/login to obtain an access token, then include it in subsequent requests.

MethodEndpointPurpose
POST/v1/auth/loginObtain JWT access and refresh tokens
POST/v1/auth/refreshRefresh an expired access token

REST API Example (TypeScript)

const API_BASE = 'https://dev.api.olympuscloud.ai/v1';

// Authenticate
const loginRes = await fetch(`${API_BASE}/auth/login`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ email: 'user@example.com', password: 'password' }),
});
const { status } = await loginRes.json();
const accessToken = status.access_token;
const headers = {
'Authorization': `Bearer ${accessToken}`,
'Content-Type': 'application/json',
};

// Get orders
const ordersRes = await fetch(
`${API_BASE}/commerce/orders?location_id=loc-123&status=open`,
{ headers },
);
const orders = await ordersRes.json();

// Create order
const orderRes = await fetch(`${API_BASE}/commerce/orders`, {
method: 'POST',
headers,
body: JSON.stringify({
location_id: 'loc-123',
items: [{ menu_item_id: 'item-456', quantity: 2 }],
}),
});
const order = await orderRes.json();

Sandbox Environment

Sandbox Features

FeatureDescription
Test DataPre-populated menu, orders, customers
API AccessFull API access, no rate limits
WebhooksSimulated events for testing
PaymentsTest card numbers

Test Credentials

CredentialValue
API Keysandbox_sk_test123
Test Card4242 4242 4242 4242
Test Tenantsandbox-tenant-001
Test Locationsandbox-loc-001

Documentation

API Reference

Interactive API documentation at developers.olympuscloud.ai/docs:

  • OpenAPI 3.0 specification
  • Try-it-now console
  • Code examples in multiple languages
  • Authentication guides

Guides & Tutorials

GuideDescription
Getting StartedFirst app in 15 minutes
WebhooksSetting up event handling
AuthenticationOAuth 2.0 implementation
Best PracticesPerformance & security tips
PublishingSubmission checklist

Support

Support Channels

TierChannels
FreeCommunity forum, docs
ProEmail support (48h response)
PartnerDedicated slack, 4h response

Resources

  • Community Forum: developers.olympuscloud.ai/community
  • GitHub: github.com/olympuscloud/developer-resources
  • Office Hours: Weekly developer Q&A (Thursdays 2pm PT)