Skip to main content
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 is about the API error codes (401, 429, platform_not_connected…) your code receives. Read that one if you are writing an integration.
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.

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 below. Reconnecting does not clear that case.
Resending the same request unchanged will fail the same way. Connect the account, or drop that platform from platforms, before retrying.

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 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 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).

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 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 so the retry cannot create a duplicate post. If it keeps repeating, contact support with the time and the platform.
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.

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 or the hotline under Help in the dashboard. A real person answers.