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
  • Customers
  • Pricing
  • API Docs
  • User guides
    📋 Setup roadmap (all guides)Price tier configurationUsing the module feature (multi-course)Affiliate & affiliate payoutsUser managementEmail marketingUpgrading an account from Free to ProPublishing a lesson (video)PromotionsBlog managementGetting the Facebook & TikTok pixel scriptsConfiguring the SePay webhookEmail marketingSetting up email remarketing sequencesUsing the monthly/yearly renewal module (SaaS)The complete guide to running adsAdd-on productsMaterials per lessonMaterials per chapterSelling combosCustom layouts for standalone coursesThe subscription featureElectronic invoicesThe practice-test featureSigning in & registering an accountPaying by bank QR codeOrder managementDashboard & overview reports
  • User guides
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
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.