---
title: "Use this when you need to style ASCII letters and digits as Unicode glyphs (bold-serif, italic-serif, bold-italic-serif, bold-sans, script, fraktur, double-struck, monospace, circled, squared, parenthesized, small-caps) for places that lack font control such as social bios or usernames."
method: POST
path: "/v1/fancy_text"
tags: ["text"]
---

# Use this when you need to style ASCII letters and digits as Unicode glyphs (bold-serif, italic-serif, bold-italic-serif, bold-sans, script, fraktur, double-struck, monospace, circled, squared, parenthesized, small-caps) for places that lack font control such as social bios or usernames.

`POST /v1/fancy_text`

## Request

- Base URL: `https://api.clean.tools`
- URL: `https://api.clean.tools/v1/fancy_text`
- Auth: none declared

Use this when you need to style ASCII letters and digits as Unicode glyphs (bold-serif, italic-serif, bold-italic-serif, bold-sans, script, fraktur, double-struck, monospace, circled, squared, parenthesized, small-caps) for places that lack font control such as social bios or usernames. Pass a `style` and `text` to get the transformed string; characters outside A-Z, a-z, and 0-9 (spaces, punctuation, emoji) pass through unchanged. Omit `style` to receive the list of valid style keys instead of transforming. Deterministic: same input, same output. Example: {style: "bold-serif", text: "Hello 123"} -> result "𝐇𝐞𝐥𝐥𝐨 𝟏𝟐𝟑".

## Request body

- object
  - `text` string: The text to transform. ASCII A-Z, a-z, and 0-9 are mapped to styled glyphs; other characters (spaces, punctuation, emoji) pass through unchanged. Required when a style is given.
  - `style` 'bold-serif' | 'italic-serif' | 'bold-italic-serif' | 'bold-sans' | 'script' | 'fraktur' | 'double-struck' | 'monospace' | 'circled' | 'squared' | 'parenthesized' | 'small-caps': The style to apply. Omit entirely to receive the list of valid style keys instead of transforming.

## Response `200`

Structured tool result.

- object
  - `tool` string
  - `result` object
    - `style` string: Transform mode only: the style that was applied (echoes the requested `style`).
    - `result` string: Transform mode only: the styled text, with unsupported characters passed through unchanged.
    - `styles` string[]: Discovery mode only (when `style` is omitted): the list of valid style keys.

## Other responses

- `400`: Invalid input or the tool reported an error.
- `413`: Request body exceeds the 128 KB limit.
- `429`: Rate limit exceeded; the response carries Retry-After and RateLimit-* headers — honor them and add jitter.

---

[API](https://skmtc.dev/clean/apis/clean-tools-api.md) · [All operations](https://skmtc.dev/clean/apis/clean-tools-api/llms.txt) · [OpenAPI document](https://skmtc.dev/clean/apis/clean-tools-api/revisions/a24a01d2833c?raw)
