Vietnamese Spell Checker API

Check Vietnamese spelling: invalid syllables, c/k, g/gh, ng/ngh rules, frequent mistakes (xử dụng, sử lý, nghành) and punctuation, with suggestions.

POSTGEThttps://apibox.io.vn/v1/vn-spellcheck

The Vietnamese spell checker reads the text syllable by syllable. It reports syllables that do not exist in Vietnamese (phát triễn → triển), breaches of the spelling rules (kon → con, ghà → gà, ngiệp → nghiệp, a stop consonant with the wrong tone), and a list of frequent real-word mistakes such as xử dụng, sử lý, nghành, chuẩn đoán, bổ xung or sát nhập.

Typography is checked too: spaces before punctuation, missing spaces after a comma, double spaces and a lowercase letter at the start of a sentence. Every issue has its position (start, end), a type, a severity (error, warning, info), messages in Vietnamese and English and suggestions; corrected is the text with the first suggestion of each error applied. Both tone-mark styles (hoà / hòa) are accepted, English words and acronyms are left alone, and ignore lists words to skip.

It works from a syllable inventory and rules, without an AI model, so it is fast and predictable; grammar and word choice (dành / giành) are not checked.

Parameters

NameInTypeRequiredDefault
textbody|querystringyesText to check (max 50,000 characters).
ignorebody|querystringnoComma-separated words to skip (brand names, jargon).

Example

curl -X POST "https://apibox.io.vn/v1/vn-spellcheck" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Chúng tôi xử dụng công nghệ để sử lý dữ liệu ,giúp doanh nghiệp phát triễn. kết quả rất tốt."}'

Response

{
  "errors": 3,
  "warnings": 0,
  "info": 2,
  "issues": [
    {
      "start": 10,
      "end": 17,
      "text": "xử dụng",
      "type": "common_misspelling",
      "severity": "error",
      "message_vi": "Viết đúng là \"sử dụng\"",
      "message_en": "The correct spelling is \"sử dụng\"",
      "suggestions": [
        "sử dụng"
      ]
    },
    {
      "start": 31,
      "end": 36,
      "text": "sử lý",
      "type": "common_misspelling",
      "severity": "error",
      "message_vi": "Viết đúng là \"xử lý\"",
      "message_en": "The correct spelling is \"xử lý\"",
      "suggestions": [
        "xử lý"
      ]
    },
    {
      "start": 44,
      "end": 46,
      "text": " ,",
      "type": "punctuation",
      "severity": "info",
      "message_vi": "Không đặt dấu cách trước dấu câu",
      "message_en": "No space before punctuation",
      "suggestions": [
        ", "
      ]
    },
    {
      "start": 69,
      "end": 74,
      "text": "triễn",
      "type": "unknown_syllable",
      "severity": "error",
      "message_vi": "Âm tiết không tồn tại trong tiếng Việt",
      "message_en": "Not a Vietnamese syllable",
      "suggestions": [
        "triển",
        "triền",
        "tiền"
      ]
    },
    {
      "start": 76,
      "end": 77,
      "text": "k",
      "type": "capitalization",
      "severity": "info",
      "message_vi": "Viết hoa chữ cái đầu câu",
      "message_en": "Capitalise the first letter of the sentence",
      "suggestions": [
        "K"
      ]
    }
  ],
  "corrected": "Chúng tôi sử dụng công nghệ để xử lý dữ liệu, giúp doanh nghiệp phát triển. Kết quả rất tốt.",
  "note": "Spelling check: syllables, spelling rules and frequent mistakes. Grammar and word choice (e.g. dành / giành) are not checked."
}

Use cases

  • Check product descriptions and articles before publishing
  • Proofread customer-facing e-mails and notifications
  • Clean user-generated content in forms and reviews
  • Quality checks on translated or AI-generated Vietnamese

FAQ

Does it check grammar?

No, spelling, frequent mistakes and typography only. Choices such as dành / giành depend on meaning and are not checked.

Are English words flagged?

Acronyms and words that cannot be Vietnamese are skipped; ambiguous ones get a warning (not an error). Add your own terms with ignore.

Is hoà or hòa correct?

Both tone-mark placements are accepted.

Related APIs

Start with 1,000 free requests every month. Get free API key →