Tiktok Poster avatar

Tiktok Poster

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Tiktok Poster

Tiktok Poster

Automate posting videos to TikTok! Upload videos with captions, hashtags, and privacy settings. Features Video Upload - Post videos from URL Captions & Hashtags - Add descriptions and tags Privacy Controls - Set visibility, comments, duet, stitch Auto-download - Automatically fetches video from URL

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

The Howlers

The Howlers

Maintained by Community

Actor stats

1

Bookmarked

19

Total users

0

Monthly active users

20 days ago

Last modified

Share

TikTok Automation - Upload and post videos to TikTok automatically. Browser automation for reliable posting without API access. Perfect for content creators, social media managers, and marketing agencies. Supports video uploads, captions, hashtags, and scheduling.

BYOK (Bring Your Own Account) -- you post to your own TikTok account, so you provide either exported login cookies (recommended) or a username/password.


Before You Start

This actor posts to a real TikTok account through browser automation (TikTok has no public posting API). You need one of the following:

  • cookies — cookies exported from a browser where you are logged into TikTok (most reliable; use the Cookie-Editor extension and paste the JSON).
  • cookieStorageKey — cookies saved earlier by the Cookie Manager actor.
  • username + password — least reliable; TikTok's login often shows a CAPTCHA that automation cannot clear. Prefer cookies.

A residential proxy is strongly recommended (see proxy below) — TikTok blocks datacenter IPs, so posting usually fails without one.


TikTok aggressively blocks automated browsers on cold start. Before it logs in with your account, this actor automatically primes the browser with fresh anti-bot cookies from a companion actor, tiktok-cookie-refresh, which runs on a schedule, solves TikTok's CAPTCHA once, and publishes anonymous device-fingerprint cookies for the whole TikTok actor fleet to share.

These priming cookies are anonymous only — they carry no login/identity fields, so they never interfere with your own session. They just warm the device so the automated browser clears the bot wall before your account signs in. No configuration needed; priming happens automatically.

You still need to supply your own logged-in cookies (or cookieStorageKey, or username/password) to actually post — priming does not authenticate you.


Quick Start

Run with real data

{
"cookies": "[{\"name\":\"sessionid\",\"value\":\"...\",\"domain\":\".tiktok.com\"}]",
"videoUrl": "https://your-storage.example.com/clip.mp4",
"caption": "New drop is live",
"hashtags": ["fyp", "smallbusiness"],
"allowComments": true,
"allowDuet": true,
"allowStitch": true,
"isPrivate": false,
"timeout": 180,
"proxy": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Running without credentials

If you run the actor without TikTok credentials or session cookies (or with demoMode: true), it returns a labeled simulated post result so you can preview the output format. Sample items carry demo: true and a _notice field, no video is posted, and no task events are charged. Supply your own credentials or cookies for live posting.


Input Parameters

ParameterTypeDefaultRequiredDescription
usernamestring-NoTikTok account username or email
passwordstring-Yes*TikTok account password
cookiesstring-Yes*Exported cookies from logged-in session (strongly recommended - TikTok has aggressive bot detection)
videoUrlstring-NoURL of the video file to upload (MP4 recommended)
captionstring-NoCaption for your video (max 2200 characters)
hashtagsarray-NoHashtags to add (without # prefix)
allowCommentsbooleantrueNoAllow comments on the video
allowDuetbooleantrueNoAllow others to duet with this video
allowStitchbooleantrueNoAllow others to stitch this video
isPrivatebooleanfalseNoMake the video private (only you can see it)
timeoutinteger180NoMaximum time to wait for the video upload to complete
webhookUrlstring-NoURL to receive a POST request when the actor run finishes. Useful for integrations with Zapier, Make, n8n, or custom automation workflows.
indexNowKeystring-NoOptional IndexNow API key for instant search engine indexing of posted content. Get your key at https://www.bing.com/indexnow
cookieStorageKeystring-NoKey to load cookies from the Cookie Manager's Named KV Store. Use this instead of manually pasting cookies. Run Cookie Manager in 'capture' mode first to store cookies, then reference the same storageKey here.
cookieKvStoreNamestring"cookie-sessions"NoName of the Named Key-Value Store where Cookie Manager saved the session. Defaults to 'cookie-sessions'.
proxyobjectApify ResidentialNoProxy configuration. Residential is strongly recommended — TikTok blocks datacenter IPs, so posting usually fails without it.
demoModebooleanfalseNoReturn a labeled sample result without posting. Also activates automatically when no credentials/cookies or video URL are supplied. Charges no task events.

* Provide either cookies/cookieStorageKey or username+password. Cookies are strongly preferred.


Pricing

This actor uses pay-per-event billing:

EventDescriptionPrice
Actor StartCharged once when the run starts (one event per GB of memory)$0.10
resultEach item written to the default dataset$0.00001
Video PostedEach TikTok video successfully posted$0.05

Demo runs (no credentials, or demoMode: true) charge no Video Posted events.


Troubleshooting

Login failed / not logged in

  • Your cookies expired. Export fresh cookies from a browser where you are logged into TikTok and paste them into cookies.
  • Username/password login often hits a CAPTCHA that automation cannot clear — use cookies instead.

Post never completes / times out

  • Add a residential proxy (proxy → Apify Residential group). TikTok blocks datacenter IPs, so uploads stall or fail without one.
  • Raise timeout (max 600s) for large videos on slow connections.

Video won't upload

  • Make sure videoUrl points at a directly downloadable MP4 (not a web page).
  • Keep captions under 2200 characters.

How do I test without posting?

Run the actor without credentials/cookies, or set demoMode: true. You get a labeled sample result, no video is posted, and no task events are charged.


Built by John Rippy | Actor Arsenal