Skip to main content
Send preservation: true and mark every span that must not change with a marker such as [[T1]]. Everything outside the markers is humanized. Every marker comes back byte-for-byte, in the same order. It works on POST /api/stealthify and POST /api/stealthify/runs with rephrase: true.
returns something like:
The marker text itself is always copied from your input, never from the model.

What counts as a marker

A marker is [[, then at most 10 characters, then ]]. [[T1]], [[LINK_3]] and [[/a]] are markers. A [[ with no ]] within those 10 characters is ordinary text and is humanized like the rest. Markers can sit anywhere: mid-sentence, around link text, next to each other, or at the start or end of the text. For HTML, replace each tag or link with a unique marker on your side, send the text, then swap the markers back:
The text between two markers (link text, a heading) is humanized too. To keep a whole span unchanged, replace the entire span with a single marker.

Parameters

Modes

inline (default): the markers are swapped for placeholders and the text is rewritten in one pass, so sentences keep their flow. Every placeholder has to come back once and in order. If one doesn’t, that text falls back to split. With super, inline works differently: the markers never go to the model. The whole text is rewritten in one pass without them, and the rewrite is put back around the markers sentence by sentence:
  • A marker on its own line, or between two sentences, stays exactly where it was.
  • A short heading or label right before a marker between sentences, like Beach.[[T1]] Sand and water or Meal Prep Tip:[[T2]] Cook a big batch, stays as you wrote it: up to 8 words from the start of the line or the previous marker, 12 if it ends in a colon.
  • A sentence with a marker inside it is rewritten on its own with the marker held in place. If the model can’t keep it, that sentence stays as you wrote it.
This keeps most of the detection-bypass of a plain super rewrite. For the best results, put markers for headings and other blocks on their own line or between sentences. split: every stretch of text between two markers is rewritten on its own and the markers are put back between them. It never depends on the model keeping a placeholder, but short fragments read choppier and are easier to detect. A stretch of fewer than 3 words stays as it is. In both modes, punctuation and spacing next to a marker are kept. If the rewrite of Hello [[T1]], how drops the comma, it comes back.

Response

With preservation: true, the response (and the completed run status) includes:
object
If the markers can’t be returned unchanged, the request fails instead of returning a broken text: 500 on POST /api/stealthify, a failed run on POST /api/stealthify/runs. Nothing is charged for a failed request.

Billing and limits

Words inside markers are not billed. The 3,000-word limit of POST /api/stealthify still counts the whole text, markers included.
Preserving text can reduce detection-bypass scores, because frozen text is not humanized. Placeholders in the text also cost some bypass, which is why super leaves them out. split mode, and inline after it falls back to split, rewrite short fragments on their own, which bypass detectors less well than one pass over the whole text. fallbackUsed: true tells you when that happened.