Hỗ trợ kỹ thuật 24/7 - Liên hệ ngay nếu bạn cần giúp đỡ!

Hotline kỹ thuật
Mona Academy SaaS eLearningMona Academy
Mona Academy SaaS eLearning
VN|
EN
  • Features
  • Features
  • Customers
  • Start with AI
  • Blog
  • Pricing
  • API/MCP
    API DocsREST API: auth, courses, orders, email…Connect Claude (MCP)Manage your site with the Claude AI assistant via MCPMCP servermcp-elearing.mona.academy
  • API/MCP
  • User guides

Packaging your course

Build the sales page, split packages, add value around lessons.

  • Drag-and-drop template library120+ industry templates, drag-and-drop, no code
  • Learner communityPrivate groups on your own domain, no limit
  • AI learning assistantTrain once, answers stay within your lesson content
  • Zoom meetingsLive classes, email reminders, recordings saved automatically
  • Lesson quality scoringSee which videos hold attention and what to fix

Setup guides

  • Sell bundles
  • Cross-sell items
  • Subscription plans
  • Multi-course modules
  • Per-lesson materials
  • Per-chapter materials
  • Practice tests
  • Price tiers
  • Custom layout per course

Sales, marketing & remarketing

Pull strangers into a funnel, nurture by behaviour, close automatically.

  • Trial funnelA free course as lead magnet, then retarget real learners
  • Auto email remarketingBehaviour-based segments, automated flows, full reporting
  • 30+ promotion playbooksFlash sales, timed code hunts, lucky wheel, voucher quests
  • Multi-level affiliateFive commission levels, e-contracts, publisher leaderboard
  • PRO video previewOpen paid videos to free learners on a schedule

Setup guides

  • Set up promotions
  • Affiliate & commission payouts
  • Install Facebook & TikTok pixels
  • Full ads playbook

Course protection

Block downloads, trace leaks, stop shared accounts.

  • MONA DRM - stop video downloadsOne-way encryption on Google and Apple DRM
  • Watermark AIOver 5 watermark types identifying each viewer
  • Identity verificationVerify PRO learners against the national ID portal
  • AI anomaly alertsSpot signs of account sharing and screen recording
  • Block multi-device loginOne PRO account cannot run on two devices at once

Setup guides

  • Manage learners
  • Login & sign-up

Operations, admin & cash flow

Money lands in your account, orders close themselves, one place for numbers.

  • Automatic payment confirmationReads bank alerts and closes orders with no percentage fee

Setup guides

  • Bank QR payments
  • Configure the SePay webhook
  • Order management
  • E-invoices
  • Dashboard & reports
  • Monthly & yearly renewals (SaaS)
  • Upgrade Free to Pro
  • Enterprise blog
  • API documentation
  • Connect Claude (MCP)
See all 16 features →Businesses running on it →Help center →
VN|
EN
Create your Elearning websiteCreate Elearning website
API overview
API groups
🔐Authentication🎬Courses💳Orders & payments⬆️Upgrades & pricing (SAAS)🤝Affiliate✉️Email marketing📰Blog, content & CMS🧾Invoices🌐Domain management
Home>API documentation>Authentication
🔐

Authentication

Registration, sign-in, OAuth, password recovery, customer details.

9 endpoints
  • Register an account
  • Sign in (email/password)
  • Sign in with Google (OAuth)
  • Get social sign-in URLs
  • Forgotten password
  • Verify OTP
  • Change password (via OTP)
  • Customer details
  • Sign out
GRAPHQL

Register an account

Public
GRAPHQLhttps://saas-api.mona.academy/graphql/

Creates a new customer account (createCustomerV2 mutation).

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Parameters

NameTypeRequiredDescription
emailString!Yes-
firstnameString!Yes-
lastnameString!Yes-
passwordString!Yes-
redirect_urlStringNoRedirect URL after verification
referral_codeStringNoReferral code (optional)
referral_sourceStringNo-

