Home / n8n / TikTok Upload
TikTok

n8n TikTok Upload API

Automated Video Publishing

Publish TikTok videos from n8n in minutes. Use the Upload-Post node for simplicity, or configure raw HTTP requests for full control. Content is auto-published upon upload completion.

No credit card required

Two Ways to Upload

Choose the approach that fits your workflow best

Recommended

Upload-Post Node

The easiest path. Pick Upload video, set your user, choose TikTok as platform, and attach the file. The node handles authentication, headers, and multipart/form-data for you.

  • Operation: Upload Video
  • Platform: tiktok
  • Zero configuration needed
n8n Upload-Post node configuration
Full Control

HTTP Request Node

Use a generic HTTP node configured as multipart/form-data. Send binary data or pass a hosted URL for the video field.

POST https://api.upload-post.com/api/upload

Headers:
  Authorization: Apikey YOUR_API_KEY

Body (multipart/form-data):
  user: YOUR_USER_ID
  platform[]: tiktok
  title: My TikTok Video
  video: [binary] or [URL]

Pro tip: You can import cURL commands directly into n8n's HTTP Request node via Import from cURL.

Complete Upload Flow

Follow these 4 steps to publish your TikTok video

01

Prepare Binary Video

Start with a node that provides the video as binary data. Common options include HTTP Request (GET with File response), Google Drive, S3, or Webhook.

  • Set Response Format to 'File' for binary output
  • Keep binary property name as 'data' (default)
  • Supports any node that outputs to $binary
02

Upload with HTTP Request

Configure an HTTP Request node with multipart/form-data. You can send binary data or pass a hosted URL for your video.

  • Method: POST to /api/upload
  • Body: multipart/form-data
  • Enable 'Send Binary Data'
  • Set filename and content-type
03

Check Processing State

Poll the status endpoint with the returned postId until the state becomes 'ready'. Use a Wait node or IF conditional for the loop.

  • GET /api/uploadposts/status/:postId
  • Wait for status === 'completed'
  • Add polling interval (5-10s)
  • Handle timeouts gracefully
04

Video Published!

Once the upload completes processing, your video is automatically published to TikTok. No separate publish step needed!

  • Auto-published on completion
  • Check status for confirmation
  • Video goes live instantly
  • Get post URL from response

Code Examples

Copy and paste these into your workflow

Upload with Binary File cURL
curl \
  -H 'Authorization: Apikey YOUR_API_KEY' \
  -F 'user=YOUR_USER_IDENTIFIER' \
  -F 'platform[]=tiktok' \
  -F 'title=My TikTok Video' \
  -F 'video=@/path/to/video.mp4;type=video/mp4' \
  -X POST https://api.upload-post.com/api/upload
Upload with Video URL cURL
curl \
  -H 'Authorization: Apikey YOUR_API_KEY' \
  -F 'user=YOUR_USER_IDENTIFIER' \
  -F 'platform[]=tiktok' \
  -F 'title=My TikTok Video (URL)' \
  -F 'video=https://example.com/video.mp4' \
  -X POST https://api.upload-post.com/api/upload
Check Processing Status HTTP
GET https://api.upload-post.com/api/uploadposts/status/{{ $json.postId }}
Authorization: Apikey YOUR_API_KEY

# Response includes status per platform:
# { "platforms": { "tiktok": { "status": "completed", "url": "..." } } }

Ready to automate your TikTok uploads?

Join thousands of creators and agencies using Upload-Post + n8n

Troubleshooting

Common issues and how to fix them

415 Unsupported Media Type

Set Body to multipart/form-data, enable Send Binary Data, and provide a valid filename and Content-Type (e.g., video/mp4).

400 Bad Request

Check required fields: user, platform[]=tiktok, and video. Ensure your Upload-Post user has TikTok connected.

Timeouts / Long Processing

Increase request timeout and add a short polling loop to wait until the upload is processed before publishing.

Start publishing to TikTok today

Set up your n8n workflow in minutes and automate your TikTok content strategy

No credit card required - Free tier available

Get in Touch

We're here to help you streamline your social media workflow

Have questions? We'd love to hear from you.

Send us a message and we'll respond as soon as possible.