Requirements differ per platform
The composer enforces each platform’s rules before it lets you schedule, which is why a post that is fine on X may be blocked on Instagram. The two that catch people most often:- Some platforms will not accept a text-only post. Instagram and TikTok both require media.
- Aspect ratio and duration are enforced by the platform, not by Nushir. A video the composer accepts can still be rejected on publish if it falls outside what the platform allows.
Uploading over the API
Two routes, depending on where the file is. Local file:id from the post:
upload-from-url sends no credentials with its fetch, so the URL has to be
publicly reachable. A signed URL works; a private bucket path does not.