Програмери · REST v1

YoFont API/MCP

Генерирајте фонтови, преземајте глифови и управувајте со испораката програмски. Истиот мотор како во апликацијата — достапен со само еден bearer токен.

// Автентикација

Сите барања користат bearer токен во Authorization заглавието. Чувајте го на серверот.

Најавете се за да генерирате активен API клуч — бесплатно е, секој план вклучува пристап до API-то.

// Лимити на барања

Барањата се ограничени по API клуч. Надминувањето на лимитот враќа 429 Too Many Requests со Retry-After. Лимитите растат со вашиот план:

Создај фонт · сè друго
Starter60 · 600 / мин
Pro200 · 2 000 / мин
Agency600 · 6 000 / мин

Ви треба поголем капацитет? Надградете го вашиот план.

POST/api/public/generate

Генерирајте цело семејство фонтови од текстуален опис и/или референтна слика. Ви враќа задача чиј статус го проверувате додека не заврши.

promptзадолжителноОпис на фонтот со обичен јазик. Optional when reference_image_url is set.
reference_image_urlРеферентна слика за стил (PNG/JPG/WEBP) — директен јавен URL. Никогаш не ја чуваме; линкот го препраќаме непроменет до моторот за рендерирање, исто како при генерирање од скриншот кај приклучоците за Figma/Chrome.
languagesНиза од ISO кодови — стандардно ["en"]. Two-letter ISO codes, full list: GET /api/public/languages.
weightsна пр. ["normal","bold","thin"].
glyph_typesletters · digits · punct · special (default all).
model_tierstandard (Epicur ×1) · pro (Spinoza ×3) · ultra (Nietzsche ×5).

                
200Прифатено — враќа { success, link, task_id, glyphs_charged, status_url }
// Response JSON

                
402Нема глифови — дополнете на страницата Планови
GET/api/public/status?link=…

Земете го статусот на фонтот и URL-адресите за преземање (TTF / WOFF2 / променлив).

// Request

                
// Response JSON

                
GET/api/public/download?link=…

Преземете ја готовата датотека на фонтот во саканиот формат (ttf/otf/woff/woff2) — истата датотека што ја дава копчето за преземање во Studio.

// Request

                
// Response

                
GET/api/public/languages

Секој поддржан ISO-2 код на јазик, со број на глифови по писмо и насока на текстот — искористете го за да составите валидна низа „languages“.

// Request

                
// Response JSON

                
GET/api/public/fonts

Вашите последни 100 задачи за фонтови — статус, модел, извор и линк до страницата на секој фонт.

// Request

                
// Response JSON

                
// Проверка на статус

Генерирањето е асинхроно. По испраќање POST до generate, проверувајте го статусот преку GET /api/public/status?link=… на секои неколку секунди додека статусот не стане font_ready (или failed).

statusqueued · processing · font_ready · failed
progress{ total, completed, failed } — колку атласи на глифови се завршени
fontsДиректни URL-адреси за ttf/otf/woff/woff2, присутни штом status = font_ready.

Проверка на секои 3–5 секунди е доволна — целото семејство обично завршува за помалку од неколку минути. URL-адресите на датотеките на фонтот се статични и не бараат автентикација откако ќе бидат вратени.

// Грешки

Сите грешки следат конзистентен JSON формат: { "success": false, "error": "…" }.

400Неисправно барање — недостасуваат или се неважечки полиња. Проверете го error за детали.
401Неавторизирано — недостасува или е неважечки Authorization заглавие.
402Потребно е плаќање — квотата за глифови е исцрпена. Дополнете на страницата Планови.
403Забрането — линкот припаѓа на друга сметка.
404Не е најдено — ID-то на фонтот не постои или припаѓа на друга сметка.
429Премногу барања — достигнат е лимитот на барања. Обидете се повторно по Retry-After.
500Внатрешна грешка — нешто тргна наопаку кај нас. Повторниот обид по неколку секунди обично помага.
{
  "success": false,
  "error": "Not enough glyphs. Top up: https://yofont.com/plans"
}