Writing
Creators in this category
Creators in this category
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) |
| 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.
Embed your Sponzar content on any WordPress website. Includes content grids, series players, creator profiles, and a full inline purchase flow.
Download Plugin (ZIP)Version 1.0.0 ยท Compatible with WordPress 5.6+
Add these shortcodes to any page or post:
| Shortcode | What It Does |
|---|---|
[sponzar_content] | Grid of your posts (photos, videos, audio) |
[sponzar_series type="podcast"] | Grid of series (podcast, music_album, tv_series, micro_drama) |
[sponzar_series_detail id="42"] | Full series page with episodes and buy buttons |
[sponzar_creators] | Creator directory with subscribe buttons |
Common attributes: per_page, columns, type, creator_id
Locked content displays buy buttons automatically. Visitors can:
On first purchase, visitors link their Sponzar account by entering their User ID once.
Contact support for assistance with API integration or plugin setup.
<script src="https://sponzar.africa/sdk/sdk.js" data-token="YOUR_TOKEN"></script>
<!-- Add any component -->
<sponzar-series id="42" theme="dark"></sponzar-series>
That's it! The SDK auto-initializes, fetches your content, and renders a premium UI.
| Component | Tag | What It Does |
|---|---|---|
| ๐บ TV Series | <sponzar-series> | Episode list, video player, gated content |
| ๐ต Music | <sponzar-music> | Album view, track list, audio player |
| ๐๏ธ Podcast | <sponzar-podcast> | Episodes with audio streaming |
| ๐ Subscribe | <sponzar-subscribe> | Tier cards with one-click subscribe |
| ๐๏ธ Shop | <sponzar-shop> | Product grid with buy button |
| ๐๏ธ Events | <sponzar-events> | Event listing + ticket purchase + QR codes |
| ๐ Booking | <sponzar-booking> | Creator services with pricing |
| ๐ Tip | <sponzar-tip> | Tip jar with preset/custom amounts |
Copy any snippet and paste it on your website after the SDK script:
<!-- TV Series / Micro-Drama -->
<sponzar-series id="42" theme="dark"></sponzar-series>
<!-- Music Album -->
<sponzar-music id="15" theme="dark"></sponzar-music>
<!-- Podcast -->
<sponzar-podcast id="7" theme="dark"></sponzar-podcast>
<!-- Subscription Tiers -->
<sponzar-subscribe theme="dark"></sponzar-subscribe>
<!-- Shop Products -->
<sponzar-shop theme="dark"></sponzar-shop>
<!-- Events / Ticketing -->
<sponzar-events theme="dark"></sponzar-events>
<!-- Creator Booking -->
<sponzar-booking theme="dark"></sponzar-booking>
<!-- Tip Jar (custom amounts) -->
<sponzar-tip amounts="10,25,50,100" theme="dark"></sponzar-tip>
| Attribute | Values | Default |
|---|---|---|
theme | dark or light | dark |
primary-color | Any hex (e.g. #e74c3c) | #6c5ce7 |
powered-by | true or false | true |
Components use Shadow DOM โ your website styles won't conflict with the embed.
Control what each token can access:
| Scope | Enables |
|---|---|
series | TV Series & Micro-Drama |
music | Music albums & streaming |
podcast | Podcast episodes |
subscribe | Subscription tiers |
shop | Products & purchases |
events | Events & ticket sales |
booking | Booking services |
tip | Tipping |
checkout | Wallet & Ozow payments |
analytics | View/play/purchase tracking |
Restrict your token to specific domains for security:
example.com โ exact match*.example.com โ all subdomainsThe SDK automatically tracks views, plays, checkouts, and sales. View your analytics on the Settings โ Embed SDK dashboard.
| Issue | Fix |
|---|---|
| "Loading..." forever | Check browser console for token/CORS errors |
| "Scope not allowed" | Add the scope to your token in Settings |
| "Domain not whitelisted" | Add your domain or leave whitelist empty |
| Checkout not working | Ensure checkout scope is enabled |
WordPress, Wix, Shopify, Squarespace, React, Vue, or plain HTML โ just paste the script and add components!