Authentication errors (401)
“Invalid API key format”
htext_.
Fix: Ensure your Authorization header is:
“Invalid or inactive API key”
- Key was deleted or deactivated
- Key was copied incorrectly
- Using a key from wrong environment
- Check the key in your dashboard
- Regenerate if needed
- Ensure no extra whitespace
Validation errors (422)
“Invalid request parameters”
details array for specific field errors.
Common validation issues
| Field | Error | Fix |
|---|---|---|
text | empty after cleaning | Provide non-empty text |
font_id | not in range 1-90 | Use valid font ID |
font_size | not 12-400 or “auto” | Use valid size |
page_size | unknown value | Use supported format |
Rate limits (429)
“Rate limit exceeded”
- Read
Retry-Afterheader - Wait that many seconds
- Retry the request
”Request limit exceeded”
Output issues
Text is clipped/cut off
Causes:- Content too long for page size
- Margins too large
- Font size too large for content
- Some fonts and “natural” effects (rotation/variation/indentation) can shift strokes closer to the edge than expected
- Use
font_size: "auto"for automatic fitting - Reduce margins
- Use a larger page size
- Split text across multiple requests
- If you use random effects, reduce ranges or disable them for strict layouts
Layout looks inconsistent (font/effects)
Some fonts have different glyph metrics (letter widths, ascenders/descenders, kerning) and some effects are intentionally random. This can make certain font/settings combinations look slightly different between requests, and in edge cases can push text closer to the margins. Recommendations:- Start with
font_id: 1or2for the most predictable output - Use
/previewwith representative text and run multiple previews when randomness is enabled - For strict print layouts, disable random effects and keep a larger margin “safe area”
Whitespace looks wrong
The API normalizes whitespace:- Multiple spaces → single space
- Leading/trailing whitespace → removed
- Line breaks preserved (
\n)
- Use explicit line breaks (
\n) - Adjust
word_spacingparameter
Auto font size is too large
For short text, auto-fit may produce very large fonts. Fix: Setmax_auto_font_size:
Characters missing or show as boxes
Cause: Font doesn’t support those characters. Fix:- Check font’s
supported_languagesvia/fonts - Switch to a font that supports your language
- Font 1 and 10 have broad language coverage
Address mode issues
”Auto font sizing is not supported for address generation”
Address mode requires manual font sizing. Fix:“Address generation supports maximum 5 lines”
Fix: Reduce to 5 lines or fewer (count\n separators).
”Address generation supports maximum 250 characters”
Fix: Shorten the address text.PDF issues
PDF looks different from PNG
Expected: PDF has white background (no transparency). PDFs are rendered on opaque white background for print compatibility.PDF rejected by print service
Fixes:- Use appropriate preset (
lob,click2mail) - For strict preflight, use
standard: "pdfx1a" - Check bleed/crop settings match vendor requirements
PDF has crop marks I don’t want
Fix: Useprofile: "document" or a preset that disables marks:
click2mail preset which disables marks.
Performance issues
Requests are slow
Normal processing time is 200-800ms. If slower:- Check your network latency
- Large text takes longer
- High DPI (600) takes longer
- Complex effects add time
Getting inconsistent results
Natural effects are random by design:enable_word_rotationvaries anglesenable_natural_variationvaries letter positionsenable_random_indentationvaries line starts
Getting help
If these don’t resolve your issue:- Capture the
X-Request-IDfrom the response header - Note the exact error message and status code
- Save your request payload (sanitize any PII)
- Contact support at [email protected]