⚡ DEVELOPER DOCUMENTATION · API V1

Tài liệu MonkeyTech API

MonkeyTech API tương thích Anthropic và OpenAI — đổi URL gốc và API key là dùng được. Cài API CLI hoặc mở hướng dẫn từng ứng dụng (file path, Settings, lệnh kiểm tra) — phần còn lại của trang là tài liệu API.

Claude Fable $0.3773; Opus/Sonnet $0.2955; 16 model GPT $0.1091 / 1.000.000 token; 24 model AWS (`monkeytech/…`); 6 model DeepSeek: Flash/Pro $0.0105/$0.0118 mỗi lượt, Flash $0.0682/1.000.000 token. GPT Image 2: $0.0455/ảnh.

🔌
Đổi base URLOpenAI & Anthropic
⚡
Một catalogueClaude, GPT, DeepSeek
⏱️
15 Phút TimeoutStreaming SSE
🛡️
Không lưu promptBảo Mật & Mã Hóa SSL

Bắt đầu nhanh

Ba bước: tạo tài khoản, nạp tiền, rồi tạo API key trong bảng điều khiển. Sau đó gửi lượt gọi đầu tiên:

curl -N https://api.monkeytech.vn/v1/messages \
  -H "x-api-key: sk-mtk-..." \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-fable-5",
    "max_tokens": 1024,
    "stream": true,
    "messages": [
      { "role": "user", "content": "Write a quicksort function in Python" }
    ]
  }'

Tạo ảnh với req/gpt-image-2 ($0.0455/ảnh) qua /v1/images/generations:

curl https://api.monkeytech.vn/v1/images/generations \
  -H "Authorization: Bearer sk-mtk-..." \
  -H "content-type: application/json" \
  -d '{
    "model": "req/gpt-image-2",
    "prompt": "a tiny red circle on white",
    "size": "1024x1024",
    "n": 1
  }'

Ảnh tham chiếu (edits) với req/gpt-image-2 ($0.0455/ảnh) qua /v1/images/edits — gửi `image` / `image_url` (URL http(s), data URL hoặc base64) hoặc alias `reference_image` / `ref_image` + prompt:

curl https://api.monkeytech.vn/v1/images/edits \
  -H "Authorization: Bearer sk-mtk-..." \
  -H "content-type: application/json" \
  -d '{
    "model": "req/gpt-image-2",
    "prompt": "keep the same subject, soft studio lighting",
    "image": "https://example.com/reference.png",
    "size": "1024x1024",
    "n": 1
  }'

# image / image_url / reference_image / ref_image:
# data URL, base64 thuần, hoặc URL http(s) công khai

TTS với req/gpt-4o-mini-tts ($0.0614/lượt) qua /v1/audio/speech:

curl https://api.monkeytech.vn/v1/audio/speech \
  -H "Authorization: Bearer sk-mtk-..." \
  -H "content-type: application/json" \
  -d '{
    "model": "req/gpt-4o-mini-tts",
    "input": "Hello, đây là MonkeyTech API TTS.",
    "voice": "alloy"
  }' \
  --output speech.mp3

Tạo video qua POST /v1/videos. Mẫu gọi, bảng giá và tham số nằm ở mục Tạo video.

Chưa muốn viết mã? Mở Studio AI để gọi thử chat trên trình duyệt, hoặc kéo xuống mục Cài API CLI · Kết nối ứng dụng.

Cài API CLI

Cài API CLI một lần — wizard tự cấu hình Claude Code, Codex, OpenClaw, Cline và 9 công cụ AI khác (có backup file).

Win / macOS / Linux giống nhau: khuyến nghị npm install -g API CLI@latest (cần Node.js ≥ 18). One-liner curl/irm là alternate (npm bên trong). Chỉ fallback GitHub + Bun khi npm lỗi.

  1. Tạo API key tại Dashboard → Keys.
  2. Chọn tab hệ điều hành bên dưới → sao chép lệnh cài → dán terminal.
  3. Wizard mở sau khi cài — dán API key, chọn app và model.
  4. Kiểm tra: api-cli doctor · Cập nhật: api-cli update.
# Khuyến nghị (Win / macOS/Linux giống nhau) — cần Node.js >= 18
npm install -g API CLI@latest

