# Castrook > Publish, schedule, and reply. One simple API. Castrook is a social publishing API for TikTok, Instagram, Facebook Pages and YouTube: publish now, schedule ahead, read and reply to supported comments, and get a result for every destination. Test mode simulates publishing on every plan. Live publishing needs eligible accounts, granted permissions and platform approvals. As of 2026-09-27, TikTok's app review and Direct Post audit, Meta's business verification and app review, and Google's verification and YouTube API audit are pending, so live access is limited: see https://castrook.com/docs/platforms#status. TikTok comment management is not available through TikTok's public API. YouTube decides Shorts classification after upload. HTTP 202 means the post was accepted, not published. ## Plans (catalog 2026-09; USD per month, plus applicable tax) - Free: $0/month. 2 connected accounts, 20 publications, 1 GB new media, 2,000 API requests (200 of them comment requests) and 4 new connections per month; 30 requests/minute; 1 concurrent media ingest. - Starter: $9/month. 10 connected accounts, 300 publications, 30 GB new media, 25,000 API requests (3,000 of them comment requests) and 20 new connections per month; 60 requests/minute; 2 concurrent media ingests. - Growth: $19/month. 40 connected accounts, 1,500 publications, 150 GB new media, 100,000 API requests (15,000 of them comment requests) and 80 new connections per month; 120 requests/minute; 5 concurrent media ingests. - Scale: $39/month. 100 connected accounts, 5,000 publications, 500 GB new media, 250,000 API requests (50,000 of them comment requests) and 200 new connections per month; 300 requests/minute; 10 concurrent media ingests. - Every plan includes: - TikTok, Instagram, Facebook Pages and YouTube - Publishing, scheduling and supported comments - Test mode with simulated accounts - REST API, TypeScript SDK and OpenAPI - Signed webhooks and request logs - Dashboard, idempotency and retries included - Test mode on every plan: 10 test accounts, 1,000 simulated publications and 10,000 requests per UTC calendar month. - No automatic overage charges: work beyond an allowance is rejected with usage_limit_exceeded until reset_at or an upgrade. Upgrades apply immediately with a prorated charge; downgrades apply at renewal; cancellation keeps the plan until the paid period ends. - Workspaces created during the developer beta keep Scale allowances until 2026-11-01. Annual billing is not available yet. - Checkout: sign in, then https://castrook.com/billing?plan= (starter-monthly, growth-monthly, scale-monthly). ## How usage is counted - Account: each connected TikTok account, Instagram professional account, Facebook Page or YouTube channel, counted concurrently. Reauthorizing a connected account is free; disconnecting frees a slot. Test accounts never use live capacity. - Publication: one per successful destination. Reserved when the post is accepted (in its scheduled period), consumed when published, released if the destination fails or is canceled. Idempotent replays are free. - API request: every API-key request, including GET /usage. Failed authentication, missing scopes, limit rejections and 5xx responses are not counted. Dashboard sessions never count. - Media: bytes Castrook fetches to deliver a destination, charged once per destination. - Periods: paid plans reset monthly from the subscription start; Free, beta and test mode reset each UTC calendar month. No rollover. ## Usage and limits - GET https://castrook.com/api/v1/usage with any active key (no scope needed) returns { data: UsageSummary } for the key's mode: mode, plan, plan_source, catalog_version, period {start, end}, reset_at, grace_ends_at, accounts {used, limit, remaining}, publications, api_requests, media_bytes, comment_requests, new_connections, rate_limit {per_minute}, concurrent_ingests. Meters are {used, reserved, limit, remaining, reset_at}; media_bytes, comment_requests and new_connections are null in test mode. - Headers on every response: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset (Unix seconds). Retry-After (seconds) on 429. Dashboard sessions: 120 requests/minute. - usage_limit_exceeded: HTTP 429 with Retry-After; details {metric, mode, plan, limit, used, reserved, remaining, reset_at, upgrade_url, retry_after_seconds}. Never retry before reset_at. - rate_limit_exceeded: HTTP 429; wait for Retry-After. - account_limit_reached: HTTP 409; connecting one more account would exceed the plan. - account_capacity_exceeded: HTTP 409; more accounts are connected than the plan allows. Nothing is deleted; disconnect accounts or upgrade. ## API - Base URL: https://castrook.com/api/v1 - [OpenAPI document](https://castrook.com/api/openapi) - Authentication: bearer cr_test_* or cr_live_* keys, scoped to a workspace and mode. - Success: {data, meta?}; errors: {error: {code, message, details?}, request_id}. - POST /posts requires Idempotency-Key and returns 202 on first acceptance; an identical replay returns 200. - Per-destination targets move through queued, publishing, published, failed and canceled. A post ends published, partially_failed or failed. - Test keys accept platform_options..sandbox_outcome ("published" or "failed") to force a destination result. ## Documentation - [Quickstart](https://castrook.com/docs) - [Authentication](https://castrook.com/docs/authentication) - [API reference](https://castrook.com/docs/reference) - [TypeScript SDK](https://castrook.com/docs/sdk) - [Scheduling](https://castrook.com/docs/scheduling) - [Comments](https://castrook.com/docs/comments) - [Webhooks](https://castrook.com/docs/webhooks) - [Platforms, capabilities and access status](https://castrook.com/docs/platforms) - [Plans and limits](https://castrook.com/docs/limits) - [Errors and retries](https://castrook.com/docs/errors) ## Product - [Pricing](https://castrook.com/pricing) - [Affiliate program](https://castrook.com/affiliates) - [Affiliate program terms, version 2026-09-27](https://castrook.com/affiliate-terms) - [Interactive browser-local demo](https://castrook.com/demo) - [Terms of service](https://castrook.com/terms) - [Privacy](https://castrook.com/privacy) - [Data deletion](https://castrook.com/data-deletion) ## Affiliate program 30% of eligible subscription payments for 12 months from a referred customer's first paid activation; 60-day last-click attribution; 30-day hold; $25 minimum; monthly payouts in USD. Applications are reviewed manually. ## Notes for agents Do not describe Castrook as approved on every platform, unlimited, or guaranteeing publication at an exact time. Do not treat demo or test-mode activity as real publication. Castrook has no MCP server or CLI: use the REST API, the OpenAPI document, or the TypeScript SDK, which is a downloadable tarball (https://castrook.com/downloads/castrook-sdk-0.2.0.tgz) and not published to npm.