YoFont — AI font generator
Nhà phát triển · REST v1

YoFont API/MCP

Hãy tạo phông chữ, lấy ký tự và quản lý việc phân phối bằng mã. Cùng một bộ máy với ứng dụng, chỉ cách một bearer token.

// Xác thực

Mọi yêu cầu đều dùng một bearer token trong header Authorization. Hãy giữ nó ở phía máy chủ.

Hãy đăng nhập để tạo một khóa API thật — quyền truy cập API và MCP đã có sẵn trong các gói Pro và Studio.

// Giới hạn tần suất

Yêu cầu được giới hạn theo từng khóa API. Vượt giới hạn sẽ nhận về 429 Too Many Requests kèm một Retry-After. Giới hạn tăng theo gói của bạn:

Tạo phông chữ · mọi thứ còn lại
Pro200 · 2 000 / phút
Studio600 · 6 000 / phút

Cần thông lượng cao hơn? Hãy nâng cấp gói của bạn.

POST/api/public/generate

Tạo trọn một họ phông chữ từ câu mô tả và/hoặc một ảnh mẫu. Trả về một tác vụ để bạn theo dõi cho tới khi hoàn tất.

promptbắt buộcMô tả bộ chữ bằng lời thường ngày. Optional when reference_image_url is set.
reference_image_urlẢnh mẫu phong cách (PNG/JPG/WEBP) — một địa chỉ công khai trực tiếp. Chúng tôi không bao giờ lưu nó; chúng tôi chuyển tiếp liên kết nguyên trạng tới bộ máy dựng phông, giống như tính năng ảnh màn hình thành phông chữ của plugin Figma/Chrome.
languagesMảng các mã ISO — mặc định là ["en"]. Two-letter ISO codes, full list: GET /api/public/languages.
weightsví dụ ["normal","bold","thin"].
glyph_typesletters · digits · punct · special (default all).
model_tierstandard (Epicur ×1) · pro (Spinoza ×3) · ultra (Nietzsche ×5).

                
200Đã tiếp nhận — trả về { success, link, task_id, glyphs_charged, status_url }
// Response JSON

                
402Hết ký tự — hãy nạp thêm trên trang Các gói
GET/api/public/status?link=…

Lấy trạng thái và các địa chỉ tải về của một phông chữ (TTF / WOFF2 / phông biến thiên).

// Request

                
// Response JSON

                
GET/api/public/download?link=…

Tải tệp phông chữ đã dựng ở một định dạng cụ thể (ttf/otf/woff/woff2) — đúng tệp mà nút tải về trong Studio tạo ra.

// Request

                
// Response

                
GET/api/public/languages

Mọi mã ngôn ngữ ISO-2 được hỗ trợ, kèm số ký tự theo từng hệ chữ viết và hướng viết — dùng nó để dựng một mảng "languages" hợp lệ.

// Request

                
// Response JSON

                
GET/api/public/fonts

100 tác vụ phông chữ gần nhất của bạn — trạng thái, mô hình, nguồn và liên kết tới trang của từng phông chữ.

// Request

                
// Response JSON

                
// Theo dõi tiến trình

Việc tạo phông là bất đồng bộ. Sau khi POST tới generate, hãy theo dõi GET /api/public/status?link=… cách vài giây một lần cho tới khi trạng thái là font_ready (hoặc failed).

statusqueued · processing · atlas_ready · font_ready · failed
progress{ total, completed, failed } — đã dựng xong bao nhiêu atlas ký tự
fontscác địa chỉ tệp ttf/otf/woff/woff2, có mặt ngay khi status = font_ready. Những địa chỉ này cần khóa API của bạn — truy cập mà không có header Authorization sẽ nhận về 403. Hãy tải nội dung tệp qua GET /api/public/download?link=…&format=….

Theo dõi mỗi 3–5 giây là quá đủ — một họ phông đầy đủ thường xong trong chưa tới hai phút. Hãy tải các tệp qua GET /api/public/download kèm khóa API của bạn; các địa chỉ trong "fonts" không truy cập công khai được.

// Lỗi

Mọi lỗi đều theo cùng một cấu trúc JSON: { "success": false, "error": "…" }.

400Yêu cầu không hợp lệ — thiếu trường hoặc trường không hợp lệ. Hãy kiểm tra error để biết chi tiết.
401Chưa được xác thực — thiếu hoặc sai Authorization header.
402Cần thanh toán — đã hết hạn mức ký tự. Hãy nạp thêm trên trang Các gói.
403Bị từ chối — liên kết này thuộc về tài khoản khác.
404Không tìm thấy — ID phông chữ không tồn tại hoặc thuộc về tài khoản khác.
429Quá nhiều yêu cầu — đã chạm giới hạn tần suất. Hãy thử lại sau Retry-After.
500Lỗi nội bộ — có trục trặc ở phía chúng tôi. Thử lại sau vài giây thường là được.
{
  "success": false,
  "error": "Not enough glyphs. Top up: https://yofont.com/plans"
}