Đọc · 7 phút Cập nhật 30/04/2026 Cấp độ · Cơ bản

Dịch thuật EN VI và 5 ngôn ngữ khác

API dịch thuật chất lượng cao, auto-detect ngôn ngữ nguồn, giữ nguyên định dạng (markdown, HTML, code block). Đặc biệt tối ưu cặp Anh — Việt, phù hợp cho localization, hỗ trợ khách hàng quốc tế và content marketing.

Endpoint

httpPOST /api/v1/translate?ws=my_workspace
Authorization: Bearer zeni_pat_xxx
Content-Type: application/json

Ngôn ngữ hỗ trợ

VI
Tiếng Việt
vi
EN
English
en
JA
日本語
ja
ZH
中文
zh
KO
한국어
ko
TH
ไทย
th
ID
Bahasa
id

Dịch cơ bản

bashcurl -X POST "https://zenicloud.io/api/v1/translate?ws=prod" \
  -H "Authorization: Bearer $ZENI_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Hello, how can I help you today?",
    "target": "vi"
  }'

Response:

json{
  "translated": "Xin chào, tôi có thể giúp gì cho bạn hôm nay?",
  "source_detected": "en",
  "target": "vi",
  "char_count": 33,
  "cost_usd": 0.0007,
  "latency_ms": 230
}
Auto-detect
Bạn không cần truyền source — Zeni tự nhận diện ngôn ngữ nguồn với độ chính xác trên 99 phần trăm cho text từ 10 ký tự trở lên. Nếu muốn ép kiểu, truyền source: "en" tường minh.

Dịch batch — nhiều câu một lúc

Để giảm latency và chi phí, gửi mảng texts:

json{
  "texts": [
    "Welcome to our store",
    "Your order has been confirmed",
    "Free shipping on orders over $50"
  ],
  "target": "vi"
}
json{
  "translations": [
    {"original": "Welcome to our store", "translated": "Chào mừng đến cửa hàng của chúng tôi"},
    {"original": "Your order has been confirmed", "translated": "Đơn hàng của bạn đã được xác nhận"},
    {"original": "Free shipping on orders over $50", "translated": "Miễn phí vận chuyển đơn từ 50 đô"}
  ],
  "source_detected": "en",
  "total_chars": 89
}

Ví dụ Python — localize app

pythonimport os, json, requests

ZENI = "https://zenicloud.io/api/v1"
TOKEN = os.environ["ZENI_TOKEN"]

def translate(text, target="vi", source=None):
    body = {"text": text, "target": target}
    if source:
        body["source"] = source
    r = requests.post(
        f"{ZENI}/translate?ws=prod",
        headers={"Authorization": f"Bearer {TOKEN}"},
        json=body,
        timeout=30,
    )
    r.raise_for_status()
    return r.json()["translated"]

# Localize toàn bộ file i18n EN sang VI
with open("locales/en.json", "r") as f:
    en_strings = json.load(f)

vi_strings = {}
for key, value in en_strings.items():
    vi_strings[key] = translate(value, target="vi")

with open("locales/vi.json", "w", encoding="utf-8") as f:
    json.dump(vi_strings, f, ensure_ascii=False, indent=2)

print(f"Dịch xong {len(vi_strings)} chuỗi")

Giữ nguyên định dạng

API hỗ trợ ba chế độ giữ format:

Markdown

json{
  "text": "# Welcome\n\nThis is a **bold** statement with [a link](https://example.com).",
  "target": "vi",
  "preserve_format": "markdown"
}

Markdown syntax (heading, bold, link, code) được giữ nguyên, chỉ phần text dịch:

markdown# Chào mừng

Đây là một câu **in đậm** với [một liên kết](https://example.com).

HTML

json{
  "text": "<p>Click <a href='/buy'>here</a> to purchase.</p>",
  "target": "vi",
  "preserve_format": "html"
}

Tag và attribute được giữ nguyên, chỉ text node dịch.

Code-aware

json{
  "text": "Run `npm install` then start the server.",
  "target": "vi",
  "preserve_format": "code"
}

Code block (backtick, fence) được giữ nguyên, không bị dịch sai thành câu lệnh khác.

Use cases

Chi phí

Khối lượngĐơn giáTương đương
Per 1M chars$20~480.000 VND
Free tier500K chars/tháng~10 cuốn sách 200 trang
Starter trở lên5M chars miễn phíĐủ cho startup nhỏ
Cache tự động
Câu giống y hệt được dịch lại sẽ trả về từ cache trong 24 giờ — miễn phí. Hữu ích cho website có nhiều khách xem cùng một trang.

Chất lượng & limit

Bước tiếp theo