Postproxy publishes single videos and photo posts (up to 35 images) to a connected TikTok account. Every post requires a privacy_status.
Every request below uses the base URL https://api.postproxy.dev and an Authorization: Bearer YOUR_API_KEY header. Replace YOUR_API_KEY and the example IDs with your own.
Platform ID tiktokFormats video (default), imageCharacter limit 2,200 Media Required Placements None Comments No (can be disabled per post) Direct messages No Post chains No
Format Description videoSingle video (default) imagePhoto post, up to 35 images
Parameter Type Required Description formatstring No "video" (default)privacy_statusstring Yes See privacy values made_with_aiboolean No Mark content as AI-generated disable_commentboolean No Disable comments on the post disable_duetboolean No Disable Duets disable_stitchboolean No Disable Stitches brand_content_toggleboolean No Paid partnership promoting a third-party business brand_organic_toggleboolean No Paid partnership promoting your own brand
Media Max size Formats Count Duration Video 4 GB mp4, mov, av, webm 1 3 s – 10 min
A video is required . Minimum dimensions: 720×1280 px.
curl -X POST " https://api.postproxy.dev/api/posts " \
-H " Authorization: Bearer YOUR_API_KEY " \
-H " Content-Type: application/json " \
"post": { "body": "Quick tip: Building APIs just got easier! 🚀" },
"profiles": ["prof_abc123"],
"media": ["https://example.com/video.mp4"],
"privacy_status": "PUBLIC_TO_EVERYONE",
"disable_comment": false,
Parameter Type Required Description formatstring Yes "image"privacy_statusstring Yes See privacy values photo_cover_indexinteger No Index (0-based) of the cover photo auto_add_musicboolean No Add music automatically disable_commentboolean No Disable comments on the post brand_content_toggleboolean No Paid partnership promoting a third-party business brand_organic_toggleboolean No Paid partnership promoting your own brand
Media Max size Formats Count Duration Image 20 MB jpg, gif 35 —
curl -X POST " https://api.postproxy.dev/api/posts " \
-H " Authorization: Bearer YOUR_API_KEY " \
-H " Content-Type: application/json " \
"post": { "body": "Swipe through our 2026 lookbook 📸" },
"profiles": ["prof_abc123"],
"https://example.com/photo1.jpg",
"https://example.com/photo2.jpg"
"privacy_status": "PUBLIC_TO_EVERYONE",
Value Visibility PUBLIC_TO_EVERYONEEveryone MUTUAL_FOLLOW_FRIENDSMutual followers FOLLOWER_OF_CREATORFollowers only SELF_ONLYPrivate (only you)
The Comments API does not support TikTok. You can, however, disable comments on a post at publish time with disable_comment: true.
Not supported.
Subscribe with the Webhooks API:
curl -X POST " https://api.postproxy.dev/api/webhooks " \
-H " Authorization: Bearer YOUR_API_KEY " \
-H " Content-Type: application/json " \
"url": "https://example.com/webhooks/postproxy",
"events": ["platform_post.published", "platform_post.failed", "platform_post.insights"]
Events relevant to TikTok:
Event When post.processedA post is ready to publish platform_post.publishedA post was published to the platform platform_post.failedA post failed to publish (retries exhausted) platform_post.failed_waiting_for_retryA publish attempt failed; will retry platform_post.insightsNew analytics snapshot profile.connected / .disconnectedConnection state changed profile.statsNew profile stats snapshot media.failedA media attachment failed to process
privacy_status is required on every post.
Videos must be at least 720×1280 px.
When a post is a paid partnership, set brand_content_toggle (third-party) or brand_organic_toggle (own brand) as required by TikTok.