Skip to main content
POST

Overview

Schedules a completed video to be published on one of your connected social accounts at a given time. Hooked publishes it at that time; follow the result with Get Scheduled Post (status goes from pending to published or failed). You need:
  • a videoId of your team whose render is completed (from a create endpoint’s webhook, Get Project or List Videos);
  • an integrationId from List Integrations. Accounts are connected in the Hooked dashboard (Studio → Channels).
Scheduling costs no credits. Publishing is supported for YouTube, TikTok and Instagram; a Facebook integration is refused with a 400. scheduledDateTime is an ISO 8601 date-time in UTC with a Z suffix (for example 2026-10-05T15:00:00Z); offsets like +02:00 are rejected. If the publishing queue is briefly unavailable the post is still saved and message reads Video scheduled successfully with warning; publishing is retried automatically.

What each platform uses

Other keys in platformData are dropped.

Errors

Send an Idempotency-Key header to retry safely: if a request times out, sending it again with the same key and body returns the first answer instead of scheduling the video twice.

Next Steps

Get Scheduled Post

Check whether it was published

Update Scheduled Post

Change the time or details

Authorizations

x-api-key
string
header
required

Headers

Idempotency-Key
string

Makes the request safe to retry. 1-255 printable ASCII characters, one per operation (your job id, or a UUID you store), reused on every retry. Within 24 hours the same key with the same body answers with the first response and the header Idempotent-Replayed: true, without running or charging again. Keys are scoped to your team and the endpoint. 5xx answers and refusals before anything ran (401, 402, 403, 409, 429) are not kept. See Idempotency.

Required string length: 1 - 255
Pattern: ^[\x20-\x7E]+$

Body

application/json
videoId
string
required

The video to publish. It must belong to your team and its render must be completed.

integrationId
string
required

The connected account to publish to, from /v1/integration/list

scheduledDateTime
string<date-time>
required

When to publish: ISO 8601 in UTC with a Z suffix (for example 2026-10-05T15:00:00Z). Offsets like +02:00 are rejected. Must be in the future.

platformData
object

Post details. Unknown keys are dropped. Each platform uses only some of them: YouTube uses title, description, tags and privacyStatus; TikTok uses title and privacyStatus (public posts for everyone, private and unlisted for only you, as TikTok has no unlisted; duet, stitch and comments off); Instagram uses caption.

Response

Video scheduled

success
boolean
message
string

Video scheduled successfully, or Video scheduled successfully with warning when the publishing queue was briefly unavailable (the post is saved and publishing is retried automatically)

data
object