Flag Mode
Schedule a local wall-clock time in a specific timezone:
File Mode
Example:
Omit --profile-id or profile_id to use your default Mallary profile. Run mallary profiles list to find the random public ID for each profile.
posts create returns Mallary job IDs immediately. Once each job finishes publishing, mallary jobs get <id> and mallary posts list --json include platform_post_id and platform_post_url when the platform returns or exposes them.
File Mode Rules
--file is mutually exclusive with payload-building flags
- Mallary uploads local
media[].url file paths to the Mallary CDN first
- Mallary uploads local
media[].thumbnail_url file paths to the Mallary CDN first
- existing remote media URLs must already point to
https://files.mallary.ai/...
- Mallary rejects external remote media URLs
- Mallary passes platform-specific payloads through to the API
- use
platform_options.<platform>.message for a platform-specific message or caption
Video Thumbnails
In flag mode, use --thumbnail with exactly one --media item:
In file mode, put thumbnail_url on the media item. Mallary uploads local thumbnail paths automatically. Existing remote thumbnail URLs must already point to https://files.mallary.ai/....
Current thumbnail support:
- YouTube regular videos: supported. Use
jpg, jpeg, or png up to 2 MB. Recommended: 1280x720 16:9. YouTube Shorts thumbnails are skipped.
- Facebook videos: supported with
jpg, jpeg, or png up to 10 MB.
- Instagram videos/Reels: supported with a Mallary-hosted cover URL. Use an image that matches the video placement.
- TikTok video posts: Mallary does not send arbitrary thumbnail images to TikTok. If you supply
thumbnail_url, Mallary skips its video_cover_timestamp_ms behavior, and TikTok uses its default cover.
- TikTok photo posts:
thumbnail_url selects the cover only when it exactly matches one of the image URLs in the same media[] array.
Scheduling Rules
- use
--scheduled-at 2026-04-06T18:30:00Z when you already know the absolute publish timestamp
- use
--scheduled-at 2026-04-06T14:30 --scheduled-timezone America/New_York when you want a local wall-clock time in a specific timezone
- in file mode, send
scheduled_at and optional scheduled_timezone
scheduled_timezone must be an IANA timezone such as America/New_York
Mallary CLI README currently documents platform-specific payload examples for:
- Facebook
- Instagram
- LinkedIn
- YouTube
- TikTok
- Pinterest
- Reddit
- Threads
- Snapchat
- X
For the exact platform_options fields currently supported by the posting API, see:
Platform options reference
Every publishing platform accepts platform_options.<platform>.message as an optional platform-specific message. Leave it blank or omit it to use the top-level message.
Threads Notes
platform_options.threads.post_type can be text, image, video, or carousel.
- If you omit
platform_options.threads.post_type, Mallary chooses from the media payload:
no media = text,
one image = image,
one video = video,
multiple supported media items = carousel.
- Threads media constraints are:
text = no media,
image = 1 image,
video = 1 video,
carousel = 2 to 20 media items.
- Threads-supported media formats are
jpg, jpeg, png, webp, mp4, and mov.
Mallary CLI uses the same platform media validation as the Mallary API.
Important current rules:
- Threads supports text-only posts, one image, one video, or a 2 to 20 item carousel.
- YouTube requires exactly one video.
- Instagram supports
feed, story, reel, and carousel through platform_options.instagram.post_type. Stories use one image or video, Reels use one video, and carousels use 2 to 10 mixed items.
- LinkedIn currently supports text-only posts or one image attachment only.
- TikTok video posts require one video, and TikTok photo posts support up to 35 JPEG/WebP images.
- TikTok defaults to
MEDIA_UPLOAD, which sends uploads to the creator inbox for final review inside TikTok. To publish directly instead, set platform_options.tiktok.post_mode = DIRECT_POST.
- Pinterest requires exactly one image or GIF, or exactly one video, plus
boardId.
- Reddit image posts require one image or GIF. The current public API path does not support Reddit video upload.
- X allows up to 4 images, or 1 video, or 1 GIF.
- Snapchat requires partner/API access before posting can succeed, even though validation rules also exist for its media shapes.
For the full per-platform matrix and current runtime caveats, see:
Platform-specific media rules
- use repeatable
--comment flags in flag mode
- in file mode, send
comments_under_post as an array
- the current limit is 3 items
- TikTok and Snapchat do not currently support
comments_under_post
Example:
AI Auto Reply
- available on Pro and Business plans only
- you can enable it account-wide with
mallary settings update
- you can enable it per post with
--auto-reply-enabled
- it depends on saved account settings, not just the current payload
To enable it, you must set these fields:
business_name
website_url
business_description
services
contact_info
Last modified on July 30, 2026