# Hoặc one-liner (npm bên trong; fallback GitHub+Bun nếu npm lỗi):
# curl -fsSL "https://api.monkeytech.vn/install/api-cli.sh" | bash

# Chỉ cài, không mở wizard:
# API_CLI_NO_RUN=1 curl -fsSL "https://api.monkeytech.vn/install/api-cli.sh" | bash

# Mở wizard — dán API key khi được hỏi
api-cli -k 'sk-mtk-...'

Windows: dùng tab PowerShell hoặc CMD (không dùng curl … | bash trên CMD). Cùng luồng npm như macOS/Linux.

Repo: api.monkeytech.vn. Hoặc mở Kết nối ứng dụng trên Dashboard để lấy lệnh đã điền sẵn API key.

Kết nối ứng dụng

Chọn đúng app → làm đúng từng bước (URL, file path Win/macOS/Linux, Settings, lệnh kiểm tra). Dưới đây là hướng dẫn đầy đủ cho các app phổ biến; xem toàn bộ catalogue để mở từng trang riêng.

Tác tử dòng lệnh (CLI)

Terminal agents: Claude Code, Codex, OpenClaw, Hermes…

Claude CodeAnthropic

Tác tử lập trình Anthropic trên terminal (và extension IDE). Đây là app phổ biến nhất với MonkeyTech API.

https://api.monkeytech.vn
Codex CLIOpenAI

Tác tử OpenAI Codex trên terminal — cấu hình qua config.toml + auth.

https://api.monkeytech.vn/v1
OpenClawAnthropic

Tác tử mã nguồn mở theo giao thức Claude Code.

https://api.monkeytech.vn
Hermes AgentAnthropic + OpenAI

Tác tử Nous Research Hermes — cấu hình qua ~/.hermes/config.yaml và secrets trong ~/.hermes/.env.

https://api.monkeytech.vn/v1
AiderAnthropic + OpenAI

Pair-programming CLI, tự tạo commit Git.

See notes / depends on the protocol
OpenCodeOpenAI

Terminal coding agent — provider JSON OpenAI-compatible.

https://api.monkeytech.vn/v1
CrushOpenAI

Tác tử terminal OpenAI-compatible (cùng họ cấu hình provider tuỳ ý).

https://api.monkeytech.vn/v1
DeepSeek TUIOpenAI

Coding agent TUI — config TOML OpenAI-compatible.

https://api.monkeytech.vn/v1
Qwen CodeOpenAI

Alibaba Qwen Code CLI agent.

https://api.monkeytech.vn/v1
Kilo Code (CLI)OpenAI

Kilo Code terminal assistant.

https://api.monkeytech.vn/v1
Factory Droid CLIOpenAI

Factory Droid autonomous coding agent.

https://api.monkeytech.vn/v1
Grok BuildOpenAI

xAI Grok Build TUI coding agent.

https://api.monkeytech.vn/v1
CoworkOpenAI

AI Cowork terminal workflow agent.

https://api.monkeytech.vn/v1
jcodeOpenAI

Rust coding agent boot nhanh — config TOML.

https://api.monkeytech.vn/v1
Google Antigravity CLILimited / depends on the version

CLI Antigravity thường nói giao thức Gemini (GOOGLE_GEMINI_BASE_URL), không phải OpenAI/Anthropic thuần.

Gemini-compatible (see notes)

Chi tiết nhanh (app phổ biến) — Claude Code, Codex CLI, OpenClaw, Hermes, Cline, Cursor, Claude Desktop — bấm “Hướng dẫn đầy đủ” để xem path Win/macOS/Linux, Settings, kiểm tra và lỗi:

Claude Code

Anthropicconfigure claude

Tác tử lập trình Anthropic trên terminal (và extension IDE). Đây là app phổ biến nhất với MonkeyTech API.

Base URL: https://api.monkeytech.vn · Model: claude-fable-5

Main file: ~/.claude/settings.json (+3 more)

npm install -g API CLI@latest
api-cli configure claude -k 'sk-mtk-...' -m claude-fable-5
api-cli doctor

View the full guide

Codex CLI

OpenAIconfigure codex

Tác tử OpenAI Codex trên terminal — cấu hình qua config.toml + auth.

