Skip to content
Proud to collaborate with Microsoft for Startups

youtube.video.upload ​

Upload a YouTube video/Short from a StorageObject or URL via Data API resumable upload. Requires an approved youtube_content_review envelope unless force=true (SOCIAL-004). Default privacy is private.

Overview ​

PropertyValue
Workflow typeAtomic
LibraryApp-youtube
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
workflow_run_idstringNo—Parent DAG workflow run id (engine-injected when used as a step)
organization_uuidstringYes——
connection_uuidstringYes——
kindstringNo—shorts
titlestringNo——
descriptionstringNo——
channel_idstringNo——
storage_object_uuidstringNo——
video_urlstringNo——
file_urlstringNo——
privacy_statusstringNo—private (default)
tagsjsonNo——
approval_envelope_uuidstringNo—Approved ActorOutboxEnvelope authorizing this upload
approval_envelope_idstringNo—Alias of approval_envelope_uuid
forcebooleanNo—Operator override — skip inbox approval proof
force_scaffoldbooleanNo—Test-only: skip Data API and stamp a scaffold video_id. Refused unless YOUTUBE_ALLOW_SCAFFOLD_UPLOAD=1 is set in the environment.

Output Schema ​

FieldTypeRequiredDefaultDescription
workflow_run_idstringNo—Parent DAG workflow run id (engine-injected when used as a step)
organization_uuidstringYes——
connection_uuidstringYes——
kindstringNo——
titlestringNo——
descriptionstringNo——
channel_idstringNo——
storage_object_uuidstringNo——
video_urlstringNo——
file_urlstringNo——
privacy_statusstringNo——
tagsjsonNo——
approval_envelope_uuidstringNo——
approval_envelope_idstringNo—Alias of approval_envelope_uuid
forcebooleanNo—Operator override — skip inbox approval proof
force_scaffoldbooleanNo—Test-only: skip Data API and stamp a scaffold video_id. Refused unless YOUTUBE_ALLOW_SCAFFOLD_UPLOAD=1 is set in the environment.
video_idstringNo——
scaffoldbooleanNo——
failure_reasonstringNo—Engine-stamped human-readable failure reason
failed_atstringNo—ISO timestamp when the workflow failed
failed_at_statestringNo—Engine-stamped state when the workflow failed
failed_stepstringNo—Engine-stamped step name (DAG path)
failed_layerintegerNo—Engine-stamped layer index (DAG path)
errorstringNo—Engine-stamped exception message
error_typestringNo—Engine-stamped exception class name
completed_atstringNo——

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—execute—
completedNoYesYes——
failedNoYesNo——

State Diagram ​

Transitions ​

FromActionToDescription
pendingexecutecompleted—
* (any state)failfailed—

Outcomes ​

OutcomeTypeDescriptionState Data Keys
completedSUCCESSYouTube atom completed successfullycompleted_at
failedFAILUREYouTube atom failedfailure_reason, error, error_type

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "youtube.video.upload",
  "initial_data": {
    "organization_uuid": "value",
    "connection_uuid": "value"
  }
}