Example request

Request
mutation {
  createCustomerV2(input: {
    email: "user@example.com"
    firstname: "Nguyen"
    lastname: "Van A"
    password: "********"
    redirect_url: "https://your-site.com/verify"
  }) {
    customer { email }
  }
}

Example response

Response
{
  "data": {
    "createCustomerV2": { "customer": { "email": "user@example.com" } }
  }
}
GRAPHQL

Sign in (email/password)

Public
GRAPHQLhttps://saas-api.mona.academy/graphql/

Signs in and returns a JWT token (generateCustomerToken mutation).

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Parameters

NameTypeRequiredDescription
emailString!Yes-
passwordString!Yes-

Example request

Request
mutation {
  generateCustomerToken(email: "user@example.com", password: "********") {
    token
  }
}

Example response

Response
{
  "data": { "generateCustomerToken": { "token": "eyJ0eXAiOiJKV1Q..." } }
}
GRAPHQL

Sign in with Google (OAuth)

Public
GRAPHQLhttps://saas-api.mona.academy/graphql/

Signs in through the Google OAuth callback (generateCustomerTokenSocialLogin) and returns a JWT token.

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Parameters

NameTypeRequiredDescription
stateStringYes-
codeStringYes-
scopeStringNo-
referral_codeStringNo-
GRAPHQL

Get social sign-in URLs

Public
GRAPHQLhttps://saas-api.mona.academy/graphql/

Returns the list of OAuth providers (Google, Facebook…) with their login_url.

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Example response

Response
{
  "data": {
    "socialLoginUrl": [
      { "key": "google", "label": "Google", "login_url": "https://..." }
    ]
  }
}
GRAPHQL

Forgotten password

Public
GRAPHQLhttps://saas-api.mona.academy/graphql/

Sends a password reset email containing an OTP (forgotPassword mutation).

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Parameters

NameTypeRequiredDescription
emailString!Yes-
GRAPHQL

Verify OTP

Public
GRAPHQLhttps://saas-api.mona.academy/graphql/

Verifies the OTP code sent by email (verifyOtp mutation).

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Parameters

NameTypeRequiredDescription
emailString!Yes-
otpString!Yes-
GRAPHQL

Change password (via OTP)

Public
GRAPHQLhttps://saas-api.mona.academy/graphql/

Sets a new password once the OTP has been verified (changePassword mutation).

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Parameters

NameTypeRequiredDescription
emailString!Yes-
passwordString!Yes-
otpString!Yes-
GRAPHQL

Customer details

🔒 Token required
GRAPHQLhttps://saas-api.mona.academy/graphql/

Returns the profile of the signed-in customer (getCustomerInfor query).

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

Example response

Response
{
  "data": {
    "customer": {
      "email": "user@example.com",
      "firstname": "Nguyen",
      "lastname": "Van A",
      "avatar": "https://...",
      "is_pro": true
    }
  }
}
GRAPHQL

Sign out

🔒 Token required
GRAPHQLhttps://saas-api.mona.academy/graphql/

Revokes the token and ends the session (revokeCustomerToken mutation).

Base URL: https://saas-api.mona.academy (NEXT_PUBLIC_API)

← Back to the API overview

An all-in-one E-Learning platform for experts, coaches and education businesses - host courses, automate sales and operate communities on a single system.

Menu
  • Features
  • Customers
  • User guides
  • API documentation
  • Changelog
Contact
Head office
1073/23 Cach Mang Thang 8, Ward 7, Tan Binh District, Ho Chi Minh City
Hotline
1900 636 648
Working hours
Mon – Sat · 08:00 – 18:00 (GMT+7)
Managing company
MONA MEDIA COMPANY LIMITED
Tax code
0313769557
Issued date
21/04/2016 - Ho Chi Minh City DPI
© 2026 Mona Academy. All rights reserved.