Sviluppatori · REST v1

YoFont API/MCP

Genera font, recupera glifi e gestisci la consegna direttamente da codice. Lo stesso motore dell'app: ti basta un bearer token.

// Autenticazione

Tutte le richieste usano un bearer token nell'header Authorization. Mantienilo lato server.

Accedi per generare una chiave API attiva — è gratis, ogni piano include l'accesso API.

// Limiti di frequenza

Le richieste sono limitate per chiave API. Superare il limite restituisce 429 Too Many Requests con un Retry-After. I limiti crescono con il piano:

Crea font · tutto il resto
Starter60 · 600 / min
Pro200 · 2 000 / min
Agency600 · 6 000 / min

Ti serve più throughput? Passa a un piano superiore.

POST/api/public/generate

Genera una famiglia di font completa da un prompt testuale. Restituisce un job che puoi interrogare o ricevere tramite webhook.

promptobbligatorioDescrizione del font in linguaggio naturale. Optional when reference_image_url is set.
reference_image_urlImmagine di riferimento per lo stile (PNG/JPG/WEBP) — un URL pubblico diretto. Non la conserviamo mai; inoltriamo il link così com'è al motore di rendering, come fanno i plugin Figma/Chrome per la generazione da screenshot.
languagesArray di codici ISO — valore predefinito: ["en"]. Two-letter ISO codes, full list: GET /api/public/languages.
weightses. ["normal","bold","thin"].
glyph_typesletters · digits · punct · special (default all).
model_tierstandard (Epicur ×1) · pro (Spinoza ×3) · ultra (Nietzsche ×5).

                
200Accettato — restituisce { success, link, task_id, glyphs_charged, status_url }
// Response JSON

                
402Glifi esauriti — ricarica nella pagina Piani
GET/api/public/status?link=…

Recupera lo stato di un font e gli URL di download (TTF / WOFF2 / variabile).

// Request

                
// Response JSON

                
GET/api/public/download?link=…

Scarica il file del font compilato in un formato specifico (ttf/otf/woff/woff2) — lo stesso file prodotto dal pulsante di download di Studio.

// Request

                
// Response

                
GET/api/public/languages

Ogni codice lingua ISO-2 supportato, con il conteggio dei glifi per ogni sistema di scrittura e la direzione del testo — usalo per costruire un array "languages" valido.

// Request

                
// Response JSON

                
GET/api/public/fonts

Le tue ultime 100 richieste di font — stato, modello, origine e link alla pagina di ciascun font.

// Request

                
// Response JSON

                
// Polling

La generazione è asincrona. Dopo il POST a generate, interroga GET /api/public/status?link=… ogni pochi secondi finché lo stato non diventa font_ready (o failed).

statusqueued · processing · font_ready · failed
progress{ total, completed, failed } — quanti atlanti di glifi sono completati
fontsURL diretti ttf/otf/woff/woff2, presenti quando status = font_ready.

Un poll ogni 3–5 secondi è più che sufficiente — una famiglia completa in genere finisce in meno di un paio di minuti. Gli URL dei file dei font sono statici e non richiedono autenticazione una volta restituiti.

// Errori

Tutti gli errori seguono una struttura JSON coerente: { "success": false, "error": "…" }.

400Richiesta non valida — campi mancanti o non validi. Controlla l'error per i dettagli.
401Non autorizzato — token mancante o non valido nell'header Authorization header.
402Pagamento richiesto — quota di glifi esaurita. Ricarica nella pagina Piani.
403Vietato — il link appartiene a un altro account.
404Non trovato — l'ID del font non esiste o appartiene a un altro account.
429Troppe richieste — limite di frequenza raggiunto. Riprova dopo Retry-After.
500Errore interno — qualcosa è andato storto da parte nostra. Di solito basta riprovare dopo qualche secondo.
{
  "success": false,
  "error": "Not enough glyphs. Top up: https://yofont.com/plans"
}