Tạo avatar API
Ảnh đại diện mặc định từ tên: avatar chữ cái đầu đọc đúng tên tiếng Việt (Nguyễn Văn An → NA) hoặc identicon, mỗi người một màu cố định.
API avatar vẽ ảnh đại diện mặc định cho người dùng chưa tải ảnh lên. style=initials (mặc định) viết chữ cái đầu trên nền màu hình tròn, vuông hoặc bo góc. Tên tiếng Việt có tên gọi ở cuối, nên chữ cái là chữ đầu của họ và của tên (Nguyễn Văn An → NA, Đặng Thị Ánh → ĐÁ, giữ nguyên dấu); length=1 chỉ lấy tên và initials= để tự đặt.
style=identicon vẽ hoa văn đối xứng 5×5, tiện cho tài khoản ẩn danh, API key hay địa chỉ ví. Màu được lấy từ mã băm của tên, nên cùng một người luôn có cùng avatar ở mọi trang, và chữ tự chuyển sang màu tối trên nền sáng để dễ đọc. background và color để tự chọn màu.
Avatar chữ cái là SVG (sắc nét ở mọi kích thước, dùng thẳng trong <img src>); identicon có thêm PNG. Có thể dùng dạng URL /v1/avatar/Nguyễn Văn An.svg; phản hồi được cache một tuần.
Tham số
| Tên | Vị trí | Kiểu | Bắt buộc | Mặc định | |
|---|---|---|---|---|---|
name | query|path | string | có | Tên hoặc chuỗi bất kỳ (email, id…); hoặc /v1/avatar/{tên}.svg. | |
style | query | string | không | initials | initials hoặc identicon. |
size | query | number | không | 128 | Kích thước px (16–1024). |
shape | query | string | không | circle | circle, square hoặc rounded. |
format | query | string | không | svg | svg, hoặc png (identicon). |
length | query | number | không | 2 | Số chữ cái (1–3). |
background | query | string | không | Màu nền (hex). | |
color | query | string | không | Màu chữ / hoa văn (hex). |
Ví dụ
curl "https://apibox.io.vn/v1/avatar?name=Nguyễn Văn An&size=128" \
-H "Authorization: Bearer YOUR_API_KEY" \
-o outputconst res = await fetch('https://apibox.io.vn/v1/avatar?name=Nguyễn Văn An&size=128', {
method: 'GET',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
},
});
const blob = await res.blob();import requests
res = requests.get(
"https://apibox.io.vn/v1/avatar?name=Nguyễn Văn An&size=128",
headers={"Authorization": "Bearer YOUR_API_KEY"},
timeout=30,
)
open("output", "wb").write(res.content)<?php
$ch = curl_init('https://apibox.io.vn/v1/avatar?name=Nguyễn Văn An&size=128');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY'],
]);
$response = curl_exec($ch);
file_put_contents('output', $response);Kết quả trả về
binary image/svg+xml
Ứng dụng
- Avatar mặc định trong ứng dụng SaaS, diễn đàn, bình luận
- Danh bạ, ứng dụng chat
- Identicon cho API key, thiết bị, người dùng ẩn danh
- Ảnh giữ chỗ trong bản thiết kế
Hỏi đáp
Vì sao Nguyễn Văn An ra “NA”?
Tên tiếng Việt theo thứ tự họ – đệm – tên. Hai chữ cái lấy từ họ và tên; length=1 chỉ hiện chữ đầu của tên (A).
Có lấy PNG được không?
Identicon thì có (format=png). Avatar chữ cái chỉ có SVG vì PNG cần bộ dựng font; SVG chạy trên mọi trình duyệt và trong thẻ <img>.
Màu có thay đổi không?
Không. Màu được tính từ tên (không phân biệt hoa thường) nên luôn cố định.
API liên quan
Tạo mã QR
Tạo mã QR dạng PNG hoặc SVG chỉ với một request GET: link, văn bản, WiFi, danh thiếp vCard, e-mail, SMS, số điện thoại, toạ độ. Tuỳ chỉnh màu, kích thước.
|||Tạo mã vạch
Tạo mã vạch Code 128 cho tem nhãn, mã SKU, vận đơn chỉ với một request. Xuất SVG kèm dòng chữ hoặc PNG, tuỳ chỉnh chiều cao, độ rộng và màu sắc.
▭Ảnh placeholder
Lấy ảnh giữ chỗ đúng kích thước cho mockup và test: /v1/placeholder/600x400.png. Xuất SVG với chữ và màu tuỳ chỉnh, hoặc PNG một màu.