Skip to main content

What it checks

If the same media array contains at least one item with kind: "image" and at least one with kind: "video", preflight fails before bytes resolve.

Why

X enforces this at the API level — /2/tweets rejects mixed-media payloads. Catching it locally surfaces a clean rule id instead of a generic 400 from upstream.

Failure response

Remediation

Two tweets in a reply chain — first one with images, second one with the video, threaded via twitter.replyToTweetId: