> ## Documentation Index
> Fetch the complete documentation index at: https://docs.madiad.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Why a post did not go out

> The real failure messages you see when a post does not publish, why each happens, and how to fix it.

This page lists the failure messages you actually see when a post does not go out, with the cause
and the fix for each. It is written from the live publish log, not from imagined questions.

Two different things, worth keeping apart:

* **This page** is about **one post failing to publish**, usually because the destination platform
  refused it.
* [Error codes](/concepts/errors) is about the **API error codes** (`401`, `429`,
  `platform_not_connected`…) your code receives. Read that one if you are writing an integration.

<Note>
  Failure text is passed through verbatim from the destination platform. To find yours quickly,
  press Ctrl+F (or Cmd+F) and paste a few words from the message.
</Note>

## The Profile has no account connected for that platform

**You see:** `None of the requested platforms are valid for profile ... has no Instagram account configured`

This is the most common cause by a wide margin.

**Why:** the post targeted a platform the Profile has no account connected for, or the connection
has stopped being valid. Connections lapsing is ordinary: you changed a password, revoked access,
the platform asked for re-authentication, or the platform expired the grant on its own.

**How to fix:**

1. Open **Connections** in the dashboard and select the Profile you are actually posting with. With
   several Profiles it is easy to post with one and to have connected the other.
2. If the platform is not in the connected list, connect it and grant access again.
3. If you just reconnected and it still fails, read
   [The platform is restricting your account](#the-platform-is-restricting-your-account) below.
   Reconnecting does not clear that case.

<Warning>
  Resending the same request unchanged will fail the same way. Connect the account, or drop that
  platform from `platforms`, before retrying.
</Warning>

## The platform is restricting your account

**You see:**

* `Instagram: Action suspected as spam. Activity is restricted.`
* `You have reached the daily posting cap on tiktok. Used 15/15 in the last 24 hours.`

**Why:** the platform is limiting your account. This is not a Hub fault. Instagram throttles
behaviour that looks like spam (rapid posting, repeated content, a new account). TikTok enforces a
rolling 24-hour cap.

**How to fix:** slow the posting cadence, vary the content, and for a daily cap use
[scheduling](/concepts/scheduling) to spread posts into the next day. Nothing on the Hub side can
lift these limits, and reconnecting the account does not help.

## The source file is not usable

**You see:**

* `Google Drive URL does not point to a video file. Content-Type: audio/mp4`
* `Google Drive URL does not point to a video file. Content-Type: text/html`
* `Video URL is not accessible`

**Why:** the Hub fetches the file from the URL you send. A Google Drive share link usually returns
the **preview page** (`text/html`) rather than the file, or an audio-only stream (`audio/mp4`) when
the source is not really a video. A private link cannot be fetched at all.

**How to fix:**

1. Set sharing to **anyone with the link can view**.
2. Use a direct download URL, not the preview URL.
3. Check it yourself first: open the link in a private window. If you get a preview page, that is
   exactly what the Hub receives.
4. The reliable answer is hosting the file somewhere that returns the video directly (S3, R2, a CDN,
   your own hosting).

## A platform limit was exceeded

**You see:**

* `X: Tweet creation failed (403): This user is not allowed to post a video longer than 2 minutes.`
* `Pinterest description is too long (509 characters). Maximum allowed is 500.`
* `Pinterest title is too long (509 characters). Maximum allowed is 100.`
* `Facebook title is too long (575 characters). Maximum allowed is 255.`
* `Invalid platforms for photo upload: ['youtube']`

**Why:** every platform sets its own limits on text length, video duration and accepted content
types. The Hub sends what you composed; when the platform refuses it, you get its words back.

**How to fix:** use [platform options](/concepts/platform-options) to set a separate title and
description for the strict destinations instead of shortening everywhere. For a video that is too
long for X, cut a shorter version for X alone, or drop X from that post and keep the rest. A
photo-only post cannot go to YouTube, which takes video only (see [Channels](/concepts/channels)).

## A required field is missing

**You see:** `Title is required for Youtube. Provide a title.`

**Why:** YouTube requires its own title and will not take one from the post body.

**How to fix:** set the title in YouTube's own options before sending. See
[platform options](/concepts/platform-options) for which fields are required where.

## A temporary failure

**You see:**

* `TikTok photo upload timed out or failed. Last seen status: PROCESSING_DOWNLOAD`
* `X API request failed during video upload: 401 Client Error: Unauthorized`
* `Request failed (502)`

**Why:** the destination platform or the network had a transient problem. Nothing is wrong with
your content.

**How to fix:** retry after a few minutes. If you call the API, send an
[`Idempotency-Key`](/concepts/idempotency) so the retry cannot create a duplicate post. If it keeps
repeating, [contact support](mailto:info@madiad.com) with the time and the platform.

<Warning>
  `upstream_timeout` is the exception: the outcome is **undetermined** and the post may have gone
  out. Check your publish history, or the platform itself, before resending. Details in
  [Error codes](/concepts/errors).
</Warning>

## Some platforms failed

**You see:** `Một số nền tảng thất bại: tiktok, youtube`

**Why:** this is the Hub's own summary when one call fanned out to several platforms and only some
refused. The post IS live on the rest, so **do not resend the whole thing** or you will duplicate it
where it already succeeded.

**How to fix:** open that post's detail to see which platforms failed and why, then read the
matching section above. Resend ONLY the platforms that failed.

## Still unclear

Send us the time of the post, the Profile, the platforms you selected and the exact failure text, at
[info@madiad.com](mailto:info@madiad.com) or the hotline under **Help** in the dashboard. A real
person answers.
