API Collection

Ankiren Course API

Course Management and Learning API for Ankiren. This API provides endpoints for: - **Admin Course Management**: Full CRUD operations for courses, units, content, questions, and answers - **User Learning**: Course browsing, enrollment, content consumption, quiz submission, and progress tracking ## Authentication All endpoints require authentication via: - Session cookie (next-auth.session-token) - Bearer token (Personal Access Token) ## Authorization - Admin endpoints require the `admin` role - User endpoints require active enrollment in the course

Productionhttps://ankiren.comStaginghttps://staging.ankiren.comUAThttps://uat.ankiren.com
BASEhttps://ankiren.com

Overview

33 endpoint trong 10 nhóm · OpenAPI 3.0.3 · phiên bản 2.0.0 · spec tại docs/api/course-api.yaml.

Admin - Courses5 endpoint

Course management operations (admin only)

Admin - Units5 endpoint

Unit management operations (admin only)

Admin - Content5 endpoint

Content management operations (admin only)

Admin - Questions5 endpoint

Question management operations (admin only)

Admin - Answers3 endpoint

Answer management operations (admin only)

Admin - Import1 endpoint

Bulk import operations (admin only)

Courses - Public1 endpoint

Public course browsing

Enrollment2 endpoint

Course enrollment operations

Learning4 endpoint

Content consumption and quiz submission

Progress2 endpoint

Learning progress tracking

Authentication

Chấp nhận bất kỳ scheme nào dưới đây.

  • bearerAuthhttp · bearer

    Personal Access Token (PAT)

  • cookieAuthapiKey · cookie

    NextAuth.js session cookie

cURL
curl 'https://ankiren.com/api/admin/courses' \
  -H 'Authorization: Bearer <token>'

Topics

Admin - Courses

Course management operations (admin only)

Admin - Units

Unit management operations (admin only)

Admin - Content

Content management operations (admin only)

  • GETList unit content/api/admin/courses/{courseId}/units/{unitId}/content
  • POSTCreate content/api/admin/courses/{courseId}/units/{unitId}/content
  • GETGet content details/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}
  • PUTUpdate content/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}
  • DELETEDelete content/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}

Admin - Questions

Question management operations (admin only)

  • GETList content questions/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions
  • POSTCreate question/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions
  • GETGet question details/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions/{questionId}
  • PUTUpdate question/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions/{questionId}
  • DELETEDelete question/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions/{questionId}

Admin - Answers

Answer management operations (admin only)

  • POSTCreate answer/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions/{questionId}/answers
  • PUTUpdate answer/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions/{questionId}/answers/{answerId}
  • DELETEDelete answer/api/admin/courses/{courseId}/units/{unitId}/content/{contentId}/questions/{questionId}/answers/{answerId}

Admin - Import

Bulk import operations (admin only)

Courses - Public

Public course browsing

Enrollment

Course enrollment operations

Learning

Content consumption and quiz submission

Progress

Learning progress tracking