1. Platforms
Kabon Share API
  • Overview
  • MCP
  • Platforms
    • Bluesky
    • Instagram
    • Tiktok
    • Linkedin
    • Youtube
    • Facebook
    • Threads
    • Twitter
  • User Auth
    • Sign up
      POST
    • Verify email OTP
      POST
    • Resend OTP
      POST
    • Login with email & password
      POST
    • Sign in / sign up with Google
      POST
    • Request password reset email
      POST
    • Reset password with token
      POST
    • Refresh JWT token
      POST
  • Users
    • Get current user profile
      GET
    • Update current user profile
      PATCH
    • Get all user settings
      GET
    • Update publishing settings
      PATCH
    • Update notification settings
      PATCH
    • Update UI preferences
      PATCH
    • Get current billing usage
      GET
    • List saved payment methods
      GET
    • List billing transactions
      GET
    • Regenerate API key
      POST
    • Mark onboarding complete
      PATCH
    • Create a new user and get API key
      POST
    • Unregister a device from push notifications
      DELETE
    • Get list of registered devices
      GET
    • Register a device for push notifications
      POST
    • Send a test push notification to the current user
      POST
    • Remove the profile picture
      DELETE
    • Upload a profile picture. Stored in the avatars folder, served via the
      POST
    • Delete a payment method
      DELETE
    • Set a payment method as default
      PATCH
    • Download the invoice/receipt PDF for a captured (succeeded) transaction
      GET
  • Social Accounts
    • Get OAuth authorization URL
    • List connected social accounts
    • Disconnect a social account
    • Get creator info for an account
    • List available Facebook Pages
    • Connect a Facebook Page
    • List connected Facebook Pages for a workspace
    • List available LinkedIn organizations
    • Connect a LinkedIn organization
    • List a Pinterest account's boards
    • Create a new Pinterest board for the connected account
    • Validate TikTok creator info
    • Preview the scheduled posts that would be cancelled if this account is
  • Workspaces
    • List workspaces for current user
    • Create a workspace
    • Get a workspace
    • Update a workspace
    • Delete a workspace
    • Update workspace AI settings
  • Team
    • List available permission scopes
    • List pending invitations for the current user
    • Get invitation details by token
    • Accept a workspace invitation
    • Decline a workspace invitation
    • List workspace members
    • Invite a user to the workspace
    • List pending invitations for a workspace
    • Cancel / revoke an invitation
    • Resend an invitation email
    • Update member role / scopes
    • Remove a member from the workspace
    • Leave a workspace
    • Upload a single chat attachment (≤5 MB) to S3 and return { name, url, fileType }
    • Channels the user can see: all workspace channels + DMs they're a member of
    • Create a channel or DM
    • /
    • /
    • /
    • /
    • Get groups
    • Create groups
    • Delete groupId
    • Update groupId
    • Get roles
    • Create roles
    • Delete roleId
    • Update roleId
  • Posts
    • List posts
    • Create a post
    • List upcoming scheduled posts
    • Delete multiple posts
    • Get a post
    • Update a post
    • Delete a post
    • Get analytics for a post
    • Reschedule a post
    • Retry a failed post
    • Cancel a scheduled post
    • Publish a draft post
    • Submit a post for approval
    • Record an approval decision
    • Get post version history
    • Rich, board-ready view of everything in the approval pipeline for the
    • All posts belonging to one Bulk Scheduler batch, in schedule order
    • Summaries of every batch created by the Bulk Scheduler in this workspace —
    • Create bulk
    • Aggregated dashboard metrics computed across ALL posts in the workspace
    • Ping the pending approvers of the post's current open stage
    • /
    • Body: { body, mentions?: [userId], attachments? }
    • /
    • /
    • Deliberately release a 'ready' post (an immediate post that has cleared
  • Assets
    • List assets
    • Bulk delete assets
    • Upload asset directly (multipart)
    • Get signed upload URL (step 1 of 2)
    • Confirm signed upload (step 2 of 2)
    • Get storage usage summary
    • List asset folders
    • Create a folder
    • Rename a folder
    • Delete a folder
    • List asset tags
    • Check thumbnail generation status
    • Get an asset
    • Update asset metadata
    • Delete an asset
    • Batch-resolve asset metadata (name, type, url, thumbnail) for a list of IDs
  • Uploads
    • Get a signed upload URL for post media
    • Get upload file info
    • Delete an uploaded file
    • List uploads
    • Confirm upload complete
    • Create validate url
  • Analytics
    • Get platform aggregate stats
    • Get platform stats as a time series
    • Get audience demographics for a platform
    • List content analytics for a platform
    • Get analytics for a specific content item
    • Delete a synced content record
    • Get time series for a specific content item
    • Get follower count trend over time
    • Get recommended posting times per platform
    • Get aggregated analytics for a post across platforms
    • Gather data → render HTML → print to PDF (Puppeteer) → stream as a download
    • Generate the AI analysis on demand so the builder can preview it before export
    • For the report builder: gathers (and caches) the data, then returns the list of
    • Renders the analytics report as a self-contained HTML page so the template
  • Streams
    • List streams
    • Create a stream
    • Get a stream
    • Delete a stream
    • Go live
    • Stop a live stream
    • Broadcast from a file
    • Update a stream
    • Check relay health and list active paths
    • Get relay status for a specific stream
    • Get streaming usage for the authenticated user (minutes, limits, active streams)
    • the relay (path + token) and re-arm fan-out, returning the WHIP URL so
  • Plans
    • List available subscription plans
  • Subscriptions
    • Get current subscription & credit balances
    • Renew or extend subscription
    • Wallet balances and recent ledger entries
    • Cancel subscription
    • Choose the term for the next renewal
    • Turn recurring billing on or off. Body: { enabled: boolean }
    • Get extra accounts
    • Create cancel removal
    • Create remove
  • Support
    • List support tickets
    • Create a support ticket
    • Get ticket statistics
    • Get a ticket
    • Reply to a ticket
    • Upload a ticket attachment
  • AI
    • Generate caption & hashtags for a media asset
    • Transcribe audio or video
    • Poll async AI job status
    • Get saved captions for an asset
    • Get AI credit usage summary for the workspace
    • Get AI credit usage as a chart series
    • Derive AI style settings from past posts
    • /
    • /
    • /
    • /
    • /
    • /
    • ?limit=30 (default 30, max 100)
    • /
  • Studio
    • List studio projects
    • Create a studio project
    • Get a studio project (includes full projectData)
    • Update a studio project
    • Delete a studio project
  • Payments
    • Pay for a purchase with wallet credit
    • Charge a saved payment method (for recurring subscriptions or credit purchases)
    • Get payment configuration for frontend (public key, supported currencies, etc.)
    • Create cryptocurrency payment invoice via Heleket
    • Initialize a payment (subscription or credit purchase)
    • Verify a payment
  • Bluesky OAuth
    • atproto client metadata
    • atproto client public keys (JWKS)
    • atproto OAuth callback
  • Apps
    • Public — list all active apps with their latest active version
    • Public — single app with all active versions
    • Public — download/redirect to latest version
    • Public — download specific version
  • Billing
    • Get user's billing cycles (all statuses for full history)
    • Calculate proration for upgrading cycles (no charge, just preview)
    • Manually create billing cycles from an existing transaction (admin/fix tool)
    • Select a plan after account creation (for free plans or initial plan selection)
    • Upgrade billing cycles to a new plan with proration
    • Preview the discount a coupon yields for a subscription checkout, so the
  • Blog
    • Published categories with post counts
    • Published posts, newest first. Query: page, limit (max 100), category
    • Single published post by slug
  • Books
    • List available books (metadata only — no file data)
    • Download a book's full JSON data from storage (S3 or local)
  • Platforms
    • Returns obfuscated platform capabilities for frontend
    • Returns capabilities for a specific platform
  • Ideas
    • Get ideas
    • Create ideas
    • Get boards
    • Create boards
    • Delete boardId
    • Update boardId
    • Delete ideaId
    • Get ideaId
    • Update ideaId
    • Get comments
    • Create comments
    • Delete commentId
    • Create convert
    • Update move
    • Create vote
  • Notifications
    • The current user's notification inbox (newest first) + unread count
    • Mark all of the user's notifications read
    • Lightweight unread badge count
    • Mark a single notification read
  • Queue
    • Clean old jobs from the queue
    • Clear jobs from the queue
    • Drain the queue (remove all jobs)
    • Get all jobs in the queue
    • Get queue statistics
  • Limits
    • Create archive
    • Create unarchive
    • Create remove
    • Create restore
    • Create suspend
    • Get status
    • Create archive
    • Create unarchive
  • Services
    • List all available service names
    • Get status of all services (public endpoint)
    • Get status of a specific service (public endpoint)
  • Approvals
    • Delete approval flow
    • Get approval flow
    • Replace approval flow
    • Create resolve stage
  • Schemas
    • ApiResponse
    • SuccessResponse
    • ErrorResponse
    • Pagination
    • User
    • SocialAccount
    • Workspace
    • PlatformPost
    • PlatformValidationFailure
    • Asset
    • PostContentOverride
    • PostApproval
    • Ticket
    • Plan
    • Post
    • Stream
    • StudioProject
    • AiJob
    • WalletEntry
    • Subscription
  1. Platforms

Tiktok

TikTok#

Publish videos and photo carousels to TikTok. All posts go to drafts and require in-app approval before going public.

Quick Reference#

PropertyValue
Max caption length2,200 characters
Max hashtags30
Video formatsMP4, MOV, WebM
Max video size4 GB
Max video duration10 minutes
Min video duration3 seconds
Image formatsJPEG, WebP
Max image size20 MB per image
Max images (photo carousel)35
SchedulingYes (via Kabonshare queue)
Delete via APINo

Before You Start#

DANGER
All posts created via the API go to drafts inside the TikTok app. The creator must open TikTok and manually approve each post before it becomes public. There is no way to bypass this.
WARNING
Unaudited apps are restricted to SELF_ONLY privacy — posts are only visible to the creator. Submit your app for TikTok's audit process to unlock public posting.
CAUTION
TikTok has a strict daily posting limit for API-created posts, separate from the native app limit. Exceeding it is one of the most common causes of publishing failures.

Content Types#

Video Post
Single vertical video. 3 seconds to 10 minutes. Supports chunked file upload or pull from URL.
Photo Carousel
Up to 35 images displayed as a swipeable carousel. Images must be served from a TikTok-verified domain URL — file upload is not supported.

Specs#

Video
Photo Carousel
Caption & Text

Privacy Levels#

API ValueLabel
PUBLIC_TO_EVERYONEPublic
MUTUAL_FOLLOW_FRIENDSFriends only
FOLLOWER_OF_CREATORFollowers only
SELF_ONLYOnly me
INFO
The privacy levels available depend on each creator's individual TikTok account settings. Always call the creator info endpoint to confirm which levels are available before posting.

Required Flags#

Every TikTok post requires these two fields set to true:
FieldRequired
content_preview_confirmedYes
express_consent_givenYes

Post Options#

OptionSupported
Custom thumbnail (video)Yes — via URL or timestamp
CommentsConfigurable (on/off)
DuetConfigurable (on/off, video only)
StitchConfigurable (on/off, video only)
Auto-music (photo)Optional
Commercial content disclosureSupported

Video Upload Flow#

1
Initialize upload
Request an upload URL from the API. Specify FILE_UPLOAD for videos or PULL_FROM_URL for images.
2
Upload in chunks
Split video into chunks of 5 MB – 64 MB. Upload each chunk in order. The final chunk may be up to 128 MB.
3
Submit post
Submit the post with your caption, privacy level, and optional settings. Status returns as PROCESSING_UPLOAD.
4
Approve in-app
The post appears in the creator's TikTok drafts. They must open the app and tap publish. The post goes live after approval.

Limitations#

TikTok does not expose a native scheduling API. Kabonshare handles scheduling via its queue and publishes at the exact time you specify.
Cannot delete posts via the API. Removal must be done in the TikTok app.
Cannot access TikTok's sound library, edit published posts, view FYP analytics, or manage comments/DMs.
TikTok has a reported ~13% API publishing failure rate. Most failures are caused by daily limit hits, privacy level mismatches, or content moderation flags.
Modified at 2026-08-16 17:08:09
Previous
Instagram
Next
Linkedin
Built with