- 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, usually in English.
Where the Hub has a Vietnamese rendering, the API adds it after
· Tạm dịch:, and the
Đăng bài screen shows the rendering in place of the English. 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:
- 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.
- If the platform is not in the connected list, connect it and grant access again.
- If you just reconnected and it still fails, read The platform is restricting your account below. Reconnecting does not clear that case.
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.
The source file is not usable
You see:Google Drive URL does not point to a video file. Content-Type: audio/mp4Google Drive URL does not point to a video file. Content-Type: text/htmlVideo URL is not accessible
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:
- Set sharing to anyone with the link can view.
- Use a direct download URL, not the preview URL.
- Check it yourself first: open the link in a private window. If you get a preview page, that is exactly what the Hub receives.
- 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.Mastodon status is too long (724 characters). This instance allows a maximum of 500 characters.Invalid platforms for photo upload: ['youtube']
<platform>_caption, <platform>_title, or a “Riêng từng nền tảng”
box in the composer. That text is sent as you wrote it. Mastodon is the common case: 500 is only
the default, each server sets its own limit, and the server refuses text over it.
How to fix: shorten the text you wrote for that platform. For Mastodon, shorten it to the
number the message gives, or go back to one shared caption, which is cut to 500 for Mastodon. A
title or description that is too long has its own field in
platform options. 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_DOWNLOADX API request failed during video upload: 401 Client Error: UnauthorizedRequest failed (502)
Idempotency-Key so the retry cannot create a duplicate post. If it keeps
repeating, contact support with the time and the platform.
Some platforms failed
You see: each platform that refused, with its own reason, for example- in the Kết quả column of the Đăng bài screen:
Mastodon: Bài đăng Mastodon quá dài (724 ký tự). Máy chủ Mastodon này cho phép tối đa 500 ký tự. - through the API, and on the Tổng quan page:
Mastodon: Mastodon status is too long (724 characters). This instance allows a maximum of 500 characters. · Tạm dịch: Bài đăng Mastodon quá dài (724 ký tự). Máy chủ Mastodon này cho phép tối đa 500 ký tự. TikTok: Nền tảng từ chối bài đăng.when a platform gave no reasonMột số nền tảng thất bại: tiktok, youtubeon posts from before 1 October 2026
POST /v1/posts/retry with the
post’s request_id — from the publish answer, the failure email, or
GET /v1/posts/history. Neither counts as a second upload. An automation (n8n, Make, your own code) that re-sends the post by
calling the publish endpoint again publishes a second copy everywhere the first one went live — have
it call retry instead.
When every platform refuses, the post is recorded as “Không đăng được” instead: nothing was
published, so fixing the content and sending the whole post again is safe.
The failure email
The Hub emails the account owner when posts did not publish, usually once a day around 08:30 Vietnam time. Each line gives the reason, how many posts it hit, and when each of them failed, in Vietnam time (for a scheduled post, the time it was due to go out), and, for a post that went live on some platforms, therequest_id a retry takes. The email can arrive many hours after the failure,
and it does not know about a post you re-sent yourself: if you have already re-posted one
successfully, ignore its line. A post that went live on some platforms: resend only the platforms
that failed, as in Some platforms failed. A post that went live nowhere:
fix it and send the whole post again.