Base URL: https://api.monkeytech.vn/v1 · Model: gpt-5.6-sol

Main file: ~/.codex/config.toml (+2 more)

npm install -g API CLI@latest
api-cli configure codex -k 'sk-mtk-...' -m gpt-5.6-sol
# API key (dán vào cấu hình app): sk-mtk-...
codex

View the full guide

OpenClaw

Anthropicconfigure openclaw

Tác tử mã nguồn mở theo giao thức Claude Code.

Base URL: https://api.monkeytech.vn · Model: claude-fable-5

Main file: ~/.openclaw/config.json (+2 more)

api-cli configure openclaw -k 'sk-mtk-...' -m claude-fable-5

View the full guide

Hermes Agent

Anthropic + OpenAIManual setup

Tác tử Nous Research Hermes — cấu hình qua ~/.hermes/config.yaml và secrets trong ~/.hermes/.env.

Base URL: https://api.monkeytech.vn/v1 · Model: claude-fable-5

Main file: ~/.hermes/config.yaml (+3 more)

# ~/.hermes/config.yaml
model:
  default: "claude-fable-5"
  provider: "custom"
  base_url: "https://api.monkeytech.vn/v1"
  api_key: "sk-mtk-..."

# Hoặc tách secret sang ~/.hermes/.env:
# OPENAI_API_KEY=sk-mtk-...

View the full guide

Claude Desktop

Limited / depends on the versionManual setup

Ứng dụng desktop Anthropic. Nhiều bản ưu tiên đăng nhập tài khoản Claude.ai — không phải lúc nào cũng BYOK/custom base URL.

Base URL: See notes / depends on the protocol · Model: claude-fable-5

Location: Claude → Settings (+2 more)

1. Mở Claude Desktop → Settings
2. Tìm mục API key / Custom endpoint / Developer
3. Nếu CÓ ô Base URL + API key:
     Base URL : https://api.monkeytech.vn
     API Key  : sk-mtk-...
     Model    : claude-fable-5 (nếu chọn được)
4. Nếu KHÔNG có ô đó:
     → Cài Claude Code + api-cli configure claude
     → Hoặc dùng AI Studio / Chatbox trên MonkeyTech API

View the full guide

Cursor

OpenAIManual setup

IDE fork VS Code — Override OpenAI Base URL để dùng MonkeyTech API (kể cả model Claude).

Base URL: https://api.monkeytech.vn/v1 · Model: claude-fable-5

Location: Settings → Models (+2 more)

Cursor → Settings → Models
  OpenAI API Key : sk-mtk-...
  ☑ Override OpenAI Base URL
  Base URL       : https://api.monkeytech.vn/v1

Thêm Model Names (nếu cần):
  claude-fable-5
  claude-sonnet-5
  gpt-5.6-sol

Bấm Verify / dùng Chat với model vừa thêm.

View the full guide

Cline

Anthropic + OpenAIconfigure cline

Tiện ích VS Code/Cursor: agent đọc sửa file và chạy lệnh — hỗ trợ Anthropic custom base.

Base URL: https://api.monkeytech.vn · Model: claude-fable-5

Location: Cline panel → Settings (bánh răng) (+2 more)

api-cli configure cline -k 'sk-mtk-...' -m claude-fable-5

View the full guide

Chọn đúng URL gốc

Đây là chỗ sai phổ biến nhất khi cấu hình. MonkeyTech API có hai URL gốc tuỳ theo giao thức mà ứng dụng của bạn nói — dán nhầm sẽ ra lỗi 404 chứ không phải 401.

Ứng dụng thuộc kiểuURL gốc cần dánVì sao
Anthropic — Claude Code, OpenClaw, SDK anthropichttps://api.monkeytech.vnSDK tự nối thêm đường dẫn /v1/messages
OpenAI — Cursor, Open WebUI, Dify, SDK openaihttps://api.monkeytech.vn/v1Thư viện OpenAI yêu cầu URL đã gồm /v1

Không chắc app của mình thuộc kiểu nào? Cứ thử URL không có /v1 trước; nếu app báo 404 thì đổi sang URL có /v1. Model Claude gọi /v1/chat/completions và model GPT gọi /v1/messages được cổng chuyển định dạng (kèm tool calling) giữa Messages ↔ Chat Completions.

