---
title: "content_blocked — text is on the blocklist"
url: https://lumean.app/de/developers/docs/errors/content-blocked
locale: de
description: "The order was not created. Body: `{\"success\": false, \"message\": \"…\", \"reason\": \"content_blocked\"}` — WITHOUT `errors`, because the request shape has nothing to do with it. Single-chunk retry and chunk regeneration return the same `reason`."
generated: 2026-10-17
---

# content_blocked — text is on the blocklist

- HTTP: `422`

- `reason`: `content_blocked`

- `Retry-After`-Header: nein

## Was passiert ist

The order was not created. Body: `{"success": false, "message": "…", "reason": "content_blocked"}` — WITHOUT `errors`, because the request shape has nothing to do with it. Single-chunk retry and chunk regeneration return the same `reason`.

## Warum

A fragment of the text has already been rejected by the content policy of the service and added to the global blocklist. Matching is done PER CHUNK and by exact match of the fragment text — so in a long text, it is one specific piece that trips the check, not the whole text.

## Was zu tun ist

Retrying is pointless and costly: the outcome is deterministic, and every attempt consumes resources and moves the counter toward `policy_cooldown_active`. The only action that works is to edit the offending fragment; because matching is per chunk, it is enough to fix that one fragment without rewriting the whole text. The API does not tell you why the policy triggered: that is admin-only, there is no reason field in the response and there will not be one — do not look for it.

## Nächste Anfrage

`POST /orders` with the edited `input_text`. You can check in advance how the text is split into chunks with `POST /orders/chunks/preview` — it does not check the blocklist itself, but it shows the fragment boundaries that matching is based on, and it is free.

## Verwandt

- [policy_cooldown_active — what a series leads to](https://lumean.app/de/developers/docs/errors/policy-cooldown-active)
- [policy_flagged — the same thing, but on a chunk of an existing order](https://lumean.app/de/developers/docs/errors/policy-flagged)
- [Guide: voiceover text](https://lumean.app/de/developers/docs/guide/text)
- [Guide: retries and idempotency](https://lumean.app/de/developers/docs/guide/retries)
- [POST /orders/chunks/preview](https://lumean.app/de/developers/docs/api/post-orders-chunks-preview)
- [POST /orders](https://lumean.app/de/developers/docs/api/post-orders)

---

- Diese Seite im Browser: https://lumean.app/de/developers/docs/errors/content-blocked
- Vollständige maschinenlesbare Referenz: https://api.lumean.app/docs/llm.md
