Разработчици · 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) — директен публичен адрес. Никога не го съхраняваме; препращаме връзката както е към машината за рендиране, също както плъгините за 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=…

Връща статуса на шрифт и адресите за сваляне (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Директни ttf/otf/woff/woff2 адреси, налични щом status = font_ready.

Проверка на всеки 3–5 секунди е напълно достатъчна — цялото семейство обикновено завършва за по-малко от няколко минути. Адресите на файловете на шрифта са статични и не изискват удостоверяване, щом бъдат върнати.

// Грешки

Всички грешки връщат един и същ 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"
}