Xác thực

Chấp nhận cả hai kiểu tiêu đề xác thực, dùng kiểu nào cũng được:

x-api-key: sk-mtk-...        # Anthropic style
Authorization: Bearer sk-mtk-...     # OpenAI style

Key mới được lưu dưới dạng mã băm để xác thực và mã hóa AES-256-GCM để chính chủ có thể xem hoặc sao chép lại trong bảng điều khiển. Key cũ được tạo trước tính năng này không thể khôi phục. Mỗi tài khoản tối đa 10 key hoạt động cùng lúc.

Nên tạo mỗi máy hoặc mỗi ứng dụng một key riêng: khi lộ key bạn chỉ cần thu hồi đúng key đó, và trang Sử dụng sẽ tách được chi phí theo từng key. Không dán key vào mã nguồn đẩy lên Git — hãy đặt trong biến môi trường hoặc tệp cấu hình nằm ngoài kho mã.

Điểm cuối API

Phương thứcĐường dẫnMô tả
POST/v1/messagesAnthropic Messages API (khuyến nghị)
POST/v1/chat/completionsOpenAI Chat Completions (tương thích)
POST/v1/images/generationsOpenAI Images Generations (req/gpt-image-2)
POST/v1/images/editsOpenAI Images Edits / ảnh tham chiếu (req/gpt-image-2)
POST/v1/audio/speechOpenAI Audio Speech / TTS (req/gpt-4o-mini-tts)
POST/v1/videosOpenAI Videos — tạo video
GET/v1/videos/{id}Tra tiến độ video (không trừ thêm tiền)
GET/v1/videos/{id}/contentTải file MP4 (không trừ thêm tiền)
DELETE/v1/videos/{id}Hủy task đang chờ (không trừ thêm tiền)
POST/v1/responsesOpenAI Responses API (tương thích)
GET/v1/modelsDanh sách model và giá
POST/v1/messages/count_tokensƯớc lượng token (miễn phí)

Bạn không bị ràng buộc model theo điểm cuối chat: gửi Claude tới /v1/chat/completions hoặc GPT tới /v1/messages đều được — cổng chuyển qua lại giữa Messages và Chat Completions (kể cả tools). Riêng model tạo ảnh (req/gpt-image-2) dùng /v1/images/generations hoặc /v1/images/edits (ảnh tham chiếu); TTS (req/gpt-4o-mini-tts) chỉ dùng /v1/audio/speech; model video chỉ dùng /v1/videos. Endpoint /v1/responses giữ nguyên định dạng OpenAI Responses.

Tạo video

Chuẩn OpenAI Videos. POST /v1/videos trả ngay trạng thái queued kèm id. Gọi GET /v1/videos/{id} đến khi completed, rồi GET /v1/videos/{id}/content để tải MP4. DELETE /v1/videos/{id} hủy task đang chờ. SDK Python dùng videos.create_and_poll() rồi videos.download_content().

google-omni-flash $0.15/video. veo-3.1 $0.1136/video. seedance-2.0-fast: 5 giây $0.10, 10 giây $0.1682, 15 giây $0.2591. seedance-2.5: 5 giây $0.1273, 10 giây $0.1955, 15 giây $0.2864, 20–30 giây $0.4227. Không gửi seconds thì tính 5 giây. Ảnh tham chiếu, last_frame và 1080p không phụ thu.

Tham sốBắt buộcMô tả
modelCógoogle-omni-flash, veo-3.1, seedance-2.0-fast, seedance-2.5
promptCóMô tả video, tiếng Việt hoặc tiếng Anh.
secondsKhôngMặc định 5. seedance-2.0-fast: 5, 10, 15. seedance-2.5: 5, 10, 15 hoặc 20–30. veo-3.1: 4, 6, 8. google-omni-flash: 5, 10.
sizeKhông720x1280 (dọc, mặc định), 1280x720, 1024x1792, 1792x1024. Seedance thêm 1024x1024, 768x1024, 1024x768, 1680x720.
aspect_ratioKhông9:16, 16:9, 1:1, 3:4, 4:3, 21:9
input_referenceKhôngẢnh tham chiếu. 1 ảnh là khung đầu. Seedance tối đa 10 ảnh, Veo và Omni tối đa 3. JSON image_url hoặc mảng. Multipart lặp cùng tên field.
last_frameKhôngChỉ veo-3.1. Ảnh kết thúc, đi cùng input_reference.
input_videoKhôngChỉ google-omni-flash. URL MP4 gốc cho video-to-video.
resolutionKhôngChỉ veo-3.1. Đặt 1080p để lên Full HD. Mặc định 720p.

