The easiest way to post to Threads via API
Stop fighting with the Threads API complexity. Use Mallary's unified API, MCP Server, AI Agent CLI or dashboard to schedule Threads text, image, video and carousel posts in minutes, not months.
Includes a 100% money-back guarantee. No questions asked.
Why Mallary vs Threads API complexity?
Integrating directly with the Threads API is notoriously difficult. Here is why engineering teams choose Mallary instead.
Using the Threads API complexity:
- Complex OAuth via Instagram Business verification
- Careful management for rate limits needed
- Evolving platform means frequent changes to API
- Build separate integrations per platform
Using the Mallary API:
- Official verified and approved permission to post on Threads
- One unified API for Threads and 9 other platforms
- Automatic token refresh and management
- Built-in AI auto-replies and engagement
- Automatic retries and rate limit handling
- We handle OAuth, media hosting, and breaking API changes
- US Based Servers. Post using API, CLI, MCP Server, or dashboard and your content will be posted from the US
Does Threads have an API?
Yes, and you can integrate it in minutes!
Full example flow code shown below.
We have comprehensive documentation to get you up and running immediately.
// API key from mallary.ai
const API_KEY = process.env.MALLARY_API_KEY;
// threads-launch-video.mp4
const file = document.querySelector("input[type=file]").files[0];
// 1. Get a presigned URL.
const uploadMetaRes = await fetch("https://mallary.ai/api/v1/upload", {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
filename: file.name,
}),
});
const uploadMeta = await uploadMetaRes.json();
// Example output:
// {
// uploadUrl: "https://...",
// mediaUrl: "https://files.mallary.ai/uploads/...",
// headers: { "Content-Type": "application/octet-stream" }
// }
// 2. Upload your file to uploadMeta.uploadUrl. Use uploadMeta.mediaUrl in the post payload.
await fetch(uploadMeta.uploadUrl, {
method: "PUT",
headers: uploadMeta.headers ?? {},
body: file,
});
// Example output: HTTP 200/204 from uploadMeta.uploadUrl.
// 3. Post your video to threads using the mediaUrl.
const postRes = await fetch("https://mallary.ai/api/v1/post", {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
message: "Check out our new product!",
platforms: ["threads"],
media: [{ url: uploadMeta.mediaUrl }],
comments_under_post: ["Find out more at https://example.com today"],
auto_reply_enabled: true,
}),
});
const post = await postRes.json();
const jobId = post.jobs[0].jobId;
// Example output:
// {
// status: "queued",
// batch_id: "a1b2c3d4",
// jobs: [{ platform: "threads", jobId: "123" }]
// }
// 4. Check the job status.
const jobRes = await fetch(`https://mallary.ai/api/v1/jobs/${jobId}`, {
headers: { Authorization: `Bearer ${API_KEY}` },
});
const { data } = await jobRes.json();
console.log(data.job);
// Example output:
// {
// id: "123",
// platform: "threads",
// status: "completed",
// result: { postUrl: "https://..." }
// }
Don't just post.
Engage on autopilot.
Mallary can detect new questions and comments on your published posts, and then use AI to post helpful replies and calls to action.
Simply add your business description, product features, pricing and FAQs in the Mallary dashboard, and let our AI handle the community engagement while you sleep.
-
Context-aware, brand-safe responses
-
Answers questions. Supports CTAs, links, and follow-ups
-
Works natively across all supported platforms
sarah_designs Does this integrate with Slack? Need to know for my team!
Acme Co Hey Sarah! đź‘‹ Yes, we have a native Slack integration available on all Pro plans. Let us know if you need help setting it up!
Built for AI Agents.
Give your agents social media scheduling powers
Mallary isn't just for humans. We provide native tools, skills, and protocols for autonomous agents and workflow automation platforms to manage your Threads presence.
Agentic Social Media Scheduling
Our API is designed with LLMs in mind. Predictable schemas, clear error messages, and unified payloads make it incredibly easy for agents to reason about and execute actions.
MCP Support
Native Model Context Protocol (MCP) support. Expose Mallary's posting, scheduling, and analytics capabilities directly to your custom AI agents as callable tools and skills.
n8n & Make.com
Plug-and-play integrations for popular automation platforms. Build complex, multi-step social media workflows in n8n or Make.com without writing a single line of code.
Officially Verified & Approved
Mallary is fully audited and approved by Meta, Google, LinkedIn, TikTok and more. We use 100% official APIs, no sketchy workarounds, no headless browsers, and no risk of your accounts getting banned.
Supported Platforms
Within 30 seconds you can connect accounts, schedule posts and go live on 10 platforms.
Frequently asked questions
Getting Started
Product Basics
Do you use official API's for each platform?
Yes. We only use each platform’s official APIs (Google, TikTok, Facebook, etc.)—no scraping or workarounds. Mallary is a Meta Verified Tech Provider and has passed platform security reviews where required. We’re also a registered LLC based in Lexington, Kentucky, USA.
Do I need to create developer apps for each platform?
No! That's one of the biggest benefits of using Mallary. You don't need to create developer apps, wait for approval, or deal with quota limits. We handle all of that for you, so you can start posting immediately.
Can I integrate Mallary with automation tools like n8n, Zapier, Make or OpenClaw?
Yes! Mallary has an official n8n community node and works seamlessly with Zapier, Make, and other automation platforms. You can also use webhooks for custom integrations. Learn more in our Developer Docs and try our MCP Server or CLI for AI agents like OpenClaw.
What happens when a social platform changes its API or rules?
We monitor all platform changes and API updates closely. When platforms make changes, we update our integrations immediately so your workflows continue working without interruption. You don't have to worry about keeping up with constant platform changes.
Can I migrate from another social media tool to Mallary?
Yes! Whether you're migrating from Buffer, Hootsuite, or another tool, or even from custom scripts, you can easily transition to Mallary. Simply connect your social profiles and start using Mallary's API or dashboard. Your existing accounts and content remain intact.
Can I post to all my social media accounts from my phone?
Yes! The Mallary dashboard is fully responsive and works on all mobile, tablet and desktop devices. You can post to everywhere (all your socials) from anywhere (the beach). If you're controlling your OpenClaw AI Agent from Telegram on your phone, ask your agent to "install the Mallary skill".
Publishing
Scheduling, Posting, And Analytics
How reliable is scheduling?
Mallary automatically ensures posts go out as scheduled. We handle all the edge cases and platform-specific quirks so your posts are retried automatically and only mark known permanent failures as non-retryable.
Can I track analytics for posts sent through Mallary?
Yes! Once you connect your social accounts to Mallary and make a post, you can track views, comments and likes. We provide hourly refreshes for posts less than 24 hours old, and refresh less frequently as the posts get older.
Can I schedule videos?
Yes. Video scheduling is live for Instagram, Facebook, LinkedIn, YouTube, TikTok and X where supported by the connected account.
Do you auto-retry failed posts?
Yes. We automatically retry most transient failures up to 3 total attempts (initial try + retries) with exponential backoff (default starts at ~5 minutes, then increases). We also track retry state (attempt, attempts_allowed, next_retry_at) so you can see exactly what’s happening.
Do you retry every error?
No. We mark known permanent failures as non-retryable and fail fast (for example: missing required permissions/scopes, unsupported media combinations, missing required platform targets, certain 4xx auth/app-limit errors).
How do you prevent duplicate posts on retries?
For most platforms, we persist publish state per job and return success if the post already has a remote ID. This is implemented for Facebook/Meta, Instagram, LinkedIn, YouTube, TikTok, Pinterest, Reddit, and Threads. LinkedIn also uses an explicit API idempotency key (X-RestLi-Idempotency-Key) tied to the job.
Do you validate platform-specific media rules before publish?
Yes. We enforce platform/format rules (examples: max image/video counts, no image+video mixing where disallowed, duration limits, and required media for platforms like YouTube/TikTok/Pinterest).
Do you support preflight checks before posting?
Yes. We support preflight checks that verify token health, key scope requirements, and required platform options (like Pinterest board, Reddit subreddit, LinkedIn author selection) before publish.
Do you refresh expired tokens automatically?
Yes. We refresh tokens before posting where supported (Meta/Facebook, X, LinkedIn, YouTube/Google, TikTok, Pinterest, Reddit, Threads).
Can a scheduled post be deleted/canceled?
Yes, but only before processing starts. If a job is already active/completed, deletion is blocked to avoid inconsistent or partial publish states.
Engagement
Comments And AI Replies
What is the “Comments Under Post” feature?
It lets you attach up to 3 follow-up comments to a post at publish time, so the post and comments go out in one flow. If a platform or post format doesn’t support follow-up comments, we skip it.
Which platforms support comments under posts?
Comments Under Post is currently supported on Facebook feed posts, Instagram feed/reels/carousels, LinkedIn, YouTube, Pinterest, Threads, X (Twitter), and Reddit. It is not supported on TikTok or story-style formats like Facebook Stories, Instagram Stories, or Snapchat posts.
Do scheduled posts support comments under post?
Yes. For supported platform/format combinations, your follow-up comments are stored with the scheduled post and posted after the main post goes live.
What are AI Auto Replies?
AI Auto Replies automatically detect new questions and comments on your published posts and uses OpenAI (ChatGPT) to post helpful replies using the information you enter in the settings section of the Mallary dashboard. AI Auto Replies are supported on YouTube, Facebook, Instagram, LinkedIn, X (Twitter), Reddit.
How fast do AI Auto Replies happen?
Replies are near-real-time, depending on platform API limits and queue load.
Can I turn AI Auto Replies off?
Yes. You can enable or disable them in dashboard settings (and per post if enabled for your plan).
Does it reply to every comment?
It replies to supported comment types on supported platforms. We skip duplicates and avoid re-processing comments already handled. Replies use your business/brand settings and context to stay on-brand and concise.
What if a platform blocks comment posting?
We log the failure, surface it in status/observability, and continue processing other supported platforms.
Developer Tools
API, MCP, And CLI
Are there rate limits?
Yes, Rate limits are applied per user, per minute, across the API/MCP/CLI. This keeps the platform fast and stable for everyone. Find out more from our API Docs.
What is MCP in Mallary?
MCP lets you use Mallary from AI clients/agents (not just the dashboard or REST API) using a standard tool interface. You can create upload URLs, create posts, check job status, list/delete posts, view analytics, manage webhooks, and disconnect platforms.
Where is the MCP endpoint?
https://mallary.ai/mcp
How do I authenticate to MCP?
Sign-up to Mallary, visit the dashboard and grab your API key. Use it as a bearer token: Authorization: Bearer <your_api_key>
Do plan limits and rate limits still apply in MCP?
Yes. The same account permissions, plan gates, and API limits apply to MCP requests.
What is the Mallary CLI?
The Mallary CLI is the official command-line interface for Mallary. It lets you upload media, create and schedule posts, check job status, fetch analytics, manage webhooks, update settings, and disconnect platforms directly from your terminal. You can install it from npm or use it with npx. Learn more about the social media CLI.
How do I authenticate to the Mallary CLI?
Set your Mallary API key as an environment variable and the CLI will use it for authenticated commands: MALLARY_API_KEY=<your_api_key>. The CLI uses the same API key as the Mallary dashboard, API, and MCP.
Can I use the Mallary CLI in scripts, CI, or AI agents?
Yes. The CLI is built for automation. It supports human-readable terminal output by default and --json output for scripts, CI pipelines, and AI agents. That makes it a good fit for OpenClaw, cron jobs, GitHub Actions, internal tools, and terminal-based agent workflows.
Does the CLI support local file uploads and platform-specific post options?
Yes. The CLI can upload local media files to Mallary’s CDN automatically before publishing, and it also supports advanced per-platform payloads in JSON file mode for options like Instagram post types, YouTube visibility, Pinterest board IDs, and Reddit subreddits.
Do plan limits and permissions still apply in the Mallary CLI?
Yes. The CLI uses the same account, plan, and feature rules as the rest of Mallary. Rate limits, posting limits, analytics access, scheduling access, AI auto-reply plan gates, and other permissions still apply when you use the CLI.
Plans
Billing And Limits
What's included in the free plan?
The free plan includes 20 posts/month. Dashboard and API access, basic posting with attachments, ability to add multiple comments to a post when you publish it (where supported, see the engagment faq section)
Is there a free trial?
You can start with our free plan immediately - no credit card required. When you're ready to upgrade, all paid plans include a 14 day free trial and our 30-day money-back guarantee.
Can I change plans anytime?
Yes, you can upgrade or downgrade your plan at any time. Changes take effect immediately, and we'll prorate your billing accordingly.
Which payment methods do you accept?
We accept all major credit cards (Visa, MasterCard, American Express), Apple Pay, Amazon Pay, AliPay, Cash App, Google Pay, and many others. We process payments securely through Stripe.
Can I cancel anytime?
Yes, you can cancel your subscription at any time. There are no cancellation fees or penalties. Your service will continue until the end of your current billing period.
Do you offer refunds?
Yes, we offer a 30-day money-back guarantee. If you're not satisfied with our service, contact us within 30 days of your purchase for a full refund.
What happens if I exceed my post limit?
If you exceed your monthly post limit, you'll need to upgrade to a higher plan or wait until the next month. We don't charge overage fees - we simply pause posting until you upgrade or your limit resets.
Do you offer annual billing discounts?
Yes! Annual billing saves you 17% (2 months free)! Get started now.
Ready to automate Threads?
Use marketing automation to save hours every week with Mallary's social media scheduling API.
Start Your 14-Day Free Trial14-day free trial • Cancel anytime • Money-back guarantee