Tổng quan
Wrapper AI cung cấp HTTP API để gửi yêu cầu đến các mô hình AI (Gemini). Mọi request cần API Key hợp lệ từ trang Dashboard.
Endpoints
POST https://ai.webnew.info.vn/api/request // Gửi yêu cầu tới AI
GET https://ai.webnew.info.vn/api/history // Lấy lịch sử xử lý
Content-Type
Content-Type: application/json
Xác thực
Truyền API Key qua header api-key. Bắt buộc với mọi request.
Header
api-key: your_api_key_here
Tham số Request Body – POST /api/request
| Tham số | Loại | Bắt buộc | Mô tả |
|---|---|---|---|
text |
string | Bắt buộc | Nội dung câu hỏi / yêu cầu gửi đến AI. |
tool_type |
string | Tùy chọn | Loại xử lý: text (văn bản, mặc định) hoặc image (tạo hình ảnh). |
option |
string | Tùy chọn | Mức model: fast (nhanh, mặc định), think (suy luận), pro (mạnh nhất). |
Loại xử lý (tool_type + option) & Thời gian xử lý
| tool_type | option | Mô tả | Thời gian | Trực quan |
|---|---|---|---|---|
text |
fast |
Văn bản – xử lý nhanh | ~ 30 giây | |
text |
think |
Văn bản – suy luận | ~ 30 giây | |
text |
pro |
Văn bản – model mạnh nhất | ~ 50 giây | |
image |
think |
Tạo hình ảnh – suy luận | ~ 1 phút 30 giây | |
image |
fast |
Tạo hình ảnh – xử lý nhanh | ~ 1 – 1 phút 10 giây | |
image |
pro |
Tạo hình ảnh chuyên sâu | ~ 2 phút |
Thời gian xử lý phụ thuộc vào tải hệ thống. Đặt
timeout phía client tối thiểu 150 giây khi dùng tool_type=image.
Ví dụ Code
cURL
curl -X POST "https://ai.webnew.info.vn/api/request" \
-H "api-key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{ "text": "Hello", "tool_type": "text", "option": "fast" }'
JavaScript (fetch)
const res = await fetch('https://ai.webnew.info.vn/api/request', {
method : 'POST',
headers: {
'Content-Type': 'application/json',
'api-key' : 'your_api_key_here',
},
body: JSON.stringify({
text : 'Tóm tắt đoạn văn: ...',
tool_type: 'text',
option : 'pro',
}),
});
const data = await res.json();
console.log(data.result);
PHP (curl)
$ch = curl_init('https://ai.webnew.info.vn/api/request');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 150,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'api-key: your_api_key_here',
],
CURLOPT_POSTFIELDS => json_encode([
'text' => 'Giải thích AI.',
'tool_type' => 'text',
'option' => 'think',
]),
]);
$result = json_decode(curl_exec($ch), true);
Python
import requests
resp = requests.post(
'https://ai.webnew.info.vn/api/request',
headers={'api-key': 'your_api_key_here'},
json={'text': 'Hello!', 'tool_type': 'text', 'option': 'fast'},
timeout=150,
)
print(resp.json()['result'])
Cấu trúc Response
HTTP status luôn là 200. Kiểm tra trường code trong JSON để biết thành công hay lỗi.
Thành công – code 200
{
"message" : "OK",
"code" : 200,
"noti" : "",
"result" : "Nội dung trả về từ AI...",
"image_urls": [],
"request_id": "67a3f2b1c4d5e",
"api_key_id": 42
}
Lỗi – code khác 200
{
"message" : "Error verifying API key",
"code" : 401,
"noti" : "",
"result" : "",
"image_urls": [],
"request_id": "",
"api_key_id": 0
}
Mã lỗi (trường code)
| code | message | Xử lý |
|---|---|---|
| 200 | OK | Xử lý thành công. |
| 400 | Data not found or invalid data | Body JSON không hợp lệ, thiếu trường text, hoặc tool_type/option không tồn tại. |
| 401 | Error verifying API key | Thiếu header api-key hoặc key không hợp lệ / chưa được cấp. |
| 403 | Forbidden | API Key đã đạt giới hạn sử dụng. Kiểm tra quota trong Dashboard. |
| 404 | Endpoint not found | URL không đúng. Kiểm tra lại địa chỉ endpoint. |
| 405 | Method Not Allowed | /api/request chỉ nhận POST, /api/history chỉ nhận GET. |
| 408 | Don't server Ai ready | Không có server AI nào đang hoạt động khớp với yêu cầu. |
| 409 | Api Name don't support | Trường api_name không được hỗ trợ. |
| 500 | Internal Server Error | Lỗi hệ thống. Thử lại sau 30s, liên hệ hỗ trợ kèm request_id. |
Ghi chú & Thực hành tốt
- Đặt
timeouttối thiểu 60s cho text và 150s cho request tạo hình. - HTTP status luôn 200. Dùng trường
codetrong JSON để xác định thành công/lỗi. - Kết quả tạo hình trả về trong
image_urls(mảng URL). Trườngresultcó thể chứa text mô tả kèm theo hình ảnh. - Dùng
trainđể truyền prompt hệ thống / hướng dẫn bổ sung mà không cần gộp vàotext. - API Key bị reset khi bấm "Tạo token mới" trong Dashboard – cập nhật lại ngay.
- Kết quả trả về luôn là UTF-8, không cần decode thêm.
- Hỗ trợ kỹ thuật: aboyit@hotmail.com – kèm
request_idtrong response lỗi.