Platform guides
v1What you can publish, which accounts qualify, and the permissions needed for live access.
Live publishing depends on each platform’s account eligibility, granted permissions, and app review. Castrook’s test mode is available independently of those approvals.
| Platform | Publishing | Comments | Account |
|---|---|---|---|
| TikTok | Video | Not available | Eligible TikTok creator |
| Reels, single images | Read and reply | Business or Creator | |
| Text, image, video, Reels | Read and reply | Page | |
| YouTube | Video / Shorts | Read and reply | Channel |
TikTok
VIDEO PUBLISHINGConnect through TikTok and select each post’s visibility explicitly. Call GET /accounts/{id}/publishing-options with the accounts:read scope to fetch current creator settings. In the SDK, use castrook.accounts.publishingOptions(id). Castrook loads the creator’s available privacy choices and interaction restrictions. Show these choices to the creator with no default visibility and interactions off initially. For commercial posts, show a disclosure toggle followed by Your brand and Branded content choices. Branded content cannot use private visibility.
{
"tiktok": {
"privacy_level": "SELF_ONLY",
"consent": true,
"video_duration_sec": 24,
"disable_comment": true,
"disable_duet": true,
"disable_stitch": true,
"brand_content_toggle": false,
"brand_organic_toggle": false,
"is_aigc": false
}
}The example privacy value is not a default. Choose from the creator’s current options. Send consent: true only after the creator has reviewed and approved this exact post: account, caption, video, visibility, interactions, disclosures, and schedule. The confirmation must link TikTok’s Music Usage Confirmation and, for third-party branded content, its Branded Content Policy. OAuth authorization is not blanket consent for future posts.
The dashboard reads video length from the loaded preview. Castrook independently measures every TikTok video from its downloaded bytes, then stages those same bytes at an immutable temporary URL before delivery, including videos already hosted on a verified domain. Invalid or unreadable duration metadata fails before submission to TikTok. The optional video_duration_sec field is a compatibility hint; the measured duration determines whether the creator’s limit is met.
MP4, MOV, and WebM videos up to 128 MiB are supported, with a 512 MiB active media limit per workspace. Temporary copies expire after 48 hours. You do not need to verify your own media domain. TikTok may take a few minutes to process a post; poll its status or handle the final webhook event.
Unaudited apps have restricted private posting. General comment management is not provided by the public posting API. TikTok content-sharing requirements ↗
Use an Instagram Business or Creator account. The Instagram Login flow does not require a linked Facebook Page. Videos are published as Reels; single images use an image media URL. Personal accounts, Stories, carousels, and DMs are outside this release.
Content publishing and comment management permissions must both be granted for both capabilities to appear. A connected account may have only a subset of capabilities. Instagram Login documentation ↗
{ "instagram": { "share_to_feed": true } }Facebook Pages
Select the Pages you want to connect during Facebook authorization. Your Page role must allow the requested action. Personal profiles and Groups are not supported. Videos default to Reel format; specify video for a regular Page video.
{ "facebook": { "format": "reel" } }Page posting, engagement, and user-content permissions control available capabilities. Facebook Pages documentation ↗
YouTube Shorts
YouTube uses its regular upload API and classifies qualifying square or vertical videos up to three minutes as Shorts. Castrook does not guarantee Shorts classification from an upload receipt. Verify the result in YouTube Studio.
{
"youtube": {
"title": "Your video title",
"privacy_status": "private",
"made_for_kids": false,
"contains_synthetic_media": false
}
}A made_for_kids choice is required. Visibility defaults to private. This release supports YouTube media up to 128 MiB. Applicable unverified API projects can be restricted to private uploads even when public visibility is requested.
Shorts eligibility ↗ · YouTube audit requirements ↗
App access and approvals
If you operate your own platform application, apply through the official developer programs. Approval of one product or scope does not imply approval of every capability.
| Platform | Apply | Review requirements |
|---|---|---|
| TikTok | Developer apps ↗ | Login Kit, Direct Post, video.publish approval, posting audit, verified media domain |
| Instagram / Facebook | Meta developer apps ↗ | Relevant login product, advanced permission access, app review and applicable business verification |
| YouTube | Google Cloud ↗ | YouTube Data API, OAuth consent verification and a separate YouTube API audit |