Tiền trừ khi POST tạo video trả thành công. Tra tiến độ, tải MP4 và hủy task không trừ thêm. Lỗi 4xx/5xx hoặc seconds không hợp lệ không trừ tiền.

curl https://api.monkeytech.vn/v1/videos \
  -H "Authorization: Bearer sk-mtk-..." \
  -H "content-type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "Cinematic drone shot flying through neon Tokyo at night",
    "seconds": 10,
    "aspect_ratio": "16:9"
  }'

# 200 ngay, status queued + id. Rồi poll đến completed.

Đọc hình ảnh

Các model có nhãn Vision nhận được ảnh PNG/JPEG/WebP/GIF. Với nhóm Claude qua Anthropic Messages, gửi ảnh base64 trong cùng mảng content với câu hỏi:

curl https://api.monkeytech.vn/v1/messages \
  -H "x-api-key: sk-mtk-..." \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-fable-5",
    "max_tokens": 512,
    "messages": [{
      "role": "user",
      "content": [
        {
          "type": "image",
          "source": {
            "type": "base64",
            "media_type": "image/png",
            "data": "iVBORw0KGgoAAA..."
          }
        },
        {"type": "text", "text": "Describe this image"}
      ]
    }]
  }'

16 model GPT dùng trực tiếp chuẩn OpenAI image_url tại /v1/chat/completions. Cổng trung chuyển hỗ trợ cả URL dữ liệu base64 và URL ảnh http(s):

{
  "model": "gpt-5.6-sol",
  "messages": [{
    "role": "user",
    "content": [
      {"type": "text", "text": "Read the content of this image"},
      {
        "type": "image_url",
        "image_url": {"url": "data:image/png;base64,iVBORw0KGgoAAA..."}
      }
    ]
  }]
}

Token hình ảnh do nhà cung cấp trả về sẽ được ghi nhận và tính phí như token đầu vào. Nên nén ảnh trước khi gửi và giữ toàn bộ nội dung yêu cầu dưới giới hạn 20 MB.

Phản hồi dạng luồng

Nên đặt "stream": true (mặc định trong ví dụ SDK). Không stream thì client phải chờ hết JSON — câu dài có thể 40s+. Chuỗi sự kiện được chuyển tiếp nguyên trạng theo điểm cuối đang gọi. Với Anthropic: message_start → content_block_delta (nhiều lần) → message_delta → message_stop. Với OpenAI, dữ liệu giữ định dạng chat.completion.chunk hoặc Responses API. Chi phí được chốt khi luồng phản hồi kết thúc.

event: content_block_delta
data: {"delta":{"text":"Hello","type":"text_delta"},"index":0,"type":"content_block_delta"}

event: message_delta
data: {"delta":{"stop_reason":"end_turn"},"usage":{"output_tokens":128}}

Tiêu đề phản hồi

Tiêu đề HTTPÝ nghĩa
x-monkeytech-modelModel thực tế đã xử lý
x-monkeytech-model-mapped-fromTên model bạn gửi, nếu đã được ánh xạ
x-monkeytech-input-tokensToken đầu vào đã tính phí
x-monkeytech-output-tokensToken đầu ra đã tính phí
x-monkeytech-cost-vndChi phí của lượt gọi (VNĐ)
x-monkeytech-price-vnd-per-mtokĐơn giá token đang áp dụng
x-monkeytech-price-vnd-per-requestĐơn giá cố định mỗi lượt gọi (nếu có)

Với lượt gọi dạng luồng, các tiêu đề token/chi phí không có sẵn (chi phí chỉ biết khi luồng kết thúc) — hãy tra trong trang Sử dụng.

Tính phí

