API Reference

DXA Governance API

Data & AI governance with an AI assistant

DXA Governance exposes governance APIs (AI system inventory, data catalog) plus an AI-powered suite on Workers AI: EU AI Act risk classification, PII detection, ISO 42001 policy drafting. It also ships an MCP server for AI agents to query governed data.

Base URL

https://governance.dxa.io.vn

Authentication

The AI assistant suite is public (no sign-in) — handy for trying classification/drafting. Business endpoints (create AI system, user management) require an SSO session (cookie `xv_session`) and the matching RBAC permission (admin/officer/steward/viewer). The MCP server runs at `mcp.governance.dxa.io.vn` and uses an org-scoped Bearer token.

AI Assistant (Workers AI)

POST /api/ai/classify-risk

Classify an AI system risk tier per the EU AI Act (4 tiers)

Auth: None (public)

Body parameters

FieldTypeDescription
description* string AI system / use-case description
lang 'vi' | 'en' Result language (default `vi`)

Example request

curl -X POST 'https://governance.dxa.io.vn/api/ai/classify-risk' \
  -H 'Content-Type: application/json' \
  -d '{ "description": "Chấm điểm tín dụng tự động", "lang": "vi" }'

Example response

{
  "tier": "high",
  "label": "Rủi ro cao",
  "color": "#ea580c",
  "rationale": "Hệ thống chấm điểm tín dụng ảnh hưởng quyền tiếp cận tài chính.",
  "obligations": [
    "Đánh giá tác động (FRIA)",
    "Giám sát của con người (human oversight)",
    "Ghi log & truy vết quyết định"
  ],
  "source": "ai"
}
POST /api/ai/detect-pii

Detect PII types & suggest data classification

Auth: None (public)

Body parameters

FieldTypeDescription
description* string Dataset description
lang 'vi' | 'en' Language

Example response

{
  "piiTypes": ["full_name", "national_id", "phone"],
  "classification": "confidential",
  "source": "ai"
}
POST /api/ai/draft-policy

Draft a policy for an ISO 42001 control

Auth: None (public)

Body parameters

FieldTypeDescription
controlRef string ISO 42001 control ref, e.g. `A.2.2` (default `A.2.2`)
context string Organizational context
lang 'vi' | 'en' Language

Example response

{
  "title": "Chính sách AI có trách nhiệm",
  "body": "Tổ chức cam kết phát triển và vận hành hệ thống AI…",
  "source": "ai"
}

Governance resources

POST /api/ai-systems

Create an AI system record in the inventory (form)

Auth: SSO session · `ai:write` (admin/officer)

Body parameters

FieldTypeDescription
name* string AI system name
purpose string Intended purpose
vn_risk_tier 'cao' | 'trung-binh' | 'thap' Risk tier per Vietnam AI Law 134/2025/QH15
eu_risk_tier string EU AI Act risk tier
lifecycle_stage string Lifecycle stage

Example response

// 303 Redirect → /app/ai-systems/<id> (ghi audit log).
POST /api/users/role

Change a member role within the org (form)

Auth: SSO session · `user:manage` (admin)

Body parameters

FieldTypeDescription
membership_id* string Membership ID
role* 'admin' | 'officer' | 'steward' | 'viewer' New role

Example response

// 303 Redirect → /app/admin/users (cập nhật ở IAM_DB + ghi audit log).
// Endpoint liên quan: POST /api/users/add · POST /api/users/remove · POST /api/auth/switch-org

MCP server (for AI agents)

POST https://mcp.governance.dxa.io.vn/mcp

Streamable HTTP MCP — read-only tools, org-scoped

Auth: Org-scoped Bearer token

Example request

{
  "mcpServers": {
    "dxa-governance": {
      "url": "https://mcp.governance.dxa.io.vn/mcp",
      "headers": { "Authorization": "Bearer <org_token>" }
    }
  }
}

Example response

// Các tool MCP khả dụng (chỉ đọc, theo tổ chức của token):
// • list_knowledge_sources  → nguồn tri thức đã duyệt cho RAG (classification, PII, quality)
// • search_governed_data    → tìm dataset + thuật ngữ theo từ khoá
// • list_ai_systems         → inventory hệ thống AI + tier rủi ro (Luật AI VN / EU AI Act)
// • get_glossary            → định nghĩa thuật ngữ nghiệp vụ
// • get_compliance_status   → tổng quan tuân thủ (phân bổ rủi ro, PII, độ phủ policy)