Programeri · REST v1

YoFont API/MCP

Generišite fontove, preuzimajte glifove i upravljajte isporukom programski. Isti engine kao u aplikaciji — dovoljan je jedan bearer token.

// Autentifikacija

Svaki zahtev nosi bearer token u Authorization zaglavlju. Držite ga na serveru.

Prijavite se da napravite aktivan API ključ — besplatno je, svaki plan uključuje pristup API-ju.

// Ograničenja zahteva

Zahtevi su ograničeni po API ključu. Kada pređete limit, dobijate 429 Too Many Requests sa Retry-After. Ograničenja rastu sa vašim planom:

Napravi font · sve ostalo
Starter60 · 600 / min
Pro200 · 2 000 / min
Agency600 · 6 000 / min

Treba vam veći protok? Nadogradite plan.

POST/api/public/generate

Generiše kompletnu familiju fontova iz tekstualnog opisa i/ili referentne slike. Vraća zadatak koji pratite dok se ne završi.

promptobaveznoOpis fonta običnim rečima. Optional when reference_image_url is set.
reference_image_urlReferentna slika stila (PNG/JPG/WEBP) — direktan javni URL. Nikad je ne čuvamo; link prosleđujemo kakav jeste do render engine-a, isto kao što Figma/Chrome dodaci rade sa generisanjem fonta iz snimka ekrana.
languagesNiz ISO kodova — podrazumevano ["en"]. Two-letter ISO codes, full list: GET /api/public/languages.
weightsnpr. ["normal","bold","thin"].
glyph_typesletters · digits · punct · special (default all).
model_tierstandard (Epicur ×1) · pro (Spinoza ×3) · ultra (Nietzsche ×5).

                
200Prihvaćeno — vraća { success, link, task_id, glyphs_charged, status_url }
// Response JSON

                
402Nema više glifova — dopunite na stranici Planovi
GET/api/public/status?link=…

Dobavite status fonta i linkove za preuzimanje (TTF / WOFF2 / promenljivi).

// Request

                
// Response JSON

                
GET/api/public/download?link=…

Preuzmite gotov fajl fonta u željenom formatu (ttf/otf/woff/woff2) — isti fajl koji daje dugme za preuzimanje u Studiju.

// Request

                
// Response

                
GET/api/public/languages

Svi podržani ISO-2 kodovi jezika, sa brojem glifova po pismu i smerom teksta — koristite ga da sastavite ispravan niz "languages".

// Request

                
// Response JSON

                
GET/api/public/fonts

Vaših poslednjih 100 zadataka za fontove — status, model, izvor i link ka stranici svakog fonta.

// Request

                
// Response JSON

                
// Praćenje statusa

Generisanje je asinhrono. Nakon POST zahteva na generate, pratite GET /api/public/status?link=… svakih nekoliko sekundi dok status ne postane font_ready (ili failed).

statusqueued · processing · font_ready · failed
progress{ total, completed, failed } — koliko je atlasa glifova završeno
fontsDirektni ttf/otf/woff/woff2 URL-ovi, prisutni čim status = font_ready.

Provera na svakih 3–5 sekundi je sasvim dovoljna — cela familija se obično završi za manje od par minuta. URL-ovi fajlova fonta su statični i ne zahtevaju autentifikaciju nakon što se vrate.

// Greške

Sve greške imaju isti JSON oblik: { "success": false, "error": "…" }.

400Neispravan zahtev — polja nedostaju ili nisu ispravna. Proverite error za detalje.
401Neovlašćen pristup — nedostaje ili je neispravan Authorization zaglavlje.
402Potrebno plaćanje — potrošili ste kvotu glifova. Dopunite je na stranici Planovi.
403Zabranjeno — link pripada drugom nalogu.
404Nije pronađeno — ID fonta ne postoji ili pripada drugom nalogu.
429Previše zahteva — dostigli ste limit zahteva. Pokušajte ponovo posle Retry-After.
500Interna greška — nešto je kod nas pošlo naopako. Obično pomogne da pokušate ponovo za nekoliko sekundi.
{
  "success": false,
  "error": "Not enough glyphs. Top up: https://yofont.com/plans"
}