Create Submission Tool
create-submission-toolQueue a video to be published to a TikTok, Instagram or YouTube account. Set platform (defaults to tiktok) and account_id. Provide the video via exactly one of video_url (a public https link the server downloads) or upload_id (from create-upload-url-tool). The account must be assigned to a phone. Set scheduled_at to publish later instead of now; a scheduled submission can be cancelled with cancel-submission-tool until it starts. Returns the submission; poll get-submission-tool for the outcome.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| draft | No | Save as a draft on the phone instead of publishing. Supported on all three platforms. | |
| caption | No | Text for the post: up to 2200 characters on TikTok and Instagram. On YouTube this is the Short's TITLE — required, and capped at 100 characters. | |
| platform | No | Platform to post to: "tiktok" (default), "instagram" or "youtube". | |
| upload_id | No | Upload id from create-upload-url-tool. Mutually exclusive with video_url. | |
| video_url | No | Public https URL of the video. Mutually exclusive with upload_id. | |
| account_id | No | ID of the account to post as, from list-accounts-tool. The account must be on `platform`. Required unless the deprecated tik_tok_account_id is given. | |
| webhook_url | No | Public https URL to POST to once the submission reaches a final status (published, drafted, failed or cancelled), for a system that cannot poll. The body is the submission, signed with an X-0bull-Signature header the same way as REST API webhooks. Optional. | |
| scheduled_at | No | When to publish, as an ISO 8601 timestamp in the future, e.g. "2026-10-01T18:00:00+02:00". A timestamp without an offset is read as UTC. Omit to publish now. The submission is created with status "scheduled" until then. | |
| tik_tok_account_id | No | Deprecated alias for account_id. |