API Reference

TikTok API

Post videos, photos, and carousels to TikTok — and schedule them for the perfect time — all with a single REST API call. Manage multiple TikTok Creator and Business accounts without building your own TikTok developer app.

Quick Start

Get started in 3 steps

1

Get API Key

Sign up for free and get your API key in seconds.

2

Connect Account

Use our OAuth flow to connect TikTok accounts.

3

Start Posting

Make API calls to post content to TikTok.

Post a TikTok video (Node.js)
JavaScript
// Schedule a TikTok video with privacy and engagement settings
const response = await fetch('https://getlate.dev/api/v1/posts', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    content: 'How to build a social media app in 2026 \u{1F680} #coding #developer #api',
    mediaItems: [{ type: 'video', url: 'https://example.com/tutorial.mp4' }],
    platforms: [{
      platform: 'tiktok',
      accountId: 'acc_abc123',
      platformSpecificData: {
        tiktokSettings: {
          privacy_level: 'PUBLIC_TO_EVERYONE',
          allow_comment: true,
          allow_duet: true,
          allow_stitch: true
        }
      }
    }],
    scheduledFor: '2026-03-15T14:00:00Z',
    timezone: 'America/New_York'
  })
});

const post = await response.json();
console.log(post.post._id); // 'post_65f1c0a9e2b5af'

Endpoints

TikTok Endpoints

POST/v1/posts

Create, schedule, or draft a TikTok video or photo post

GET/v1/posts/{id}

Get status, details, and platform-specific metadata of a TikTok post

PUT/v1/posts/{id}

Update a scheduled TikTok post (content, timing, or settings)

DELETE/v1/posts/{id}

Cancel a scheduled or delete a draft TikTok post

GET/v1/profiles

List all connected TikTok accounts with usernames and follower counts

GET/v1/analytics/{postId}

Get views, likes, comments, shares, and engagement rate for a TikTok post

Media Specs

Media Requirements

TypeFormatMax SizeNotes
VideoMP4, MOV, WebM287.6 MB3 sec – 10 min duration. Vertical (9:16) recommended.
PhotosJPEG, JPG, WebP20 MB per imageUp to 35 images per carousel post. PNG not supported by TikTok.
Aspect Ratio9:16 recommended1080×1920 pxVertical content gets significantly more reach on TikTok
AudioAAC128 kbps+Required for video posts. Late auto-transcodes if needed.
CaptionPlain text + hashtags2,200 charactersTikTok ignores line breaks in captions

Late automatically transcodes and optimizes media for TikTok's requirements.

Rate Limits

API Limits

TikTok's Content Posting API enforces strict rate limits and processes videos asynchronously (1-2 min processing time). Late automatically queues requests, manages backoff logic, polls for publish confirmation, and retries on transient failures. You get a webhook notification when your TikTok post goes live — no polling needed on your end.

Late handles all rate limiting automatically. We queue and retry requests as needed.

Capabilities

Features

  • Post videos to TikTok Creator and Business accounts via REST API
  • Post photo carousels with up to 35 images per TikTok post
  • Schedule TikTok posts for any future date and time with timezone support
  • Automatic video transcoding to meet TikTok's encoding requirements
  • Multi-account management — connect unlimited TikTok accounts from one API key
  • Control privacy settings: public, followers-only, friends-only, or private
  • Enable or disable comments, duets, and stitches per post
  • AI-generated content labeling support for compliance
  • Branded content and promotional content toggle support
  • Webhook notifications when TikTok finishes processing your video
  • Draft mode — create TikTok drafts for content approval workflows
  • Cross-post to TikTok + 12 other platforms in a single API call
  • No TikTok developer app registration required — Late handles all platform approvals
  • Caption and hashtag support with 2,200 character limit

Response

Response Example

Post a TikTok video (Python)
200 OK
import requests

# Schedule a TikTok video post with Late's API
response = requests.post(
    "https://getlate.dev/api/v1/posts",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "content": "Python + TikTok API = \u{1F525} #python #automation",
        "mediaItems": [
            {"type": "video", "url": "https://example.com/demo.mp4"}
        ],
        "platforms": [{
            "platform": "tiktok",
            "accountId": "acc_abc123",
            "platformSpecificData": {
                "tiktokSettings": {
                    "privacy_level": "PUBLIC_TO_EVERYONE",
                    "allow_comment": True,
                    "allow_duet": True,
                    "allow_stitch": True
                }
            }
        }],
        "scheduledFor": "2026-03-15T14:00:00Z",
        "timezone": "Europe/London"
    }
)

print(response.json())
# {"post": {"_id": "post_65f1c0a9e2b5af", "status": "scheduled"}}

Start building with TikTok API

TikTok's official Content Posting API requires a developer app registration, complex OAuth 2.0 flows, video chunk uploads, and asynchronous status polling. Late eliminates all of that. Connect TikTok accounts through our OAuth flow, then use one simple POST request to publish or schedule videos, photo carousels, and text posts. Late handles video transcoding, rate limiting, retry logic, and webhook notifications automatically — so you can focus on building your product, not wrestling with TikTok's API.

Free tier available • No credit card required • 99.97% uptime