Help / Tutorial API#

Read-only user-guide index + document viewer. Wraps the legacy MnxUserGuideModule / mnxUserGuideDocuments tables.

  • Endpoints:
    • GET /api/v1/help/sections
    • GET /api/v1/help/documents?take=N
    • GET /api/v1/help/documents/{documentId}
  • Auth: [Authorize]
  • Jira: BFC-30
  • Legacy source: MnxUserGuideModule, mnxUserGuideDocuments

Flow#

flowchart LR
    S[GET /help/sections] --> SvcS[HelpService.GetSections]
    D[GET /help/documents?take=N] --> SvcL[HelpService.GetDocuments]
    O[GET /help/documents/id] --> SvcO[HelpService.GetDocument]
    SvcS --> DBM[MnxUserGuideModule<br/>WHERE Display=true<br/>AND InternalOnly=false]
    SvcL --> DBD[mnxUserGuideDocuments<br/>ORDER BY LastModified DESC]
    SvcO --> DBOne[mnxUserGuideDocument<br/>+ Content payload]
    DBM & DBD & DBOne --> Resp[200]

Rules#

  • List responses never return Display=false or InternalOnly=true rows — hidden drafts are invisible even by ID.
  • GetDocument returns null for hidden IDs — no 403; hides existence.
  • List response omits the Content blob for payload size. Fetch /documents/{id} when needed.
  • take clamped to [1, 500].
  • “Sections” (not “modules”) in the API name intentionally — MnxUserGuideModule is unrelated to MnxModule; avoid the overload.