Skip to main content
POST
/
v1
/
font-generations
/
text
Create a text font generation
const options = {
  method: 'POST',
  headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
  body: JSON.stringify({prompt: 'a cute and bubbly font', glyph_set: 'standard'})
};

fetch('https://api.mixfont.com/v1/font-generations/text', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "id": "7d58a66d-f129-4f9a-bf9a-4f2c6d0c3e4d",
  "name": "Nebula Sans",
  "ttf_url": null,
  "status": "preparing",
  "input_type": "text",
  "glyph_set": "standard",
  "progress_percent": 0,
  "poll_url": "https://api.mixfont.com/v1/font-generations/7d58a66d-f129-4f9a-bf9a-4f2c6d0c3e4d",
  "created_at": "2026-06-02T21:12:42.000Z"
}
Start a font generation job from a text prompt. The response returns immediately with an id and poll_url. Use GET /v1/font-generations/{jobId} to poll until the job reaches a terminal status.

Authorizations

x-api-key
string
header
required

Body

application/json
prompt
string
required

Text prompt describing the font to generate.

Required string length: 1 - 2000
glyph_set
enum<string>
default:standard

standard generates 72 glyphs to support English with basic letters, numbers, and punctuation. extended generates 319 glyphs to support all Latin languages, including special characters, costs more credits, and may take 2-3 minutes to complete.

Available options:
standard,
extended

Response

Generation job accepted

id
string
required

Generation id.

name
string
required

Generated font display name.

ttf_url
string<uri> | null
required

Download URL for the generated TTF file. This is null until the job succeeds.

status
enum<string>
required
Available options:
preparing,
queued,
running,
succeeded,
cancelled,
failed
input_type
enum<string>
required
Available options:
text,
image
glyph_set
enum<string>
default:standard
required

standard generates 72 glyphs to support English with basic letters, numbers, and punctuation. extended generates 319 glyphs to support all Latin languages, including special characters, costs more credits, and may take 2-3 minutes to complete.

Available options:
standard,
extended
progress_percent
number
required

Approximate job progress percentage.

Required range: 0 <= x <= 100
poll_url
string<uri>
required

URL to poll for generation status.

created_at
string<date-time>
required

ISO timestamp for when the generation was created.

error
string

Error message. Present only when status is failed and an error message is available.