Mọi lượt gọi trừ vào số dư ví theo token thực dùng: Claude Fable $0.3773; Opus/Sonnet $0.2955; GPT $0.1091 / 1.000.000 token, DeepSeek tính cố định mỗi lượt gọi (hoặc theo token với Flash). Lỗi xác thực, dữ liệu không hợp lệ hoặc lỗi 4xx/5xx từ nhà cung cấp không bị trừ tiền.

Nạp ví qua VietQR. Mã đơn nạp bắt đầu bằng ST — hãy gửi đúng mã này khi cần đối chiếu giao dịch với bộ phận hỗ trợ.

Mã lỗi

HTTPLoại lỗiNguyên nhân
400invalid_request_errorJSON sai hoặc thiếu tham số
401authentication_errorThiếu key, key sai hoặc đã thu hồi
402insufficient_balanceHết số dư ví — cần nạp thêm
413request_too_largeNội dung yêu cầu vượt 20 MB
429rate_limit_errorKhông giới hạn RPM và TPM.
502api_errorKhông kết nối được model từ nhà cung cấp thượng nguồn
503service_unavailableHệ thống đang bảo trì
{
  "type": "error",
  "error": {
    "type": "insufficient_balance",
    "message": "Số dư đã hết. Top up tại https://api.monkeytech.vn/dashboard/topup"
  }
}

Khắc phục sự cố

Trước khi báo lỗi, hãy chạy lệnh kiểm tra kết nối này — nó cho biết ngay vấn đề nằm ở key, ở số dư hay ở URL:

curl https://api.monkeytech.vn/v1/messages -i \
  -H "x-api-key: sk-mtk-..." \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-fable-5","max_tokens":32,
       "messages":[{"role":"user","content":"ping"}]}' | head -20

# 200 kèm tiêu đề x-monkeytech-cost-vnd  -> đã sẵn sàng
# 401 -> wrong key   402 -> out of balance   404 -> wrong base URL
Triệu chứngNguyên nhân thường gặpCách xử lý
404 hoặc “Not Found”Dán sai URL gốc — thừa hoặc thiếu đuôi /v1.Công cụ kiểu Anthropic dùng https://api.monkeytech.vn; công cụ kiểu OpenAI dùng https://api.monkeytech.vn/v1.
401 authentication_errorKey sai, đã thu hồi, hoặc app vẫn dùng key cũ đã lưu.Tạo key mới trong bảng điều khiển, xoá key cũ trong app rồi khởi động lại app.
402 insufficient_balanceHết số dư ví.Nạp thêm tại trang Nạp tiền.
429 rate_limit_errorGateway không giới hạn RPM theo key; 429 này thường đến từ nhà cung cấp upstream.Giảm số luồng chạy song song, hoặc tách thành nhiều key cho từng máy.
Claude Code cứ đòi đăng nhậpMáy còn phiên đăng nhập tài khoản Anthropic cũ.Chạy /logout trong Claude Code, đặt ANTHROPIC_AUTH_TOKEN rồi mở lại terminal.
App báo model không tồn tạiTên model gõ sai hoặc app tự thêm tiền tố nhà cung cấp.Gọi GET /v1/models để lấy đúng tên, và bỏ các tiền tố kiểu anthropic/ nếu app không yêu cầu.
Gửi ảnh thì lỗiApp gửi ảnh theo định dạng model đó không nhận, hoặc ảnh quá lớn.Chỉ dùng model có nhãn Vision, nén ảnh và giữ toàn bộ yêu cầu dưới 20 MB.
Biến môi trường không có tác dụngTerminal cũ vẫn giữ giá trị cũ, hoặc app đọc cấu hình trong tệp riêng.Mở terminal mới (Windows: đăng xuất/đăng nhập lại), và kiểm tra xem app có tệp cấu hình ghi đè biến môi trường không.

Giới hạn

  • Không giới hạn RPM và TPM.
  • Nội dung yêu cầu tối đa 20 MB.
  • Claude: ngữ cảnh tối đa 1.000.000 token, đầu ra tối đa 128.000 token; GPT/DeepSeek/AWS theo giới hạn từng model (xem /v1/models).
  • Tối đa 10 API key hoạt động mỗi tài khoản.
  • Thời gian chờ mỗi lượt gọi: 15 phút.

Còn thắc mắc? Thử ngay trong Studio AI.

⚡ Mở Studio AI
Group ZaloGroup TelegramWhatsApp