- 1
Binge-worthy series from top creators.
Access "Edit My Page" to setup your profile. Upload high-quality profile and header images. Don't forget to submit your ID for verification to unlock monetization!
Post photos, videos, or audio. Use Reels for short-form viral content and Stories for daily updates. Set content as "Locked" to reward your subscribers.
Browse active Brand Campaigns to earn by views (CPM) or actions (CPA).
Setup your official profile in "Brand Settings". Verified brands get higher trust from the top creators.
Create CPM or CPA campaigns. Your budget is held in secure Escrow, ensuring you only pay for verified performance results.
Monitor real-time analytics for your campaigns. See exactly which creators are driving sales and scale your winning partnerships.
Use our Smart Matching AI to find creators that align perfectly with your brand's audience intent.
Use the Explore tab to find creators by interest. Follow them for free or subscribe to get in the inner circle.
Add funds to your Sponzar wallet for instant checkouts. Track your support history in your account dashboard.
Purchase tickets for upcoming live performances and meet-and-greets in the Shop!
All API requests require an API key passed via the X-Api-Key header.
curl -H "X-Api-Key: sk_live_your_key" \
https://sponzar.africa/api/v1/content
Get your API key from the admin panel → API Keys.
| Scope | Access |
|---|---|
content.read | List & view content, series, episodes, stream URLs |
content.write | Create posts from external sites |
payments | Subscriptions, tips, PPV purchases, payouts |
creators.read | Search and filter creators |
campaigns | Create and manage content reward campaigns |
webhooks | Register and manage webhook endpoints |
shop | List and purchase products |
tickets | List events, buy & validate tickets |
bookings | List services, create & manage bookings |
* | Full access (all scopes) |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/content | List posts (filter by type, access, creator) |
| GET | /api/v1/content/{id} | Get single post |
| POST | /api/v1/content | Create a new post |
| GET | /api/v1/content/{id}/stream | Get signed media URLs |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/series | List series (micro-dramas, TV, music, podcasts) |
| GET | /api/v1/series/{id} | Series detail with episodes |
| GET | /api/v1/series/{id}/episodes | List episodes with unlock status |
| GET | /api/v1/series/{sId}/episodes/{eId}/stream | Stream episode media |
| POST | /api/v1/series/{sId}/episodes/{eId}/purchase | Buy episode or season pass |
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/v1/subscriptions | Subscribe user to creator |
| POST | /api/v1/tips | Send a tip |
| POST | /api/v1/payments | PPV purchase or wallet deposit |
| POST | /api/v1/payouts | Request creator payout |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/creators | Search creators |
| POST | /api/v1/campaigns | Create campaign |
| POST | /api/v1/campaigns/{id}/assign | Assign creators |
| GET | /api/v1/campaigns/{id}/performance | Campaign analytics |
| POST | /api/v1/webhooks | Register webhook endpoint |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/shop/products | List products (filter by creator, category, type) |
| GET | /api/v1/shop/products/{id} | Product detail with images & tier prices |
| POST | /api/v1/shop/products/{id}/purchase | Buy a product (wallet payment) |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/tickets/events | List events (ticket-type products) |
| GET | /api/v1/tickets/events/{id} | Event detail with pricing rules |
| POST | /api/v1/tickets/events/{id}/purchase | Buy ticket(s) — returns QR code |
| GET | /api/v1/tickets/mine | List user's purchased tickets |
| POST | /api/v1/tickets/{id}/validate | Validate/scan a ticket at event |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/bookings/services | List creator booking services |
| GET | /api/v1/bookings/services/{id} | Service detail with extras & add-ons |
| POST | /api/v1/bookings | Create booking (escrow payment) |
| GET | /api/v1/bookings/mine | List user's bookings |
| POST | /api/v1/bookings/{id}/cancel | Cancel booking (escrow refund) |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/vendors | List verified event vendors (filter by category) |
| GET | /api/v1/vendors/{id} | Vendor profile with services & portfolio |
| GET | /api/v1/vendors/services | Catalog of bookable vendor services |
| POST | /api/v1/vendors/services/{id}/hire | Hire vendor via Sponzar Escrow |
| Code | Error | Meaning |
|---|---|---|
| 401 | api_key_required | No API key provided |
| 401 | invalid_api_key | Key doesn't exist |
| 402 | insufficient_balance | Wallet balance too low |
| 403 | api_key_disabled | Key deactivated |
| 403 | purchase_required | Content is locked |
| 429 | — | Rate limit exceeded |
Register endpoints to receive real-time notifications:
payment.completed — A payment was processedsubscription.created — A new subscription startedcontent.published — New content was postedcampaign.completed — A campaign finishedWebhooks include an X-Sponzar-Signature header (HMAC-SHA256) for verification.
Purchases happen entirely on your website via API calls — users never leave your site. Here's the full flow:
Step 1: Fetch content and check lock status
GET /api/v1/content/{id}
// Response includes: "locked": "yes", "price": 25.00
Step 2: Show paywall on your site if locked: "yes"
// Your frontend shows a "Buy" button with the price
Step 3: User clicks Buy → your backend calls the purchase API
POST /api/v1/payments
{ "user_id": 42, "amount": 25.00, "type": "ppv", "target_id": 99 }
Step 4: On success, fetch the stream URL
GET /api/v1/content/99/stream?user_id=42
// Returns: { "video_url": "https://...", "hls_url": "https://..." }
Step 5: Display the unlocked content on your site
The same flow works for episodes:
// Check episode lock status
GET /api/v1/series/42/episodes?user_id=123
// Episode shows "is_unlocked": false, "price": 15.00
// Purchase episode
POST /api/v1/series/42/episodes/99/purchase
{ "user_id": 123, "purchase_type": "episode" }
// Or buy the full season pass
POST /api/v1/series/42/episodes/99/purchase
{ "user_id": 123, "purchase_type": "series_pass" }
// Stream the unlocked episode
GET /api/v1/series/42/episodes/99/stream?user_id=123
Subscriptions also work inline:
POST /api/v1/subscriptions
{ "user_id": 42, "creator_id": 7, "plan_interval": "monthly" }
Each API key has a per-minute rate limit (default: 60 req/min). Exceeding it returns 429 Too Many Requests.
Turn any WordPress site into a monetized creator hub. Embed content grids, video series, music albums, event tickets, tip jars, bookings, and verified suppliers with zero code.
Version 1.0.0 · Compatible with WordPress 5.6 to 6.5+ · PHP 7.4+
sponzar-connect.zip using the button above.Place these shortcodes in posts, pages, or Elementor/Gutenberg blocks:
| Shortcode | Capability & Parameters |
|---|---|
[sponzar_content] | Posts feed (video, audio, photos) with locked frosted overlay & unlock CTA. Attrs: type="video", access="all", columns="3", per_page="6" |
[sponzar_series] | Series catalog (micro-dramas, TV, music, podcasts) with 2:3 posters. Attrs: type="micro_drama", columns="4", per_page="8" |
[sponzar_series_detail] | Full series hero banner, synopsis, Season Pass button, and episode player. Attrs: id="101" |
[sponzar_creators] | Creator discovery grid with avatar, bio, badge, and subscription tier rates. Attrs: category="music", columns="4" |
[sponzar_subscribe] | Tiered fan subscription membership box with 1-click recurring wallet checkout. Attrs: creator_id="12", theme="dark" |
[sponzar_tip] | Creator tip jar with preset ZAR buttons (R20, R50, R100), custom amount & message. Attrs: creator_id="12", theme="dark" |
[sponzar_events] | Live events listing with date badges, venue location, capacity, & ticket tiers. Attrs: columns="3", per_page="6" |
[sponzar_tickets] | Direct event ticket purchasing box with instant QR code delivery to attendee wallet. Attrs: event_id="7" |
[sponzar_shop] | Creator digital product storefront (downloads, sample packs, presets, merch). Attrs: columns="4", per_page="8" |
[sponzar_booking] | Bookable 1-on-1 creator appointments (coaching, mentorship, studio sessions). Attrs: creator_id="12" |
[sponzar_vendors] | EventOS verified supplier marketplace (Sound, Stage, Catering) with Escrow hire. Attrs: category="Sound & Audio", columns="3" |
[sponzar_embed] | Universal SDK loader rendering any Sponzar Web Component dynamically. Attrs: type="events", theme="dark" |
rgba(0,0,0,0.65)) and a centered 🔒 badge.🔓 Unlock for R35.00.All transactions occur inside a lightweight in-page modal without leaving your WordPress site:
prefers-color-scheme: dark) or switches manually.Read the complete technical manual in docs/wordpress_plugin_manual.md.
Embed any Sponzar feature onto any external website with a single line of HTML.
Open Interactive Playground<script src="https://sponzar.africa/sdk/sdk.js" data-token="YOUR_EMBED_TOKEN"></script>
<!-- Tip: Use data-token="DEMO_TOKEN" for instant playground/sandbox testing -->
<!-- Add any component -->
<sponzar-series id="42" theme="dark"></sponzar-series>
| Component | Custom Tag | What It Does |
|---|---|---|
| 📺 TV / Micro-Drama | <sponzar-series> | Episode list, video player, frosted paywall overlay |
| 🎵 Music Album | <sponzar-music> | Album view, track list, audio player, track unlocks |
| 🎙️ Podcast | <sponzar-podcast> | Episodes with audio streaming and show notes |
| 💎 Subscriptions | <sponzar-subscribe> | Membership tier cards with 1-click recurring wallet checkout |
| 🛍️ Digital Shop | <sponzar-shop> | Product grid with instant buy & secure download link |
| 🎟️ Events / Tickets | <sponzar-events> | Event listing, ticket tiers, & instant QR ticket delivery |
| 📅 Appointments | <sponzar-booking> | Creator 1-on-1 services with date/time booking modal |
| 💜 Tip Jar | <sponzar-tip> | Direct tip jar with preset/custom Rand amounts |
| 🤝 Verified Vendors | <sponzar-vendors> | EventOS verified suppliers with Sponzar Escrow hire |
| 🌐 Universal App | <sponzar-app> | Polymorphic container that auto-delegates via type attribute |
Listen to real-time checkout completions on your website for analytics and conversion tracking:
window.addEventListener('sponzar:ticket:purchased', (e) => {
console.log('Ticket Purchased:', e.detail);
// { event_id: 7, ticket_id: "TCK_123", amount: 150.00 }
});
window.addEventListener('sponzar:tip:sent', (e) => {
console.log('Tip Sent:', e.detail);
});
window.addEventListener('sponzar:content:unlocked', (e) => {
console.log('Content Unlocked:', e.detail);
});
Components use Shadow DOM for total CSS isolation. Customize using attributes (theme="dark", primary-color="#609960") or CSS custom properties:
sponzar-series, sponzar-events {
--sp-primary: #609960;
--sp-accent: #39ff14;
--sp-radius: 14px;
}
Read the complete manual in docs/embed_sdk_manual.md.
Organizers can create events under EventOS → Events. Configure ticket tiers (Early Bird, VIP, GA), capacity limits, and pricing. Tickets automatically generate secure QR codes upon purchase.
Verified event vendors (Staging, Sound, Catering, Security) can list their service catalog under EventOS → Vendors. Organizers can hire vendors via milestone contracts powered by Sponzar's EscrowOrchestrator.
Sell tickets and showcase suppliers directly on your external website or WordPress blog:
[sponzar_events], [sponzar_tickets event_id="7"], and [sponzar_vendors category="Sound"].<sponzar-events> and <sponzar-vendors>.GET /api/v1/tickets/events and POST /api/v1/vendors/services/{id}/hire.Gate staff access the mobile scanner app at /event-os/scan. Point smartphone camera at attendee's ticket QR code for instant entry validation (Green = Valid, Red = Already Scanned/Invalid).
Vendors and organizers track real-time sales settlements and request direct bank withdrawals under EventOS → Withdrawals.
Read the step-by-step manuals in docs/event_os_user_manual.md and docs/vendor_operations_guide.md.
Get real-time alerts for tips, new messages, and when creators go live.