Розробникам · 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=…

Отримати статус шрифту та 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Прямі посилання 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"
}