MCPサーバー

BlitzReels Video Editor

com.blitzreels/blitzreels

このMCPでできること

Creates and edits short-form videos, including timelines, captions, transitions, AI-generated visuals, music, voiceovers, sound effects, rendering, and export.

add_text_overlay
Add Title Card
Add an opening title card (hook) or generic text overlay to a project timeline. Defaults to classic white: black text on a white card.
冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'text', 'idempotencyKey'], 'properties': {'kind': {'enum': ['overlay', 'title_card'], 'type': 'string', 'default': 'title_card', 'description': 'title_card is an opening hook. overlay is generic on-video text.'}, 'name': {'type': 'string', 'maxLength': 255, 'minLength': 1}, 'size': {'enum': ['compact', 'default', 'bold'], 'type': 'string', 'default': 'default', 'description': 'Title-card size. Ignored for overlay.'}, 'text': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'theme': {'enum': ['classic_white', 'legend_white', 'white_black_outline', 'stacked_black_white', 'red_on_black', 'black_on_yellow', 'red_block'], 'type': 'string', 'default': 'classic_white', 'description': 'Title-card look. classic_white is black text on a white card. Ignored for overlay.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'layerIndex': {'type': 'integer', 'minimum': 0}, 'startSeconds': {'type': 'number', 'default': 0, 'minimum': 0}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'durationSeconds': {'type': 'number', 'default': 4, 'maximum': 3600, 'minimum': 0, 'exclusiveMinimum': 0}, 'expectedRevision': {'type': 'integer', 'minimum': 0, 'description': 'Expected sequence revision, or null.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['operationId', 'projectId', 'baseRevision', 'revision', 'replayed', 'txid', 'affectedTimelineItemIds', 'createdTimelineItemIds', 'deletedTimelineItemIds', 'warnings', 'result', 'mutationReceipt'], 'properties': {'txid': {'type': 'number'}, 'result': {'type': 'object'}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'integer'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'operationId': {'type': 'string'}, 'baseRevision': {'type': 'integer'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'createdTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'deletedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'affectedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
add_transition
Add Transition
Add a timed transition effect, optionally attached to one timeline item and paired with sound.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'startSeconds', 'idempotencyKey'], 'properties': {'name': {'type': 'string', 'maxLength': 255, 'minLength': 1}, 'easing': {'enum': ['linear', 'easeIn', 'easeOut', 'easeInOut'], 'type': 'string', 'default': 'easeInOut'}, 'preset': {'enum': ['flash', 'film-flash', 'whip-left', 'whip-right', 'zoom-punch', 'glitch'], 'type': 'string', 'default': 'flash'}, 'intensity': {'type': 'number', 'default': 0.5, 'maximum': 2, 'minimum': 0.2}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'includeSfx': {'type': 'boolean', 'default': False}, 'layerIndex': {'type': 'integer', 'minimum': 0}, 'startSeconds': {'type': 'number', 'minimum': 0}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}, 'durationSeconds': {'type': 'number', 'default': 0.6, 'maximum': 10, 'minimum': 0, 'exclusiveMinimum': 0}, 'expectedRevision': {'type': 'integer', 'minimum': 0, 'description': 'Expected sequence revision, or null.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['operationId', 'projectId', 'baseRevision', 'revision', 'replayed', 'txid', 'affectedTimelineItemIds', 'createdTimelineItemIds', 'deletedTimelineItemIds', 'warnings', 'result', 'mutationReceipt'], 'properties': {'txid': {'type': 'number'}, 'result': {'type': 'object'}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'integer'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'operationId': {'type': 'string'}, 'baseRevision': {'type': 'integer'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'createdTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'deletedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'affectedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
batch_update_timeline_clips
Batch Update Timeline Clips
Update timing, trim, layer, or state for up to 100 timeline items in one sequence transaction.
冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'updates', 'idempotencyKey'], 'properties': {'updates': {'type': 'array', 'items': {'type': 'object', 'required': ['timelineItemId'], 'properties': {'ignored': {'type': 'boolean'}, 'layerIndex': {'type': 'integer', 'minimum': 0}, 'startSeconds': {'type': 'number', 'minimum': 0}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}, 'trimEndSeconds': {'type': 'number', 'minimum': 0}, 'durationSeconds': {'type': 'number', 'exclusiveMinimum': 0}, 'trimStartSeconds': {'type': 'number', 'minimum': 0}, 'blurredBackground': {'type': 'boolean'}}, 'additionalProperties': False}, 'maxItems': 100, 'minItems': 1, 'description': 'Each update needs at least one field to change besides timelineItemId.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'expectedRevision': {'type': 'integer', 'minimum': 0, 'description': 'Expected sequence revision, or null.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['operationId', 'projectId', 'baseRevision', 'revision', 'replayed', 'txid', 'affectedTimelineItemIds', 'createdTimelineItemIds', 'deletedTimelineItemIds', 'warnings', 'result', 'mutationReceipt'], 'properties': {'txid': {'type': 'number'}, 'result': {'type': 'object'}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'integer'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'operationId': {'type': 'string'}, 'baseRevision': {'type': 'integer'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'createdTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'deletedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'affectedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
captions_look_apply
Apply Caption Look
Apply a verified caption look to one project. Preserves word overrides unless clearWordOverrides=true. Existing captions are restyled; spoken audio is preserved.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'lookId', 'idempotencyKey'], 'properties': {'lookId': {'type': ['string', 'null'], 'default': None}, 'projectId': {'type': ['string', 'null'], 'format': 'uuid', 'default': None, 'description': 'UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'idempotencyKey': {'type': ['string', 'null'], 'default': None}, 'clearWordOverrides': {'type': 'boolean', 'default': False}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
captions_source_prepare
Prepare Source Captions
Restore editable project captions from the selected source's completed canonical transcript. Keeps the full recording and avoids duplicate captions on identical retries. Requires source transcription first; no-speech is an explicit successful state.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'projectId', 'assetId'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
captions_themes_list
List Caption Themes
List built-in caption looks and saved caption themes available to a workspace.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'includeSavedThemes': {'type': 'boolean', 'default': True, 'description': 'Include saved workspace caption themes.'}, 'includeBuiltInLooks': {'type': 'boolean', 'default': True, 'description': 'Include built-in caption looks.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['themes'], 'properties': {'themes': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': False}
captions_words_correct
Correct Caption Words
Replace selected caption words by their stable IDs. Preserves timing and the other captions; this does not change the spoken audio.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'projectId', 'updates'], 'properties': {'updates': {'type': 'array', 'items': {'type': 'object', 'required': ['wordId', 'text'], 'properties': {'text': {'type': 'string', 'maxLength': 300, 'minLength': 1}, 'wordId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'maxItems': 200, 'minItems': 1}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
captions_words_list
Read Caption Words
Read bounded editable caption words and stable word IDs for one project, optionally matching text.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'projectId', 'matchText', 'limit', 'offset'], 'properties': {'limit': {'type': 'integer', 'default': 100, 'maximum': 200, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}, 'matchText': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}], 'default': None}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
carousels_clone
Clone Carousel
Duplicate a carousel onto a new project. Copies slots. Icon and shot values may be pack filenames or asset:<media_asset_id>.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['idempotencyKey', 'projectId'], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'properties': {'kit': {'type': 'object', 'required': ['themes', 'templates', 'active_theme_id'], 'properties': {'themes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'fontFamily', 'titleColor', 'bodyColor', 'background', 'pageColor', 'overlayEnabled', 'overlayOpacity'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'bodyColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'pageColor': {'type': 'string', 'default': '', 'maxLength': 32}, 'background': {'type': 'string', 'default': '', 'maxLength': 32}, 'fontFamily': {'type': 'string', 'default': '', 'maxLength': 80}, 'titleColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'overlayEnabled': {'type': 'boolean'}, 'overlayOpacity': {'type': 'integer', 'maximum': 100, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 40}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'template_id', 'slots'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 40}, 'active_theme_id': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'name': {'type': 'string'}, 'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'style': {'anyOf': [{'type': 'object', 'properties': {'chip': {'type': 'object', 'properties': {'color': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'radius': {'type': 'integer', 'maximum': 48, 'minimum': 0}, 'font_size': {'type': 'integer', 'maximum': 120, 'minimum': 12}, 'padding_x': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'padding_y': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'background': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'font_family': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'font_weight': {'anyOf': [{'type': 'integer', 'maximum': 900, 'minimum': 100}, {'type': 'string'}]}, 'max_lines_per_chip': {'type': 'integer', 'maximum': 4, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'null'}]}, 'locale': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'role', 'lines', 'slots', 'layout', 'visual'], 'properties': {'role': {'anyOf': [{'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, {'type': 'null'}]}, 'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'lines': {'type': 'array', 'items': {'type': 'string'}}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'anyOf': [{'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, {'type': 'null'}]}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'photo_url': {'anyOf': [{'type': 'string', 'maxLength': 4000, 'minLength': 1}, {'type': 'null'}]}, 'slot_urls': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}}, 'additionalProperties': False}}, 'can_undo': {'type': 'boolean'}, 'platform': {'anyOf': [{'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, {'type': 'null'}]}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'family', 'slots'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'slots': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label'], 'properties': {'key': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'family': {'enum': ['photo', 'designed'], 'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
carousels_compile
Compile Carousel
Create or replace a carousel project from a slide document. Server owns chip layout, safezones, and exact export pixels.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['platform', 'name', 'slides', 'idempotencyKey'], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'style': {'type': 'object', 'properties': {'chip': {'type': 'object', 'properties': {'color': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'radius': {'type': 'integer', 'maximum': 48, 'minimum': 0}, 'font_size': {'type': 'integer', 'maximum': 120, 'minimum': 12}, 'padding_x': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'padding_y': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'background': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'font_family': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'font_weight': {'anyOf': [{'type': 'integer', 'maximum': 900, 'minimum': 100}, {'type': 'string'}]}, 'max_lines_per_chip': {'type': 'integer', 'maximum': 4, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'locale': {'type': 'string', 'maxLength': 12, 'minLength': 2}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['lines', 'visual'], 'properties': {'role': {'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, 'lines': {'type': 'array', 'items': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'default': [], 'maxItems': 6}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'layout_overrides': {'type': 'object', 'properties': {'top_px': {'type': 'integer', 'maximum': 1920, 'minimum': 0}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'maxItems': 35, 'minItems': 1}, 'platform': {'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, 'series_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'clear_existing': {'type': 'boolean'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['project_id', 'revision', 'platform', 'slide_count', 'slides', 'frame', 'warnings', 'next_actions', 'mutationReceipt'], 'properties': {'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'job_id': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'role', 'timeline_item_ids', 'overlay_ids', 'layout_applied', 'chip_band_px'], 'properties': {'role': {'anyOf': [{'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, {'type': 'null'}]}, 'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'overlay_ids': {'type': 'array', 'items': {'type': 'string'}}, 'chip_band_px': {'type': 'object', 'required': ['top', 'bottom'], 'properties': {'top': {'type': 'number'}, 'bottom': {'type': 'number'}}, 'additionalProperties': False}, 'layout_applied': {'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, 'timeline_item_ids': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'platform': {'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'slide_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}, 'ai_image_run_id': {'type': ['string', 'null']}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
carousels_expand_recipe
Expand Carousel Recipe
Turn a named recipe or a brief into compile-ready named-template slides. Expand never publishes and never invents metrics.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['recipeId'], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'brief': {'type': 'string', 'maxLength': 8000, 'minLength': 1}, 'offer': {'type': 'string', 'maxLength': 400, 'minLength': 1}, 'locale': {'type': 'string', 'maxLength': 12, 'minLength': 2}, 'product': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'audience': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'platform': {'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, 'recipeId': {'enum': ['curiosity_gap_ugc_7', 'result_first_demo_6', 'myth_guillotine_8', 'before_after_5', 'from_brief'], 'type': 'string'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['recipe_id', 'name', 'platform', 'slides'], 'properties': {'name': {'type': 'string'}, 'locale': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['lines', 'visual'], 'properties': {'role': {'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, 'lines': {'type': 'array', 'items': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'default': [], 'maxItems': 6}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'layout_overrides': {'type': 'object', 'properties': {'top_px': {'type': 'integer', 'maximum': 1920, 'minimum': 0}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'platform': {'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, 'recipe_id': {'enum': ['curiosity_gap_ugc_7', 'result_first_demo_6', 'myth_guillotine_8', 'before_after_5', 'from_brief'], 'type': 'string'}}, 'additionalProperties': False}
carousels_get
Get Carousel Document
Read the carousel slot document and the named template catalog.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['project_id', 'revision', 'name', 'platform', 'locale', 'frame', 'style', 'slides', 'templates', 'can_undo', 'warnings', 'next_actions'], 'properties': {'kit': {'type': 'object', 'required': ['themes', 'templates', 'active_theme_id'], 'properties': {'themes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'fontFamily', 'titleColor', 'bodyColor', 'background', 'pageColor', 'overlayEnabled', 'overlayOpacity'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'bodyColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'pageColor': {'type': 'string', 'default': '', 'maxLength': 32}, 'background': {'type': 'string', 'default': '', 'maxLength': 32}, 'fontFamily': {'type': 'string', 'default': '', 'maxLength': 80}, 'titleColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'overlayEnabled': {'type': 'boolean'}, 'overlayOpacity': {'type': 'integer', 'maximum': 100, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 40}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'template_id', 'slots'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 40}, 'active_theme_id': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'name': {'type': 'string'}, 'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'style': {'anyOf': [{'type': 'object', 'properties': {'chip': {'type': 'object', 'properties': {'color': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'radius': {'type': 'integer', 'maximum': 48, 'minimum': 0}, 'font_size': {'type': 'integer', 'maximum': 120, 'minimum': 12}, 'padding_x': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'padding_y': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'background': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'font_family': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'font_weight': {'anyOf': [{'type': 'integer', 'maximum': 900, 'minimum': 100}, {'type': 'string'}]}, 'max_lines_per_chip': {'type': 'integer', 'maximum': 4, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'null'}]}, 'locale': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'role', 'lines', 'slots', 'layout', 'visual'], 'properties': {'role': {'anyOf': [{'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, {'type': 'null'}]}, 'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'lines': {'type': 'array', 'items': {'type': 'string'}}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'anyOf': [{'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, {'type': 'null'}]}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'photo_url': {'anyOf': [{'type': 'string', 'maxLength': 4000, 'minLength': 1}, {'type': 'null'}]}, 'slot_urls': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}}, 'additionalProperties': False}}, 'can_undo': {'type': 'boolean'}, 'platform': {'anyOf': [{'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, {'type': 'null'}]}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'family', 'slots'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'slots': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label'], 'properties': {'key': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'family': {'enum': ['photo', 'designed'], 'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
carousels_kit
Carousel Theme Kit
Save or apply a theme, brand theme, or named slide template. Themes rewrite fonts, colors, overlay, and asset:<id> logos. Never persist signed URLs.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['idempotencyKey', 'projectId', 'op'], 'properties': {'op': {'enum': ['save_theme', 'apply_theme', 'delete_theme', 'save_template', 'apply_template', 'delete_template', 'apply_brand'], 'type': 'string'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'themeId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'slideIndex': {'type': 'integer', 'maximum': 34, 'minimum': 0}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'savedTemplateId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'properties': {'kit': {'type': 'object', 'required': ['themes', 'templates', 'active_theme_id'], 'properties': {'themes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'fontFamily', 'titleColor', 'bodyColor', 'background', 'pageColor', 'overlayEnabled', 'overlayOpacity'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'bodyColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'pageColor': {'type': 'string', 'default': '', 'maxLength': 32}, 'background': {'type': 'string', 'default': '', 'maxLength': 32}, 'fontFamily': {'type': 'string', 'default': '', 'maxLength': 80}, 'titleColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'overlayEnabled': {'type': 'boolean'}, 'overlayOpacity': {'type': 'integer', 'maximum': 100, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 40}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'template_id', 'slots'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 40}, 'active_theme_id': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'name': {'type': 'string'}, 'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'style': {'anyOf': [{'type': 'object', 'properties': {'chip': {'type': 'object', 'properties': {'color': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'radius': {'type': 'integer', 'maximum': 48, 'minimum': 0}, 'font_size': {'type': 'integer', 'maximum': 120, 'minimum': 12}, 'padding_x': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'padding_y': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'background': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'font_family': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'font_weight': {'anyOf': [{'type': 'integer', 'maximum': 900, 'minimum': 100}, {'type': 'string'}]}, 'max_lines_per_chip': {'type': 'integer', 'maximum': 4, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'null'}]}, 'locale': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'role', 'lines', 'slots', 'layout', 'visual'], 'properties': {'role': {'anyOf': [{'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, {'type': 'null'}]}, 'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'lines': {'type': 'array', 'items': {'type': 'string'}}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'anyOf': [{'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, {'type': 'null'}]}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'photo_url': {'anyOf': [{'type': 'string', 'maxLength': 4000, 'minLength': 1}, {'type': 'null'}]}, 'slot_urls': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}}, 'additionalProperties': False}}, 'can_undo': {'type': 'boolean'}, 'platform': {'anyOf': [{'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, {'type': 'null'}]}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'family', 'slots'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'slots': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label'], 'properties': {'key': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'family': {'enum': ['photo', 'designed'], 'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
carousels_migrate
Migrate Legacy Carousel
Rebuild a compile slot document from a legacy overlay carousel. Then patch slots like any compiled deck.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['idempotencyKey', 'projectId'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'properties': {'kit': {'type': 'object', 'required': ['themes', 'templates', 'active_theme_id'], 'properties': {'themes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'fontFamily', 'titleColor', 'bodyColor', 'background', 'pageColor', 'overlayEnabled', 'overlayOpacity'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'bodyColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'pageColor': {'type': 'string', 'default': '', 'maxLength': 32}, 'background': {'type': 'string', 'default': '', 'maxLength': 32}, 'fontFamily': {'type': 'string', 'default': '', 'maxLength': 80}, 'titleColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'overlayEnabled': {'type': 'boolean'}, 'overlayOpacity': {'type': 'integer', 'maximum': 100, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 40}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'template_id', 'slots'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 40}, 'active_theme_id': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'name': {'type': 'string'}, 'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'style': {'anyOf': [{'type': 'object', 'properties': {'chip': {'type': 'object', 'properties': {'color': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'radius': {'type': 'integer', 'maximum': 48, 'minimum': 0}, 'font_size': {'type': 'integer', 'maximum': 120, 'minimum': 12}, 'padding_x': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'padding_y': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'background': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'font_family': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'font_weight': {'anyOf': [{'type': 'integer', 'maximum': 900, 'minimum': 100}, {'type': 'string'}]}, 'max_lines_per_chip': {'type': 'integer', 'maximum': 4, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'null'}]}, 'locale': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'role', 'lines', 'slots', 'layout', 'visual'], 'properties': {'role': {'anyOf': [{'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, {'type': 'null'}]}, 'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'lines': {'type': 'array', 'items': {'type': 'string'}}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'anyOf': [{'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, {'type': 'null'}]}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'photo_url': {'anyOf': [{'type': 'string', 'maxLength': 4000, 'minLength': 1}, {'type': 'null'}]}, 'slot_urls': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}}, 'additionalProperties': False}}, 'can_undo': {'type': 'boolean'}, 'platform': {'anyOf': [{'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, {'type': 'null'}]}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'family', 'slots'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'slots': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label'], 'properties': {'key': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'family': {'enum': ['photo', 'designed'], 'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
carousels_patch_document
Patch Carousel Document
Reorder, remove, insert, duplicate, or undo slides on a compiled carousel. One write for the filmstrip. Insert rasters an empty named template unless sourceIndex copies a slide.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['idempotencyKey', 'projectId', 'op'], 'properties': {'op': {'enum': ['reorder', 'remove', 'insert', 'undo'], 'type': 'string'}, 'to': {'type': 'integer', 'maximum': 34, 'minimum': 0}, 'from': {'type': 'integer', 'maximum': 34, 'minimum': 0}, 'index': {'type': 'integer', 'maximum': 34, 'minimum': 0}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'templateId': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'sourceIndex': {'type': 'integer', 'maximum': 34, 'minimum': 0}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'properties': {'kit': {'type': 'object', 'required': ['themes', 'templates', 'active_theme_id'], 'properties': {'themes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'fontFamily', 'titleColor', 'bodyColor', 'background', 'pageColor', 'overlayEnabled', 'overlayOpacity'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'bodyColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'pageColor': {'type': 'string', 'default': '', 'maxLength': 32}, 'background': {'type': 'string', 'default': '', 'maxLength': 32}, 'fontFamily': {'type': 'string', 'default': '', 'maxLength': 80}, 'titleColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'overlayEnabled': {'type': 'boolean'}, 'overlayOpacity': {'type': 'integer', 'maximum': 100, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 40}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'template_id', 'slots'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 40}, 'active_theme_id': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'name': {'type': 'string'}, 'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'style': {'anyOf': [{'type': 'object', 'properties': {'chip': {'type': 'object', 'properties': {'color': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'radius': {'type': 'integer', 'maximum': 48, 'minimum': 0}, 'font_size': {'type': 'integer', 'maximum': 120, 'minimum': 12}, 'padding_x': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'padding_y': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'background': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'font_family': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'font_weight': {'anyOf': [{'type': 'integer', 'maximum': 900, 'minimum': 100}, {'type': 'string'}]}, 'max_lines_per_chip': {'type': 'integer', 'maximum': 4, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'null'}]}, 'locale': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'role', 'lines', 'slots', 'layout', 'visual'], 'properties': {'role': {'anyOf': [{'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, {'type': 'null'}]}, 'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'lines': {'type': 'array', 'items': {'type': 'string'}}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'anyOf': [{'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, {'type': 'null'}]}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'photo_url': {'anyOf': [{'type': 'string', 'maxLength': 4000, 'minLength': 1}, {'type': 'null'}]}, 'slot_urls': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}}, 'additionalProperties': False}}, 'can_undo': {'type': 'boolean'}, 'platform': {'anyOf': [{'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, {'type': 'null'}]}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'family', 'slots'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'slots': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label'], 'properties': {'key': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'family': {'enum': ['photo', 'designed'], 'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
carousels_patch_slide
Patch Carousel Slide
Patch named slots or template_id on one slide. Re-rasters that slide only. Never rewrite HTML.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['idempotencyKey', 'projectId', 'slideIndex'], 'properties': {'lines': {'type': 'array', 'items': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'maxItems': 6}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'slideIndex': {'type': 'integer', 'maximum': 34, 'minimum': 0}, 'templateId': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'mediaAssetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'properties': {'kit': {'type': 'object', 'required': ['themes', 'templates', 'active_theme_id'], 'properties': {'themes': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'fontFamily', 'titleColor', 'bodyColor', 'background', 'pageColor', 'overlayEnabled', 'overlayOpacity'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'bodyColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'pageColor': {'type': 'string', 'default': '', 'maxLength': 32}, 'background': {'type': 'string', 'default': '', 'maxLength': 32}, 'fontFamily': {'type': 'string', 'default': '', 'maxLength': 80}, 'titleColor': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'overlayEnabled': {'type': 'boolean'}, 'overlayOpacity': {'type': 'integer', 'maximum': 100, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 40}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'scope', 'template_id', 'slots'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'scope': {'enum': ['project', 'brand'], 'type': 'string'}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 40}, 'active_theme_id': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'name': {'type': 'string'}, 'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'style': {'anyOf': [{'type': 'object', 'properties': {'chip': {'type': 'object', 'properties': {'color': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'radius': {'type': 'integer', 'maximum': 48, 'minimum': 0}, 'font_size': {'type': 'integer', 'maximum': 120, 'minimum': 12}, 'padding_x': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'padding_y': {'type': 'integer', 'maximum': 80, 'minimum': 0}, 'background': {'type': 'string', 'maxLength': 32, 'minLength': 1}, 'font_family': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'font_weight': {'anyOf': [{'type': 'integer', 'maximum': 900, 'minimum': 100}, {'type': 'string'}]}, 'max_lines_per_chip': {'type': 'integer', 'maximum': 4, 'minimum': 1}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'null'}]}, 'locale': {'type': ['string', 'null']}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'role', 'lines', 'slots', 'layout', 'visual'], 'properties': {'role': {'anyOf': [{'enum': ['hook', 'body', 'proof', 'cta'], 'type': 'string'}, {'type': 'null'}]}, 'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'lines': {'type': 'array', 'items': {'type': 'string'}}, 'slots': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'additionalProperties': {'type': 'string', 'maxLength': 4000}}, 'layout': {'anyOf': [{'enum': ['chip_stack_ui', 'chip_stack_face_safe', 'chip_stack_top', 'title_body_card'], 'type': 'string'}, {'type': 'null'}]}, 'visual': {'type': 'object', 'required': ['kind'], 'properties': {'html': {'type': 'string', 'maxLength': 80000, 'minLength': 20}, 'kind': {'enum': ['media_asset', 'generate', 'solid', 'gradient', 'html', 'template'], 'type': 'string'}, 'color': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'colors': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-fA-F]{6}$'}, 'maxItems': 2, 'minItems': 1}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 3}, 'model_id': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'template_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'source_media_asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}, 'photo_url': {'anyOf': [{'type': 'string', 'maxLength': 4000, 'minLength': 1}, {'type': 'null'}]}, 'slot_urls': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}}, 'additionalProperties': False}}, 'can_undo': {'type': 'boolean'}, 'platform': {'anyOf': [{'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, {'type': 'null'}]}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'templates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'family', 'slots'], 'properties': {'id': {'type': 'string'}, 'label': {'type': 'string'}, 'slots': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'label'], 'properties': {'key': {'type': 'string'}, 'label': {'type': 'string'}}, 'additionalProperties': False}}, 'family': {'enum': ['photo', 'designed'], 'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
carousels_preview
Preview Carousel
Render JPEG stills for a compiled carousel at the exact platform frame and return them as MCP images so you can inspect chips on the real slides.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'chrome'], 'properties': {'chrome': {'enum': ['tiktok', 'instagram', 'none'], 'type': 'string', 'default': 'none'}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'slideIndexes': {'type': 'array', 'items': {'type': 'integer', 'maximum': 34, 'minimum': 0}, 'maxItems': 35}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['project_id', 'revision', 'platform', 'frame', 'slides', 'warnings', 'next_actions'], 'properties': {'frame': {'type': 'object', 'required': ['width', 'height', 'aspect_ratio'], 'properties': {'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aspect_ratio': {'type': 'string'}}, 'additionalProperties': False}, 'slides': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'preview_url', 'width', 'height', 'expires_at'], 'properties': {'index': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'print': {'enum': ['slots', 'ingested'], 'type': 'string'}, 'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'expires_at': {'type': 'string'}, 'preview_url': {'type': 'string'}}, 'additionalProperties': False}}, 'platform': {'anyOf': [{'enum': ['tiktok_photo', 'instagram_4x5', 'linkedin'], 'type': 'string'}, {'type': 'null'}]}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'field': {'type': 'string'}, 'repair': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'project_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'next_actions': {'type': 'array', 'items': {'type': 'object', 'required': ['method', 'path', 'reason'], 'properties': {'path': {'type': 'string'}, 'method': {'enum': ['GET', 'POST', 'PATCH', 'DELETE'], 'type': 'string'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
characters_apply
Apply Reusable Character
Create or update a reference-based character for repeatable faceless story generation.
冪等
入力スキーマ
{'type': 'object', 'required': ['name', 'idempotencyKey'], 'properties': {'name': {'type': 'string'}, 'type': {'enum': ['human', 'fictional', 'other'], 'type': 'string', 'default': 'human'}, 'species': {'type': 'string'}, 'storyFacts': {'type': 'array', 'items': {'type': 'string'}}, 'characterId': {'type': 'string'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace UUID. Defaults to the user's default workspace. UUID string."}, 'defaultVoiceId': {'type': 'string'}, 'idempotencyKey': {'type': 'string'}, 'defaultVoiceStyle': {'type': 'string'}, 'referenceAssetIds': {'type': 'array', 'items': {'type': 'string'}}, 'canonicalDescription': {'type': 'string'}, 'confirmLikenessConsent': {'type': 'boolean', 'default': False, 'description': "For a human character, set true only after the user confirms consent to use the depicted person's likeness."}, 'primaryReferenceAssetId': {'type': 'string'}, 'confirmRightsToReferences': {'type': 'boolean', 'default': False, 'description': 'Set true only after the user confirms they own the reference media or have permission to use it.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['character', 'mutationReceipt'], 'properties': {'character': {'type': 'object'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
characters_get
Get Reusable Character
Inspect one reusable character and its ordered reference-image set before planning a story.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['characterId'], 'properties': {'characterId': {'type': 'string'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace UUID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['character'], 'properties': {'character': {'type': 'object'}}, 'additionalProperties': False}
characters_list
List Reusable Characters
List bounded reusable characters with identity, voice, facts, and image-reference metadata.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'number', 'default': 0, 'minimum': 0}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace UUID. Defaults to the user's default workspace. UUID string."}, 'includeArchived': {'type': 'boolean', 'default': False}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['characters', 'bounds'], 'properties': {'bounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'characters': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': False}
clip_batches_delete
Delete Clip Batch
Preview or delete a terminal clip batch. Dry-run is the default; real deletion requires explicit confirmation, retention choice, workspace delete permission, and an idempotency key.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', 'required': ['batchId', 'idempotencyKey'], 'properties': {'dryRun': {'type': 'boolean', 'default': True}, 'batchId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'retention': {'enum': ['retain_projects_and_exports', 'delete_projects_and_exports'], 'type': 'string', 'default': 'retain_projects_and_exports'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'confirmDelete': {'type': 'boolean', 'default': False}, 'idempotencyKey': {'type': 'string', 'maxLength': 255, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_candidates_list
Review Clip Candidates
Read existing suggested moments with source ranges, hooks, transcript excerpts and thumbnails before producing videos. Results are bounded; this does not generate suggestions or render clips.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'assetId', 'limit', 'offset'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}, 'assetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_create
Create Clips
Create a private BlitzReels clip batch from an existing asset or a user-provided video URL. Supports public social videos, Google Drive, and direct media URLs.
外部アクセスあり
入力スキーマ
{'type': 'object', 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'Video URL to import before clipping. Supports social video links, Google Drive file links, and direct video file URLs.'}, 'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Existing BlitzReels video asset ID. Provide assetId or url, not both. UUID string.'}, 'seriesId': {'type': 'string', 'description': 'Optional Series UUID. Omitted inherits the source Series; null creates standalone clips.'}, 'clipCount': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Maximum clips requested. Available source moments and account limits can yield fewer.'}, 'selection': {'anyOf': [{'type': 'object', 'required': ['includeIds', 'excludeIds'], 'properties': {'excludeIds': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 50, 'uniqueItems': True}, 'includeIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}, 'maxItems': 50, 'minItems': 1, 'uniqueItems': True}, {'type': 'null'}]}}, 'additionalProperties': False}, {'type': 'null'}], 'default': None, 'description': 'Existing asset only: reviewed candidate IDs to include in order or exclude. Resolve IDs with clips_candidates_list first. Null delegates selection.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'clipPresetId': {'enum': ['default', 'high-retention', 'demo-focus'], 'type': 'string', 'default': 'default', 'description': 'Clip style preset. Use high-retention for High Retention clips or demo-focus for product and screen demos.'}, 'captionThemeId': {'type': 'string', 'description': 'Saved theme UUID or built-in caption look. Omitted inherits Series defaults; null uses workspace captions.'}, 'durationBounds': {'anyOf': [{'type': 'object', 'required': ['minSeconds', 'maxSeconds'], 'properties': {'maxSeconds': {'type': ['number', 'null'], 'maximum': 180, 'minimum': 1}, 'minSeconds': {'type': ['number', 'null'], 'maximum': 180, 'minimum': 1}}, 'additionalProperties': False}, {'type': 'null'}], 'default': None, 'description': 'Requested clip duration bounds. Selection preserves complete moments; minimum cannot exceed maximum.'}, 'idempotencyKey': {'type': 'string', 'description': 'Retry key. Reuse only with identical inputs.'}, 'autoTrimSilence': {'type': 'boolean', 'default': True, 'description': 'Trim silence around selected moments.'}, 'createSharePage': {'type': 'boolean', 'default': False, 'description': 'Create a public showcase page where completed clips appear.'}, 'selectedAudioLanguage': {'type': 'string', 'maxLength': 40, 'minLength': 2, 'description': 'Audio language track for a social-video URL, using the language reported by media_import_inspect. Null uses source default. Existing assets and direct files preserve source audio.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result', 'batch'], 'properties': {'batch': {'type': 'object', 'required': ['id', 'status', 'assetId', 'projectFolderId', 'estimatedClipCount', 'totalClipCount', 'renderedCount', 'failedCount', 'reviewCount', 'clipPreset', 'selectedQuality', 'lastErrorMessage', 'sourceUrl', 'studioUrl', 'projectFolderUrl', 'zipDownloadUrl', 'downloadUrlExpiresInSeconds', 'polling', 'clips'], 'properties': {'id': {'type': 'string'}, 'clips': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'suggestionId', 'projectId', 'exportId', 'title', 'status', 'downloadUrl', 'thumbnailUrl', 'errorMessage'], 'properties': {'id': {'type': 'string'}, 'title': {'type': 'string'}, 'status': {'type': 'string'}, 'exportId': {'type': ['string', 'null']}, 'projectId': {'type': ['string', 'null']}, 'downloadUrl': {'type': ['string', 'null']}, 'errorMessage': {'type': ['string', 'null']}, 'suggestionId': {'type': ['string', 'null']}, 'thumbnailUrl': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'status': {'type': 'string'}, 'assetId': {'type': 'string'}, 'polling': {'type': 'object', 'required': ['state', 'stage', 'isTerminal', 'shouldPoll', 'suggestedTool', 'nextPollAfterSeconds', 'maxPollSeconds', 'maxPollAttempts'], 'properties': {'stage': {'type': 'string'}, 'state': {'type': 'string'}, 'isTerminal': {'type': 'boolean'}, 'shouldPoll': {'type': 'boolean'}, 'suggestedTool': {'enum': ['clips_get', 'clips_status_get'], 'type': 'string'}, 'maxPollSeconds': {'type': 'number'}, 'maxPollAttempts': {'type': 'number'}, 'nextPollAfterSeconds': {'type': ['number', 'null']}}, 'additionalProperties': False}, 'sourceUrl': {'type': 'string'}, 'studioUrl': {'type': 'string'}, 'clipPreset': {'anyOf': [{'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'failedCount': {'type': 'number'}, 'reviewCount': {'type': 'number'}, 'renderedCount': {'type': 'number'}, 'totalClipCount': {'type': 'number'}, 'zipDownloadUrl': {'type': ['string', 'null']}, 'projectFolderId': {'type': ['string', 'null']}, 'selectedQuality': {'type': ['string', 'null']}, 'lastErrorMessage': {'type': ['string', 'null']}, 'projectFolderUrl': {'type': ['string', 'null']}, 'estimatedClipCount': {'type': 'number'}, 'downloadUrlExpiresInSeconds': {'type': 'number'}}, 'additionalProperties': False}, 'result': {'type': 'object', 'required': ['batch', 'importedAssetId', 'sourceKind', 'mutationReceipt'], 'properties': {'batch': {'type': 'object', 'required': ['id', 'status', 'assetId', 'projectFolderId', 'estimatedClipCount', 'totalClipCount', 'renderedCount', 'failedCount', 'reviewCount', 'clipPreset', 'selectedQuality', 'lastErrorMessage', 'sourceUrl', 'studioUrl', 'projectFolderUrl', 'zipDownloadUrl', 'downloadUrlExpiresInSeconds', 'polling', 'clips'], 'properties': {'id': {'type': 'string'}, 'clips': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'suggestionId', 'projectId', 'exportId', 'title', 'status', 'downloadUrl', 'thumbnailUrl', 'errorMessage'], 'properties': {'id': {'type': 'string'}, 'title': {'type': 'string'}, 'status': {'type': 'string'}, 'exportId': {'type': ['string', 'null']}, 'projectId': {'type': ['string', 'null']}, 'downloadUrl': {'type': ['string', 'null']}, 'errorMessage': {'type': ['string', 'null']}, 'suggestionId': {'type': ['string', 'null']}, 'thumbnailUrl': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'status': {'type': 'string'}, 'assetId': {'type': 'string'}, 'polling': {'type': 'object', 'required': ['state', 'stage', 'isTerminal', 'shouldPoll', 'suggestedTool', 'nextPollAfterSeconds', 'maxPollSeconds', 'maxPollAttempts'], 'properties': {'stage': {'type': 'string'}, 'state': {'type': 'string'}, 'isTerminal': {'type': 'boolean'}, 'shouldPoll': {'type': 'boolean'}, 'suggestedTool': {'enum': ['clips_get', 'clips_status_get'], 'type': 'string'}, 'maxPollSeconds': {'type': 'number'}, 'maxPollAttempts': {'type': 'number'}, 'nextPollAfterSeconds': {'type': ['number', 'null']}}, 'additionalProperties': False}, 'sourceUrl': {'type': 'string'}, 'studioUrl': {'type': 'string'}, 'clipPreset': {'anyOf': [{'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'failedCount': {'type': 'number'}, 'reviewCount': {'type': 'number'}, 'renderedCount': {'type': 'number'}, 'totalClipCount': {'type': 'number'}, 'zipDownloadUrl': {'type': ['string', 'null']}, 'projectFolderId': {'type': ['string', 'null']}, 'selectedQuality': {'type': ['string', 'null']}, 'lastErrorMessage': {'type': ['string', 'null']}, 'projectFolderUrl': {'type': ['string', 'null']}, 'estimatedClipCount': {'type': 'number'}, 'downloadUrlExpiresInSeconds': {'type': 'number'}}, 'additionalProperties': False}, 'sourceKind': {'type': 'string'}, 'importedAssetId': {'type': 'string'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'additionalProperties': False}
clips_export
Export One Clip
Render one managed clip at an existing-account-supported quality. Returns persisted export state; inspect until the accepted delivery file is ready. Can spend existing account credits.
冪等
入力スキーマ
{'type': 'object', 'required': ['clipId', 'idempotencyKey'], 'properties': {'clipId': {'type': ['string', 'null'], 'default': None}, 'format': {'enum': ['mp4', 'mov'], 'type': 'string', 'default': 'mp4'}, 'resolution': {'enum': ['720p', '1080p'], 'type': 'string', 'default': '1080p'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'idempotencyKey': {'type': ['string', 'null'], 'default': None}, 'coverFrameSeconds': {'type': 'number', 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_get
Get Clip Batch
Get status, generated clips, render counts, and download links for a BlitzReels clip batch.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['batchId'], 'properties': {'batchId': {'type': 'string', 'format': 'uuid', 'description': 'Clip batch ID. UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['batch'], 'properties': {'batch': {'type': 'object', 'required': ['id', 'status', 'assetId', 'projectFolderId', 'estimatedClipCount', 'totalClipCount', 'renderedCount', 'failedCount', 'reviewCount', 'clipPreset', 'selectedQuality', 'lastErrorMessage', 'sourceUrl', 'studioUrl', 'projectFolderUrl', 'zipDownloadUrl', 'downloadUrlExpiresInSeconds', 'polling', 'clips'], 'properties': {'id': {'type': 'string'}, 'clips': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'suggestionId', 'projectId', 'exportId', 'title', 'status', 'downloadUrl', 'thumbnailUrl', 'errorMessage'], 'properties': {'id': {'type': 'string'}, 'title': {'type': 'string'}, 'status': {'type': 'string'}, 'exportId': {'type': ['string', 'null']}, 'projectId': {'type': ['string', 'null']}, 'downloadUrl': {'type': ['string', 'null']}, 'errorMessage': {'type': ['string', 'null']}, 'suggestionId': {'type': ['string', 'null']}, 'thumbnailUrl': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'status': {'type': 'string'}, 'assetId': {'type': 'string'}, 'polling': {'type': 'object', 'required': ['state', 'stage', 'isTerminal', 'shouldPoll', 'suggestedTool', 'nextPollAfterSeconds', 'maxPollSeconds', 'maxPollAttempts'], 'properties': {'stage': {'type': 'string'}, 'state': {'type': 'string'}, 'isTerminal': {'type': 'boolean'}, 'shouldPoll': {'type': 'boolean'}, 'suggestedTool': {'enum': ['clips_get', 'clips_status_get'], 'type': 'string'}, 'maxPollSeconds': {'type': 'number'}, 'maxPollAttempts': {'type': 'number'}, 'nextPollAfterSeconds': {'type': ['number', 'null']}}, 'additionalProperties': False}, 'sourceUrl': {'type': 'string'}, 'studioUrl': {'type': 'string'}, 'clipPreset': {'anyOf': [{'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'failedCount': {'type': 'number'}, 'reviewCount': {'type': 'number'}, 'renderedCount': {'type': 'number'}, 'totalClipCount': {'type': 'number'}, 'zipDownloadUrl': {'type': ['string', 'null']}, 'projectFolderId': {'type': ['string', 'null']}, 'selectedQuality': {'type': ['string', 'null']}, 'lastErrorMessage': {'type': ['string', 'null']}, 'projectFolderUrl': {'type': ['string', 'null']}, 'estimatedClipCount': {'type': 'number'}, 'downloadUrlExpiresInSeconds': {'type': 'number'}}, 'additionalProperties': False}}, 'additionalProperties': False}
clip_share_get
Read Clip Review Link
Read whether the source video's clip share page is public and which clips are visible. Does not publish content.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'assetId'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
clip_share_publish
Publish a Clip Review Link
Make the selected source video's clip page public with reviewed title, description and explicit download permission. Requires confirmPublicSharing=true from the user. Returns the verified public URL; no social network post is made.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'assetId', 'title', 'description', 'allowDownloads', 'confirmPublicSharing'], 'properties': {'title': {'type': 'string', 'maxLength': 140, 'minLength': 1}, 'assetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'description': {'type': 'string', 'default': '', 'maxLength': 500}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'allowDownloads': {'type': 'boolean'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'confirmPublicSharing': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
clip_share_unpublish
Unpublish a Clip Review Link
Disable public access to the selected clip page. Changes an existing publication; preserves private projects and exports.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'assetId'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
clip_share_visibility_set
Set Shared Clip Visibility
Show or hide one identified clip on an existing public review page after explicit user confirmation. Preserves the other clips and private project data.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'assetId', 'clipId', 'visibility', 'confirmPublicSharing'], 'properties': {'clipId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'assetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'visibility': {'enum': ['visible', 'hidden'], 'type': 'string'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'confirmPublicSharing': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
clips_inspect
Inspect One Clip
Read one managed clip's selected source range, project, workflow state and delivery information.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['clipId'], 'properties': {'clipId': {'type': ['string', 'null'], 'default': None}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_list
List Clips
List bounded managed clips from the selected source or project with their current workflow state.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'limit': {'type': 'number', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'number', 'default': 0, 'minimum': 0}, 'status': {'type': 'string'}, 'assetId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_manage
Manage Clips
List or inspect clips, regenerate, repair visual QA, start export, promote an accepted delivery export, inspect caption words, or apply a verified caption look.
外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['operation'], 'properties': {'limit': {'type': 'number', 'default': 20, 'maximum': 50, 'minimum': 1}, 'clipId': {'type': 'string'}, 'format': {'enum': ['mp4', 'mov'], 'type': 'string', 'default': 'mp4'}, 'lookId': {'type': 'string'}, 'offset': {'type': 'number', 'default': 0, 'minimum': 0}, 'status': {'type': 'string'}, 'assetId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'exportId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'matchText': {'type': 'string'}, 'operation': {'enum': ['list', 'get', 'reselect', 'repair', 'export', 'promote_export', 'list_caption_words', 'set_caption_look'], 'type': 'string'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'endSeconds': {'type': 'number'}, 'layoutMode': {'enum': ['auto', 'people_first', 'screen_first', 'preserve_full_source', 'prefer_split', 'prefer_focus', 'prefer_tutorial', 'prefer_demo'], 'type': 'string'}, 'repairMode': {'enum': ['auto', 'prefer_split', 'prefer_focus', 'prefer_tutorial', 'prefer_demo', 'move_captions_off_faces'], 'type': 'string', 'default': 'auto'}, 'resolution': {'enum': ['720p', '1080p'], 'type': 'string', 'default': '1080p'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'startSeconds': {'type': 'number', 'minimum': 0}, 'suggestionId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'selectionMode': {'enum': ['auto_best', 'suggestion', 'time_range'], 'type': 'string'}, 'idempotencyKey': {'type': 'string'}, 'timelineItemId': {'type': 'string'}, 'captionsEnabled': {'type': 'boolean'}, 'confirmVisualQa': {'type': 'boolean', 'default': False}, 'contentTypeHint': {'enum': ['auto', 'podcast', 'tutorial', 'demo', 'generic'], 'type': 'string'}, 'captionWordLimit': {'type': 'number', 'default': 100, 'maximum': 500, 'minimum': 1}, 'coverFrameSeconds': {'type': 'number', 'minimum': 0}, 'clearWordOverrides': {'type': 'boolean', 'default': False}, 'maxDurationSeconds': {'type': 'number'}, 'minDurationSeconds': {'type': 'number'}, 'allowBlockingQaBypass': {'type': 'boolean', 'default': False}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_presets_list
List Clip Presets
List available clip batch presets and their clipping/caption defaults.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['presets'], 'properties': {'presets': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': False}
clips_recover
Recover Missing Clips
Recover a terminal batch's missing clip count through the persisted recovery workflow. Preserves accepted clips and returns the recovery batch ID. Can spend existing account credits; retry with the identical idempotency key.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'batchId', 'targetClipCount'], 'properties': {'batchId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'targetClipCount': {'anyOf': [{'type': 'integer', 'maximum': 30, 'minimum': 1}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_repair
Repair One Clip Layout
Request a layout repair for one managed clip, such as preserving a screen demo or moving captions away from faces. Changes that clip's project; preserves the other clips.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', 'required': ['clipId', 'idempotencyKey'], 'properties': {'clipId': {'type': ['string', 'null'], 'default': None}, 'repairMode': {'enum': ['auto', 'prefer_split', 'prefer_focus', 'prefer_tutorial', 'prefer_demo', 'move_captions_off_faces'], 'type': 'string', 'default': 'auto'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'idempotencyKey': {'type': ['string', 'null'], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_reselect
Revise Selected Moment
Replace the source moment for one managed clip using a verified suggestion or explicit time range. Can spend existing account credits. Preserves the other clips; read current state before retrying.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', 'required': ['clipId', 'selectionMode', 'idempotencyKey'], 'properties': {'clipId': {'type': ['string', 'null'], 'default': None}, 'lookId': {'type': 'string'}, 'endSeconds': {'type': 'number'}, 'layoutMode': {'enum': ['auto', 'people_first', 'screen_first', 'preserve_full_source', 'prefer_split', 'prefer_focus', 'prefer_tutorial', 'prefer_demo'], 'type': 'string'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'startSeconds': {'type': 'number', 'minimum': 0}, 'suggestionId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'selectionMode': {'enum': ['auto_best', 'suggestion', 'time_range'], 'type': ['string', 'null'], 'default': None}, 'idempotencyKey': {'type': ['string', 'null'], 'default': None}, 'captionsEnabled': {'type': 'boolean'}, 'contentTypeHint': {'enum': ['auto', 'podcast', 'tutorial', 'demo', 'generic'], 'type': 'string'}, 'maxDurationSeconds': {'type': 'number'}, 'minDurationSeconds': {'type': 'number'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
clips_status_get
Refresh Clip Progress
Read one existing batch's progress, ready clips and renewed signed links without opening or remounting a review widget. Safe for bounded polling and widget refresh; does not recreate or repair clips.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['batchId'], 'properties': {'batchId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['batch'], 'properties': {'batch': {'type': 'object', 'required': ['id', 'status', 'assetId', 'projectFolderId', 'estimatedClipCount', 'totalClipCount', 'renderedCount', 'failedCount', 'reviewCount', 'clipPreset', 'selectedQuality', 'lastErrorMessage', 'sourceUrl', 'studioUrl', 'projectFolderUrl', 'zipDownloadUrl', 'downloadUrlExpiresInSeconds', 'polling', 'clips'], 'properties': {'id': {'type': 'string'}, 'clips': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'suggestionId', 'projectId', 'exportId', 'title', 'status', 'downloadUrl', 'thumbnailUrl', 'errorMessage'], 'properties': {'id': {'type': 'string'}, 'title': {'type': 'string'}, 'status': {'type': 'string'}, 'exportId': {'type': ['string', 'null']}, 'projectId': {'type': ['string', 'null']}, 'downloadUrl': {'type': ['string', 'null']}, 'errorMessage': {'type': ['string', 'null']}, 'suggestionId': {'type': ['string', 'null']}, 'thumbnailUrl': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'status': {'type': 'string'}, 'assetId': {'type': 'string'}, 'polling': {'type': 'object', 'required': ['state', 'stage', 'isTerminal', 'shouldPoll', 'suggestedTool', 'nextPollAfterSeconds', 'maxPollSeconds', 'maxPollAttempts'], 'properties': {'stage': {'type': 'string'}, 'state': {'type': 'string'}, 'isTerminal': {'type': 'boolean'}, 'shouldPoll': {'type': 'boolean'}, 'suggestedTool': {'enum': ['clips_get', 'clips_status_get'], 'type': 'string'}, 'maxPollSeconds': {'type': 'number'}, 'maxPollAttempts': {'type': 'number'}, 'nextPollAfterSeconds': {'type': ['number', 'null']}}, 'additionalProperties': False}, 'sourceUrl': {'type': 'string'}, 'studioUrl': {'type': 'string'}, 'clipPreset': {'anyOf': [{'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'failedCount': {'type': 'number'}, 'reviewCount': {'type': 'number'}, 'renderedCount': {'type': 'number'}, 'totalClipCount': {'type': 'number'}, 'zipDownloadUrl': {'type': ['string', 'null']}, 'projectFolderId': {'type': ['string', 'null']}, 'selectedQuality': {'type': ['string', 'null']}, 'lastErrorMessage': {'type': ['string', 'null']}, 'projectFolderUrl': {'type': ['string', 'null']}, 'estimatedClipCount': {'type': 'number'}, 'downloadUrlExpiresInSeconds': {'type': 'number'}}, 'additionalProperties': False}}, 'additionalProperties': False}
content_performance_list
Read Published Content Performance
Read bounded existing provider-reported engagement in the selected workspace, sorted by views. Returns source title, caption, published date and views/likes/comments/shares/saves. Does not import new data, start monitoring or infer attributable leads, sales or revenue.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'platform', 'range', 'limit', 'offset', 'search'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'range': {'enum': ['7d', '30d', '90d', 'all'], 'type': 'string', 'default': '30d'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}, 'search': {'type': 'string', 'default': '', 'maxLength': 200}, 'platform': {'enum': ['all', 'youtube', 'instagram', 'facebook', 'tiktok'], 'type': 'string', 'default': 'all'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
delete_timeline_items
Delete Timeline Items
Preview or delete up to 100 timeline items and optionally remove linked captions.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'timelineItemIds'], 'properties': {'dryRun': {'type': 'boolean', 'default': True}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'confirmDelete': {'type': 'boolean', 'default': False}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8}, 'timelineItemIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}, 'maxItems': 100, 'minItems': 1}, 'expectedRevision': {'type': 'integer', 'minimum': 0, 'description': 'Expected sequence revision, or null.'}, 'removeAssociatedCaptions': {'type': 'boolean', 'default': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['dryRun', 'plan'], 'properties': {'plan': {'type': 'object'}, 'dryRun': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}, {'type': 'object', 'required': ['dryRun', 'mutation'], 'properties': {'dryRun': {'type': 'boolean', 'const': False}, 'mutation': {'type': 'object', 'required': ['operationId', 'projectId', 'baseRevision', 'revision', 'replayed', 'txid', 'affectedTimelineItemIds', 'createdTimelineItemIds', 'deletedTimelineItemIds', 'warnings', 'result', 'mutationReceipt'], 'properties': {'txid': {'type': 'number'}, 'result': {'type': 'object'}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'integer'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'operationId': {'type': 'string'}, 'baseRevision': {'type': 'integer'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'createdTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'deletedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'affectedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'additionalProperties': False}]}
editor_asset_replace
editor asset replace
Replace one shot's media asset while preserving the other timeline items. Revision checked; dryRun previews by default. Requires a current editor snapshot and an asset in the same workspace.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['itemId', 'assetId', 'workspaceId', 'idempotencyKey', 'projectId', 'expectedRevision', 'dryRun'], 'properties': {'dryRun': {'type': 'boolean', 'default': True}, 'itemId': {'type': 'string'}, 'assetId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_assets_insert
editor assets insert
Insert a workspace image, generated shot or audio asset at an explicit project time. Revision checked; dryRun previews by default.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['assetId', 'startSeconds', 'durationSeconds', 'layerIndex', 'workspaceId', 'idempotencyKey', 'projectId', 'expectedRevision', 'dryRun'], 'properties': {'dryRun': {'type': 'boolean', 'default': True}, 'assetId': {'type': 'string', 'format': 'uuid', 'minLength': 1, 'description': 'UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'layerIndex': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, {'type': 'null'}]}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'startSeconds': {'type': 'number', 'minimum': 0}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'durationSeconds': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0}, {'type': 'null'}]}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_audio_set
editor audio set
Adjust one item's volume and audio fades. Revision checked; dryRun previews by default. Preserves the rest of the project.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['itemId', 'volume', 'fadeInSeconds', 'fadeOutSeconds', 'workspaceId', 'idempotencyKey', 'projectId', 'expectedRevision', 'dryRun'], 'properties': {'dryRun': {'type': 'boolean', 'default': True}, 'itemId': {'type': 'string'}, 'volume': {'type': 'number', 'maximum': 2, 'minimum': 0}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'fadeInSeconds': {'type': 'number', 'minimum': 0}, 'fadeOutSeconds': {'type': 'number', 'minimum': 0}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_crop_set
editor crop set
Adjust the crop of one existing source view after a layout has been applied. Revision checked; dryRun previews by default. Preserves the other shots.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['itemId', 'crop', 'workspaceId', 'idempotencyKey', 'projectId', 'expectedRevision', 'dryRun'], 'properties': {'crop': {'type': 'object', 'required': ['x', 'y', 'width', 'height'], 'properties': {'x': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'y': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'width': {'type': 'number', 'maximum': 1, 'minimum': 0.0001}, 'height': {'type': 'number', 'maximum': 1, 'minimum': 0.0001}}, 'additionalProperties': False}, 'dryRun': {'type': 'boolean', 'default': True}, 'itemId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_edit_undo
Undo Saved Edit
Restore one saved editor action at the expected current revision. Requires the action ID from edit history and an idempotency key. Existing project data is changed.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'actionId', 'expectedRevision', 'workspaceId', 'idempotencyKey'], 'properties': {'actionId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_history_list
List Edit History
Read up to 50 saved edit actions, their labels and undo state. Does not restore or change the project.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'projectId', 'limit'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_items_move
editor items move
Move selected timeline items to explicit times and layers. Revision checked; dryRun previews by default.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['items', 'workspaceId', 'idempotencyKey', 'projectId', 'expectedRevision', 'dryRun'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'startSeconds', 'layerIndex'], 'properties': {'id': {'type': 'string', 'minLength': 1}, 'layerIndex': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'startSeconds': {'type': 'number', 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 500, 'minItems': 1}, 'dryRun': {'type': 'boolean', 'default': True}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_items_remove
editor items remove
Remove selected timeline items and, if requested, their linked captions. Revision checked; dryRun previews by default. The saved action can be undone.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['itemIds', 'removeAssociatedCaptions', 'workspaceId', 'idempotencyKey', 'projectId', 'expectedRevision', 'dryRun'], 'properties': {'dryRun': {'type': 'boolean', 'default': True}, 'itemIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'maxItems': 500, 'minItems': 1}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'removeAssociatedCaptions': {'type': 'boolean'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_snapshot_get
Read Editor Snapshot
Read the current revision, stable timeline IDs, captions, style and bounded media context before a precise revision. Signed media links are refreshed by reading again.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'projectId', 'offset', 'limit', 'expectedRevision'], 'properties': {'limit': {'type': 'integer', 'default': 100, 'maximum': 200, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'expectedRevision': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
editor_text_set
editor text set
Create or revise one title or text overlay with explicit timing. Revision checked; dryRun previews by default. This edits project text, not spoken audio or captions.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['itemId', 'text', 'textKind', 'spec', 'startSeconds', 'durationSeconds', 'workspaceId', 'idempotencyKey', 'projectId', 'expectedRevision', 'dryRun'], 'properties': {'spec': {'anyOf': [{'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, {'type': 'null'}]}, 'text': {'type': 'string', 'minLength': 1}, 'dryRun': {'type': 'boolean', 'default': True}, 'itemId': {'anyOf': [{'type': 'string', 'minLength': 1}, {'type': 'null'}]}, 'textKind': {'enum': ['overlay', 'title_card'], 'type': 'string'}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'startSeconds': {'type': 'number', 'minimum': 0}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'durationSeconds': {'type': 'number', 'minimum': 0, 'exclusiveMinimum': 0}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
exports_caption_track_get
Read Export Caption Track
Read a WebVTT caption track from the completed export's immutable canonical speech snapshot, preserving the actual export trims. Returns unavailable for older exports or unverified speech; never fabricates captions from titles or current edited timelines.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'exportId'], 'properties': {'exportId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
exports_list
List Exports
List exports with render status and progress. Completed exports include a signed download URL. Pass exportId to return one export.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 20, 'maximum': 50, 'minimum': 1, 'description': 'Maximum exports to return when exportId is absent (1-50).'}, 'offset': {'type': 'number', 'default': 0, 'minimum': 0, 'description': 'Export offset when exportId is absent.'}, 'exportId': {'type': 'string', 'format': 'uuid', 'description': 'Return only this export, including its signed download URL when the render is complete. UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Filter exports by project ID. UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['exports', 'bounds'], 'properties': {'bounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'exports': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': False}
exports_start
Start Export
Render a BlitzReels video project and return export and job IDs for status checks.
入力スキーマ
{'type': 'object', 'required': ['projectId'], 'properties': {'format': {'enum': ['mp4', 'mov', 'fcpxml'], 'type': 'string', 'default': 'mp4', 'description': 'Export container format'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'BlitzReels project ID. UUID string.'}, 'resolution': {'enum': ['720p', '1080p', '4k'], 'type': 'string', 'default': '1080p', 'description': 'Export resolution'}, 'idempotencyKey': {'type': 'string', 'description': 'Retry key. Reuse only with identical inputs.'}, 'coverFrameSeconds': {'type': 'number', 'minimum': 0, 'description': 'Optional cover thumbnail timestamp'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['export'], 'properties': {'export': {'type': 'object', 'required': ['mutationReceipt'], 'properties': {'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}}}, 'additionalProperties': False}
generation_faceless_create
Generate Faceless Video
Turn a script into a full faceless video project: scene plan, generated visuals, optional voiceover, captions, music, and sound. Spends AI credits and returns a job to poll with generation_jobs_get.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['script'], 'properties': {'script': {'type': 'string', 'maxLength': 30000, 'minLength': 1, 'description': 'The narration or story to turn into a video.'}, 'voiceId': {'type': 'string', 'maxLength': 200, 'description': 'Optional voice override from the BlitzReels voice catalog. The Story Kit narrator voice is used when omitted.'}, 'seriesId': {'type': 'string', 'description': 'Optional Series UUID. Inherits its Story Kit and branding defaults for this new video.'}, 'storyKitId': {'type': 'string', 'description': 'Reusable Story Kit UUID for characters, references, locations, style, and narrator voice.'}, 'videoModel': {'enum': ['seedance-2.5-edit', 'kling-o3-standard-edit', 'kling-o3-pro-edit', 'kling-v3-standard-motion-control', 'kling-v3-pro-motion-control', 'wan-2.2-animate-replace', 'kling-2.1', 'kling-2.6-pro', 'kling-o1', 'kling-3.0', 'kling-o3-standard', 'kling-o3-pro', 'kling-o3-4k', 'kling-v3-pro', 'minimax-01', 'minimax-hailuo-02', 'minimax-hailuo-2.3-pro', 'minimax-h3-max', 'luma-ray-2', 'luma-ray-3.2', 'veo3', 'veo3.1', 'veo3.1-fast', 'gemini-omni-flash-ref2v', 'gemini-omni-flash-edit', 'gemini-omni-flash', 'wan-2.7', 'wan-2.7-ref2v', 'wan-3.0', 'happy-horse', 'happy-horse-ref2v', 'pixverse-v6', 'grok-imagine', 'seedance-2.0-pro', 'seedance-2.5', 'seedance-2.0-pro-fast', 'seedance-2.0-ref2v', 'seedance-2.0-ref2v-fast', 'seedance-1.5-pro', 'seedance-1.0-pro', 'seedance-1.0-pro-fast', 'seedance-1.0-lite', 'seedance-1.0-lite-ref2v', 'ltx-2-19b', 'ltx-2-19b-distilled', 'ltx-2.3', 'ltx-2.3-fast'], 'type': 'string', 'default': 'seedance-2.0-ref2v', 'description': 'Image-to-video model used to animate scenes.'}, 'projectName': {'type': 'string', 'default': 'Faceless Video', 'maxLength': 200, 'minLength': 1, 'description': 'Name for the created BlitzReels project.'}, 'visualStyle': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'Optional art direction override. A Story Kit style is used when omitted.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'imageModelId': {'type': 'string', 'default': 'fal-ai/nano-banana-pro', 'maxLength': 200, 'minLength': 3, 'description': 'Model used to generate scene images.'}, 'captionStyleId': {'type': 'string', 'maxLength': 200, 'description': 'Optional caption theme ID from captions_themes_list.'}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'plannerModelId': {'type': 'string', 'default': 'google/gemini-3.8-flash', 'maxLength': 200, 'minLength': 3, 'description': 'Model used to plan the video scenes.'}, 'includeCaptions': {'type': 'boolean', 'default': True, 'description': 'Burn captions into the timeline.'}, 'generateVoiceover': {'type': 'boolean', 'default': True, 'description': 'Narrate the script with a generated voice.'}, 'generateSoundEffects': {'type': 'boolean', 'default': False, 'description': 'Add generated sound effects.'}, 'targetDurationSeconds': {'type': 'number', 'default': 45, 'maximum': 120, 'minimum': 10, 'description': 'Target runtime between 10 and 120 seconds.'}, 'styleReferenceAssetIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}, 'default': [], 'maxItems': 10, 'description': 'Optional stills that lock rendering medium, palette, lighting and texture. Not used as scene frames.'}, 'generateBackgroundMusic': {'type': 'boolean', 'default': False, 'description': 'Add a generated background track.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['generation'], 'properties': {'generation': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'mutationReceipt'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'job_id': {'type': 'string'}, 'status': {'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'project_id': {'type': ['string', 'null']}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
generation_image_create
Generate Image
Queue an AI image generation into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['prompt'], 'properties': {'model': {'enum': ['fal-ai/gpt-image-1', 'fal-ai/gpt-image-1.5', 'fal-ai/gpt-image-2', 'fal-ai/gpt-image-2.5-flare', 'fal-ai/gpt-image-2.5-sunburst', 'xai/grok-imagine-image-2.0', 'fal-ai/bytedance/seedream/v5/lite/text-to-image', 'bytedance/seedream/v5/pro/text-to-image', 'fal-ai/krea-2/turbo', 'fal-ai/krea/v2/medium/turbo/text-to-image', 'fal-ai/krea/v2/medium/text-to-image', 'fal-ai/nano-banana-2', 'google/nano-banana-2-lite', 'fal-ai/nano-banana-pro'], 'type': 'string', 'default': 'fal-ai/nano-banana-2', 'description': 'Image model. Call generation_options_list for costs.'}, 'prompt': {'type': 'string', 'maxLength': 5000, 'minLength': 8, 'description': 'What the image should show (8-5000 characters).'}, 'folderId': {'type': 'string', 'format': 'uuid', 'description': 'Optional media library folder ID.'}, 'resolution': {'anyOf': [{'enum': ['0.5k', '1k', '2k', '4k'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Native image resolution. Call generation_options_list for model support and resolution pricing. Unsupported settings are rejected.'}, 'aspectRatio': {'enum': ['1:1', '16:9', '9:16', '4:3', '3:4', '3:2', '2:3', '5:4', '4:5', '21:9'], 'type': 'string', 'default': '1:1', 'description': 'Output aspect ratio.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'enhancePrompt': {'type': 'boolean', 'default': False, 'description': 'Enhance using BlitzReels model grammar and actual input context.'}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'referenceAssetIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}, 'default': [], 'maxItems': 14, 'description': 'Ordered image references. Model-specific limits are listed in generation_options_list; unsupported references fail.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['generation'], 'properties': {'generation': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'mutationReceipt'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'job_id': {'type': 'string'}, 'status': {'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'project_id': {'type': ['string', 'null']}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
generation_jobs_cancel
Cancel Generation Job
Request cancellation of the identified queued or running generation. Work already performed can consume credits; cancellation does not establish a refund.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['jobId'], 'properties': {'jobId': {'type': 'string', 'format': 'uuid', 'description': 'Job ID returned by any generation_*_create tool.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['job'], 'properties': {'job': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'progress'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'error': {'type': ['string', 'null']}, 'job_id': {'type': 'string'}, 'status': {'enum': ['queued', 'processing', 'complete', 'failed', 'canceled'], 'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'progress': {'type': 'number'}, 'created_at': {'type': 'string'}, 'project_id': {'type': ['string', 'null']}, 'completed_at': {'type': ['string', 'null']}, 'download_url': {'type': ['string', 'null']}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
generation_jobs_get
Get Generation Job
Check a queued generation. Completed jobs carry the media asset ID and a download URL.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['jobId'], 'properties': {'jobId': {'type': 'string', 'format': 'uuid', 'description': 'Job ID returned by any generation_*_create tool.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['job'], 'properties': {'job': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'progress'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'error': {'type': ['string', 'null']}, 'job_id': {'type': 'string'}, 'status': {'enum': ['queued', 'processing', 'complete', 'failed', 'canceled'], 'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'progress': {'type': 'number'}, 'created_at': {'type': 'string'}, 'project_id': {'type': ['string', 'null']}, 'completed_at': {'type': ['string', 'null']}, 'download_url': {'type': ['string', 'null']}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
generation_music_create
Generate Music
Queue a background music track into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'properties': {'mood': {'enum': ['curiosity', 'intrigue', 'urgency', 'tension', 'concern', 'surprise', 'hope', 'satisfaction', 'inspiration', 'revelation', 'neutral'], 'type': 'string', 'default': 'neutral', 'description': 'Track mood.'}, 'prompt': {'type': 'string', 'default': '', 'maxLength': 500, 'description': 'Optional description of the track.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'durationSeconds': {'type': 'number', 'default': 30, 'maximum': 120, 'minimum': 10, 'description': 'Track length between 10 and 120 seconds.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['generation'], 'properties': {'generation': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'mutationReceipt'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'job_id': {'type': 'string'}, 'status': {'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'project_id': {'type': ['string', 'null']}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
generation_options_list
List Generation Options
List the models, defaults, limits, and credit costs available for one generation kind before queueing it. Video duration is an enum per model (durations_seconds), not a min-max range.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['kind'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string', 'description': 'Generation kind to describe.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['options'], 'properties': {'options': {'type': 'object'}}, 'additionalProperties': False}
generation_plan_brief
Get Generation Plan Brief
Read a generation brief from rawPrompt. Source-video edits return execution for generation_video_create with required assets and transformation controls. New scenes return an authoring grammar and planJsonSchema for generation_plan_validate. This read does not generate media or spend credits.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'genre': {'type': 'string', 'description': "Genre pack id (e.g. pixar-culture-skit). The brief lists available ids in availableGenres; the pack's beats and visual contract override the generic grammar."}, 'rawPrompt': {'type': 'string', 'maxLength': 5000, 'description': 'Original request. Clone or character-replacement requests select a video transformation brief instead of a new-story plan.'}, 'aspectRatio': {'enum': ['9:16', '16:9', '1:1'], 'type': 'string', 'default': '9:16'}, 'visualStyle': {'type': 'string', 'description': 'Visual style preset id; its locked style contract is included in the brief.'}, 'videoModelId': {'type': 'string', 'description': 'Target video model id (see generation_options_list, kind: video). Defaults to the strongest single-take model.'}, 'targetDurationSeconds': {'type': 'number', 'default': 15, 'maximum': 300, 'minimum': 2, 'description': 'Desired final video duration in seconds.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['brief'], 'properties': {'brief': {'type': 'object', 'required': ['instructions', 'videoModelId', 'modelLabel', 'supportsNativeAudio', 'maxSingleTakeSeconds', 'allowedModes', 'targetDurationSeconds', 'aspectRatio', 'styleContract', 'grammar', 'planJsonSchema'], 'properties': {'grammar': {'type': 'string'}, 'execution': {'type': ['object', 'null'], 'description': 'Source-video operation, model and required assets; null for new-story plans.'}, 'genrePack': {'type': ['string', 'null']}, 'modelLabel': {'type': 'string'}, 'aspectRatio': {'type': 'string'}, 'allowedModes': {'type': 'array', 'items': {'type': 'string'}}, 'instructions': {'type': 'string'}, 'videoModelId': {'type': 'string'}, 'styleContract': {'type': ['string', 'null']}, 'planJsonSchema': {'type': 'object'}, 'availableGenres': {'type': 'array', 'items': {'type': 'string'}}, 'supportsNativeAudio': {'type': 'boolean'}, 'maxSingleTakeSeconds': {'type': 'number'}, 'targetDurationSeconds': {'type': 'number'}}}}, 'additionalProperties': False}
generation_plan_validate
Validate Generation Plan
Validate a self-authored generation plan against the schema and the target model's real capabilities before execution. Returns directive errors to fix and revalidate; only a valid plan is executable.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['plan'], 'properties': {'plan': {'type': 'object', 'description': "The generation plan object authored from generation_plan_brief's planJsonSchema.", 'additionalProperties': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['valid', 'errors'], 'properties': {'valid': {'type': 'boolean'}, 'errors': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Empty when valid. Each entry states exactly what to change.'}}, 'additionalProperties': False}
generation_sound_create
Generate Sound Effect
Queue a sound effect into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['prompt'], 'properties': {'loop': {'type': 'boolean', 'default': False, 'description': 'Produce a seamlessly loopable effect.'}, 'prompt': {'type': 'string', 'maxLength': 500, 'minLength': 3, 'description': 'The sound to create (3-500 characters).'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'durationSeconds': {'type': 'number', 'default': 2, 'maximum': 30, 'minimum': 0.5, 'description': 'Effect length between 0.5 and 30 seconds.'}, 'promptInfluence': {'type': 'number', 'default': 0.5, 'maximum': 1, 'minimum': 0, 'description': 'How literally to follow the prompt, between 0 and 1. Higher is more literal.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['generation'], 'properties': {'generation': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'mutationReceipt'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'job_id': {'type': 'string'}, 'status': {'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'project_id': {'type': ['string', 'null']}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
generation_video_create
Generate Video
Queue video generation, image animation, source-video editing or character replacement into the media library. Editing accepts referenceVideoAssetIds and transformation controls, including original-audio preservation. Spends AI credits and returns a job readable with generation_jobs_get.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['prompt'], 'properties': {'seed': {'type': 'integer', 'description': 'Optional seed for reproducible output.'}, 'model': {'enum': ['seedance-2.5-edit', 'kling-o3-standard-edit', 'kling-o3-pro-edit', 'kling-v3-standard-motion-control', 'kling-v3-pro-motion-control', 'wan-2.2-animate-replace', 'kling-2.1', 'kling-2.6-pro', 'kling-o1', 'kling-3.0', 'kling-o3-standard', 'kling-o3-pro', 'kling-o3-4k', 'kling-v3-pro', 'minimax-01', 'minimax-hailuo-02', 'minimax-hailuo-2.3-pro', 'minimax-h3-max', 'luma-ray-2', 'luma-ray-3.2', 'minimax-hailuo-2.3-pro-t2v', 'minimax-h3-max-t2v', 'luma-ray-3.2-t2v', 'veo3', 'veo3.1', 'veo3.1-fast', 'gemini-omni-flash-ref2v', 'gemini-omni-flash-edit', 'gemini-omni-flash', 'veo3-fast', 'gemini-omni-flash-t2v', 'wan-2.1', 'wan-2.7', 'wan-2.7-ref2v', 'wan-2.7-t2v', 'wan-3.0', 'wan-3.0-t2v', 'happy-horse', 'happy-horse-ref2v', 'happy-horse-t2v', 'pixverse-v6', 'pixverse-v6-t2v', 'krea-wan-14b-t2v', 'grok-imagine', 'grok-imagine-t2v', 'seedance-2.0-pro', 'seedance-2.5', 'seedance-2.0-pro-fast', 'seedance-2.0-ref2v', 'seedance-2.0-ref2v-fast', 'seedance-2.0-pro-t2v', 'seedance-2.5-t2v', 'seedance-2.0-pro-fast-t2v', 'seedance-1.5-pro', 'seedance-1.5-pro-t2v', 'seedance-1.0-pro', 'seedance-1.0-pro-t2v', 'seedance-1.0-pro-fast', 'seedance-1.0-pro-fast-t2v', 'seedance-1.0-lite', 'seedance-1.0-lite-t2v', 'seedance-1.0-lite-ref2v', 'kling-o3-standard-t2v', 'kling-o3-pro-t2v', 'kling-v3-standard-t2v', 'kling-v3-pro-t2v', 'ltx-2-19b', 'ltx-2-19b-distilled', 'ltx-2.3', 'ltx-2.3-fast', 'ltx-2-19b-t2v', 'ltx-2-19b-distilled-t2v', 'ltx-2.3-t2v', 'ltx-2.3-fast-t2v'], 'type': 'string', 'default': 'wan-2.1', 'description': 'Video model. generation_options_list publishes generation type, source limits, character controls, resolution and pricing for each model.'}, 'prompt': {'type': 'string', 'maxLength': 5000, 'minLength': 3, 'description': 'What should happen in the shot (3-5000 characters).'}, 'folderId': {'type': 'string', 'format': 'uuid', 'description': 'Optional media library folder ID.'}, 'provider': {'enum': ['auto', 'byteplus-modelark', 'fal'], 'type': 'string', 'default': 'auto', 'description': 'Explicit provider must support the model and input mode. auto uses a configured compatible provider.'}, 'resolution': {'anyOf': [{'enum': ['480p', '720p', '768p', '1080p', '4k'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Output resolution. Call generation_options_list for model-specific supported values and defaults. Unsupported settings are rejected.'}, 'aspectRatio': {'enum': ['9:16', '16:9', '1:1'], 'type': 'string', 'default': '9:16', 'description': 'Output aspect ratio.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'enhancePrompt': {'type': 'boolean', 'default': False, 'description': 'Enhance using BlitzReels model grammar and actual input context.'}, 'generateAudio': {'type': 'boolean', 'description': 'null uses model audio behavior. Explicit true/false must be supported by the selected model.'}, 'sourceAssetId': {'type': 'string', 'format': 'uuid', 'description': "First-frame still. Required only when that model's parameters.source_asset_id.required is true. Optional on reference-capable I2V including Seedance 2.5. Text-to-video rejects it. Cannot combine with reference arrays and end_frame_asset_id."}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'negativePrompt': {'type': 'string', 'maxLength': 2500, 'description': 'What to avoid in the shot.'}, 'transformation': {'anyOf': [{'type': 'object', 'required': ['characters', 'sourcePersonCount', 'keepOriginalAudio', 'characterOrientation'], 'properties': {'characters': {'type': 'array', 'items': {'type': 'object', 'required': ['sourceRole', 'frontalAssetId', 'referenceAssetIds'], 'properties': {'sourceRole': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'frontalAssetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'referenceAssetIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'default': [], 'maxItems': 3}}, 'additionalProperties': False}, 'default': [], 'maxItems': 4}, 'keepOriginalAudio': {'type': 'boolean', 'default': True}, 'sourcePersonCount': {'anyOf': [{'type': 'integer', 'maximum': 1000, 'minimum': 1}, {'type': 'null'}], 'default': None}, 'characterOrientation': {'enum': ['video', 'image'], 'type': 'string', 'default': 'video'}}, 'additionalProperties': False}, {'type': 'null'}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'default': None}, 'durationSeconds': {'type': 'integer', 'default': 5, 'maximum': 30, 'minimum': 2, 'description': "Video transformations inherit the processed source duration and aspect ratio; duration_seconds is not a trim request. Choose a value from the selected model's durations_seconds. duration_seconds_min and duration_seconds_max are the bounds of that list, not a continuous range."}, 'endFrameAssetId': {'type': 'string', 'format': 'uuid', 'description': 'Last-frame still. Interpolates from the source first frame to this image across the full duration. Requires a source first frame; cannot combine with reference arrays.'}, 'referenceAssetIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}, 'default': [], 'maxItems': 30, 'description': 'Ordered reference images: Seedance 2.5 up to 30; Seedance 2.0 ref2v up to 9; other reference models up to 4. Source counts toward the limit.'}, 'referenceAudioAssetIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}, 'default': [], 'maxItems': 10, 'description': 'Reference audio: Seedance 2.5 up to 10; Seedance 2.0 ref2v and fast up to 3. Other models reject them.'}, 'referenceVideoAssetIds': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}, 'default': [], 'maxItems': 10, 'description': 'Video transformations require one processed source video. Other reference modes have model-specific counts published by generation_options_list.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['generation'], 'properties': {'generation': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'mutationReceipt'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'job_id': {'type': 'string'}, 'status': {'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'project_id': {'type': ['string', 'null']}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
generation_voiceover_create
Generate Voiceover
Queue a text-to-speech voiceover into the BlitzReels media library. Spends AI credits and returns a job to poll with generation_jobs_get.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'maxLength': 8000, 'minLength': 3, 'description': 'Script to read aloud (3-8000 characters).'}, 'speed': {'type': 'number', 'default': 1, 'maximum': 1.6, 'minimum': 0.5, 'description': 'Speaking rate between 0.5 and 1.6.'}, 'voiceId': {'enum': ['pNInz6obpgDQGcFmaJgB', 'TX3LPaxmHKxFdv7VOQHJ', 'FGY2WhTYpPnrIDTdsKH5', 'IKne3meq5aSn9XLyUdCD', 'cgSgspJ2msm6clMCkdW9', 'bIHbv24MWmeRgasZH58o', 'nPczCjzI2devNBz1zQrb', 'JBFqnCBsd6RMkjVDRZzb', 'SOYHLrjzK2X1ezoPC6cr', 'N2lVS1w4EtoT3dr4eOWO', 'S9EGwlCtMF7VXtENq79v', 'VhxAIIZM8IRmnl5fyeyk', 'hpp4J3VqNfWAUOO0d1Us', 'EXAVITQu4vr4xnSDxMaL', 'pFZP5JQG7iQjIQuC4Bku', 'SAz9YHcvj6GT2YYXdXww', 'Xb7hH8MSUJpSbSDYk0k2', 'XrExE9yKIg1WjnnlVkGX', 'onwK4e9ZLuTAKqWW03F9', 'pqHfZKP75CvOlQylNhV4', 'CwhRBWXzGAHq8TQ4Fs17', 'cjVigY5qzO86Huf0OWal', 'iP95p4xoKVk53GoZ742B'], 'type': 'string', 'default': 'pNInz6obpgDQGcFmaJgB', 'maxLength': 200, 'minLength': 1, 'description': 'Voice ID. Call generation_options_list with kind voiceover for the catalog.'}, 'voiceStyle': {'enum': ['curiosity', 'intrigue', 'urgency', 'tension', 'concern', 'surprise', 'hope', 'satisfaction', 'inspiration', 'revelation', 'neutral'], 'type': 'string', 'default': 'neutral', 'description': 'Delivery emotion.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['generation'], 'properties': {'generation': {'type': 'object', 'required': ['job_id', 'kind', 'status', 'mutationReceipt'], 'properties': {'kind': {'enum': ['image', 'video', 'voiceover', 'music', 'sound', 'faceless'], 'type': 'string'}, 'job_id': {'type': 'string'}, 'status': {'type': 'string'}, 'media_id': {'type': ['string', 'null']}, 'project_id': {'type': ['string', 'null']}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'estimated_credits': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
media_assets_get
Get Media Asset
Get metadata and processing state for one media-library asset without returning transcript segments.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['assetId'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Media asset UUID. UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['asset'], 'properties': {'asset': {'type': 'object', 'required': ['id', 'name', 'description', 'folderId', 'assetType', 'mimeType', 'fileSizeBytes', 'durationSeconds', 'dimensionsWidth', 'dimensionsHeight', 'optimizedDimensionsWidth', 'optimizedDimensionsHeight', 'fps', 'hasAudioStream', 'processing', 'transcription', 'reframeAnalysis', 'createdAt', 'updatedAt'], 'properties': {'id': {'type': 'string'}, 'fps': {'type': ['number', 'null']}, 'name': {'type': 'string'}, 'folderId': {'type': ['string', 'null']}, 'mimeType': {'type': ['string', 'null']}, 'assetType': {'enum': ['video', 'audio', 'image', 'document'], 'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'processing': {'type': 'object'}, 'description': {'type': ['string', 'null']}, 'fileSizeBytes': {'type': 'number'}, 'transcription': {'type': 'object'}, 'hasAudioStream': {'type': ['boolean', 'null']}, 'dimensionsWidth': {'type': ['number', 'null']}, 'durationSeconds': {'type': ['number', 'null']}, 'reframeAnalysis': {'type': 'object'}, 'dimensionsHeight': {'type': ['number', 'null']}, 'optimizedDimensionsWidth': {'type': ['number', 'null']}, 'optimizedDimensionsHeight': {'type': ['number', 'null']}}}}, 'additionalProperties': False}
media_assets_preview
Preview Media Asset
Return one bounded JPEG as MCP image content for visual inspection. Images use the stored visual; videos use the existing thumbnail.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['assetId'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Media asset UUID. UUID string.'}, 'maxDimension': {'type': 'integer', 'default': 1024, 'maximum': 1536, 'minimum': 256, 'description': 'Maximum preview width or height in pixels (256-1536).'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['asset', 'preview'], 'properties': {'asset': {'type': 'object', 'required': ['id', 'name', 'assetType'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'assetType': {'type': 'string'}}}, 'preview': {'type': 'object', 'required': ['mimeType', 'width', 'height', 'byteLength'], 'properties': {'width': {'type': 'number'}, 'height': {'type': 'number'}, 'mimeType': {'type': 'string'}, 'byteLength': {'type': 'number'}}}}, 'additionalProperties': False}
media_assets_update
Update Media Asset
Rename one media asset, edit its description, move it to a folder, or change B-roll eligibility. Provide at least one of name, description, folderId, or allowUsingAsBroll.
冪等
入力スキーマ
{'type': 'object', 'required': ['assetId'], 'properties': {'name': {'type': 'string', 'maxLength': 255, 'minLength': 1, 'description': 'New media asset name.'}, 'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Media asset UUID. UUID string.'}, 'folderId': {'type': 'string', 'format': 'uuid', 'description': 'Target folder UUID, or null to move the asset to root.'}, 'description': {'type': 'string', 'maxLength': 5000, 'description': 'New description, or null to clear it.'}, 'idempotencyKey': {'type': 'string', 'description': 'Retry key. Reuse only with identical inputs.'}, 'allowUsingAsBroll': {'type': 'boolean', 'description': 'Whether the asset may be selected as B-roll.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['asset', 'updatedFields', 'txid', 'mutationReceipt'], 'properties': {'txid': {'type': ['number', 'null']}, 'asset': {'type': 'object'}, 'updatedFields': {'type': 'array', 'items': {'type': 'string'}}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
media_folders_create
Create Media Folder
Create one media-library folder in a workspace and return a retry-safe mutation receipt.
冪等
入力スキーマ
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 255, 'minLength': 1, 'description': 'Folder name.'}, 'iconType': {'enum': ['folder', 'code', 'video', 'audio', 'image', 'document', 'star', 'spark'], 'type': 'string', 'default': 'folder', 'description': 'Folder icon type.'}, 'description': {'type': 'string', 'maxLength': 1000, 'description': 'Optional folder description.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'Workspace UUID, or null for the default workspace. UUID string.'}, 'idempotencyKey': {'type': 'string', 'description': 'Retry key. Reuse only with identical inputs.'}, 'parentFolderId': {'type': 'string', 'format': 'uuid', 'description': 'Parent folder UUID, or null for the root.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['folder', 'mutationReceipt'], 'properties': {'folder': {'type': 'object'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
media_folders_list
List Media Folders
List one bounded level of media-library folders and direct asset counts.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1, 'description': 'Maximum folders to return (1-50).'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0, 'description': 'Folder offset.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': 'Workspace UUID, or null for the default workspace. UUID string.'}, 'parentFolderId': {'type': 'string', 'format': 'uuid', 'description': 'Parent folder UUID, or null for root folders.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['folders', 'bounds'], 'properties': {'bounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'folders': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': False}
media_import_inspect
Inspect Import URL
Inspect a user-provided public social-video or Google Drive URL and return available import metadata without creating media.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'Public video URL. Supports social video links and Google Drive file links.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['preview'], 'properties': {'preview': {'type': 'object'}}, 'additionalProperties': False}
media_import_scan_page
Scan Page For Video
Scan a user-controlled public page and return an importable video URL found on it without creating media.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'Video page URL or direct media URL to inspect for an importable video.'}, 'confirmAuthorizedToScan': {'type': 'boolean', 'default': False, 'description': 'Set true only after the user confirms they control the page or are authorized to scan it.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['resolved'], 'properties': {'resolved': {'type': 'object'}}, 'additionalProperties': False}
media_import_url
Import Media From URL
Import a video, audio, or image from a user-provided direct URL into the private BlitzReels media library.
入力スキーマ
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'URL of the media file to download and upload'}, 'name': {'type': 'string', 'description': 'Optional name for the file'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Optional project ID to associate the upload with. UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string."}, 'contentHashSha256': {'type': 'string', 'pattern': '^[a-fA-F0-9]{64}$', 'description': 'Optional SHA-256 hex hash of file bytes for dedupe optimization. 64-character hex string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['media'], 'properties': {'media': {'type': 'object'}}, 'additionalProperties': False}
media_list
List Media
List media files in user's library (videos, audio, images)
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1, 'description': 'Maximum number of assets to return (1-50)'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0, 'description': 'Media asset offset.'}, 'assetType': {'enum': ['video', 'audio', 'image', 'all'], 'type': 'string', 'default': 'all', 'description': 'Filter by asset type'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['assets', 'bounds'], 'properties': {'assets': {'type': 'array', 'items': {'type': 'object'}}, 'bounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}
media_transcript_get
Get Media Transcript
Get transcript summary metadata or a bounded window of transcription segments for a video asset.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['assetId'], 'properties': {'mode': {'enum': ['summary', 'text', 'full'], 'type': 'string', 'default': 'summary', 'description': 'Summary returns metadata only. Text returns joined text for a bounded segment window. Full returns the bounded segment objects without duplicating their text.'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 200, 'minimum': 1, 'description': 'Maximum transcript segments to return (1-200).'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0, 'description': 'Transcript segment offset.'}, 'assetId': {'type': 'string', 'format': 'uuid', 'description': 'The media asset ID to get transcript for. UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['transcript'], 'properties': {'error': {'type': 'string'}, 'transcript': {'type': ['object', 'null'], 'required': ['text', 'segments', 'segmentBounds'], 'properties': {'text': {'type': ['string', 'null']}, 'segments': {'type': 'array', 'items': {'type': 'object'}}, 'segmentBounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}}}}, 'additionalProperties': False}
media_upload_file
Upload File
Import a video, audio, or image file from ChatGPT into the BlitzReels media library. Use this for a file the user attached or picked, and for an image ChatGPT generated in this conversation that the user wants to keep, animate, or edit in BlitzReels.
入力スキーマ
{'type': 'object', 'required': ['file'], 'properties': {'file': {'type': 'object', 'required': ['download_url', 'file_id'], 'properties': {'file_id': {'type': 'string'}, 'file_name': {'type': 'string'}, 'mime_type': {'type': 'string'}, 'download_url': {'type': 'string', 'format': 'uri'}}, 'description': 'A file from ChatGPT: attached by the user, picked from their file library, or produced earlier in this conversation. ChatGPT provides this value.'}, 'name': {'type': 'string', 'description': 'Optional name to use in BlitzReels.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Optional BlitzReels project ID to associate with the uploaded file. UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['media'], 'properties': {'media': {'type': 'object'}}, 'additionalProperties': False}
media_upload_finish
Finish Media Upload
Complete the upload process after uploading to a presigned URL
入力スキーマ
{'type': 'object', 'required': ['storageKey', 'fileName', 'contentType', 'fileSizeBytes'], 'properties': {'fileName': {'type': 'string', 'description': 'Name of the uploaded file'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Optional project ID to associate the upload with. UUID string.'}, 'storageKey': {'type': 'string', 'description': 'Storage key for the uploaded file'}, 'contentType': {'type': 'string', 'description': 'MIME type of the file'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string."}, 'fileSizeBytes': {'type': 'number', 'minimum': 1, 'description': 'Size of the uploaded file in bytes'}, 'contentHashSha256': {'type': 'string', 'pattern': '^[a-fA-F0-9]{64}$', 'description': 'Optional SHA-256 hex hash of file bytes for dedupe optimization. 64-character hex string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['media'], 'properties': {'media': {'type': 'object'}}, 'additionalProperties': False}
media_upload_start
Start Media Upload
Get a presigned URL for direct file upload (for large files)
入力スキーマ
{'type': 'object', 'required': ['fileName', 'contentType'], 'properties': {'fileName': {'type': 'string', 'description': 'Name of the file to upload'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Optional project ID to associate the upload with. UUID string.'}, 'contentType': {'type': 'string', 'description': 'MIME type (e.g., video/mp4, audio/mp3, image/jpeg)'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID when projectId is not provided. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['uploadInfo'], 'properties': {'uploadInfo': {'type': 'object'}}, 'additionalProperties': False}
media_upscale
Upscale Video
Queue a ByteDance upscale of one stored video asset to 1080p or 4k. Call media_upscale_estimate first. Spends AI credits and returns a new pending media asset to poll with media_assets_get.
冪等
入力スキーマ
{'type': 'object', 'required': ['assetId', 'targetResolution'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Source video asset UUID. UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Optional project UUID to attach the credit spend. UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'idempotencyKey': {'type': 'string', 'description': 'Retry key. Reuse only with identical inputs.'}, 'targetResolution': {'enum': ['1080p', '4k'], 'type': 'string', 'description': 'Output long-edge target.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['assetId', 'sourceAssetId', 'targetResolution', 'creditsRequired', 'runId', 'status', 'mutationReceipt'], 'properties': {'runId': {'type': 'string'}, 'status': {'enum': ['queued'], 'type': 'string'}, 'assetId': {'type': 'string'}, 'sourceAssetId': {'type': 'string'}, 'creditsRequired': {'type': 'number'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'targetResolution': {'enum': ['1080p', '4k'], 'type': 'string'}}, 'additionalProperties': False}
media_upscale_estimate
Estimate Video Upscale
Estimate ByteDance upscale eligibility and credits for one stored video. Does not spend credits or queue a job. Call this before media_upscale.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['assetId', 'targetResolution'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Source video asset UUID. UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Optional project UUID for the estimate context. UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'targetResolution': {'enum': ['1080p', '4k'], 'type': 'string', 'description': 'Output long-edge target.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['eligible', 'ineligibleReason', 'targetResolution', 'targetFps', 'creditsRequired', 'durationSeconds', 'sourceLongEdge', 'targetLongEdge'], 'properties': {'eligible': {'type': 'boolean'}, 'targetFps': {'enum': ['30fps', '60fps'], 'type': 'string'}, 'sourceLongEdge': {'type': 'number'}, 'targetLongEdge': {'type': 'number'}, 'creditsRequired': {'type': 'number'}, 'durationSeconds': {'type': 'number'}, 'ineligibleReason': {'type': ['string', 'null']}, 'targetResolution': {'enum': ['1080p', '4k'], 'type': 'string'}}, 'additionalProperties': False}
mute_clip_audio
Mute Clip Audio
Set one timeline media item's volume to zero.
冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'timelineItemId', 'idempotencyKey'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}, 'expectedRevision': {'type': 'integer', 'minimum': 0, 'description': 'Expected sequence revision, or null.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['operationId', 'projectId', 'baseRevision', 'revision', 'replayed', 'txid', 'affectedTimelineItemIds', 'createdTimelineItemIds', 'deletedTimelineItemIds', 'warnings', 'result', 'mutationReceipt'], 'properties': {'txid': {'type': 'number'}, 'result': {'type': 'object'}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'integer'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'operationId': {'type': 'string'}, 'baseRevision': {'type': 'integer'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'createdTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'deletedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'affectedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
projects_create
Create Project
Create a new private BlitzReels video project.
入力スキーマ
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Project name (1-100 characters)'}, 'seriesId': {'type': 'string', 'description': 'Optional Series UUID for this new project.'}, 'frameRate': {'enum': ['24', '25', '30', '50', '60'], 'type': 'string', 'default': '30', 'description': 'Video frame rate'}, 'aspectRatio': {'enum': ['16:9', '9:16', '1:1'], 'type': 'string', 'default': '9:16', 'description': 'Video aspect ratio'}, 'description': {'type': 'string', 'description': 'Project description (optional, max 500 characters)'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}, 'idempotencyKey': {'type': 'string', 'description': 'Retry key. Reuse only with identical inputs.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['project'], 'properties': {'project': {'type': 'object', 'required': ['mutationReceipt'], 'properties': {'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}}}, 'additionalProperties': False}
projects_get
Get Project
Get details for one BlitzReels project, including timeline summary, clips, captions, and current recovery state with an app path and next read tool.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['projectId'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'description': 'The project ID to get details for. UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['project'], 'properties': {'error': {'type': 'string'}, 'project': {'type': ['object', 'null']}}, 'additionalProperties': False}
projects_inspect
Inspect Project
Read bounded project context for editing, including timeline items, media assets, transcripts, captions, and stable IDs.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['projectId'], 'properties': {'mode': {'enum': ['summary', 'assets', 'timeline', 'transcript', 'full'], 'type': 'string', 'default': 'timeline', 'description': 'Bounded project context view to return.'}, 'search': {'type': 'string', 'description': 'Optional media search when mode is assets or full.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Project UUID. UUID string.'}, 'assetLimit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Maximum media assets to return (1-50).'}, 'assetOffset': {'type': 'integer', 'minimum': 0, 'description': 'Media asset offset.'}, 'timelineLimit': {'type': 'integer', 'maximum': 1000, 'minimum': 1, 'description': 'Maximum timeline items to return (1-1000).'}, 'timelineOffset': {'type': 'integer', 'minimum': 0, 'description': 'Timeline item offset.'}, 'transcriptLimit': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Maximum transcript segments to return (1-500).'}, 'captionWordLimit': {'type': 'integer', 'maximum': 2000, 'minimum': 1, 'description': 'Maximum caption words to return (1-2000).'}, 'transcriptOffset': {'type': 'integer', 'minimum': 0, 'description': 'Transcript segment offset.'}, 'captionWordOffset': {'type': 'integer', 'minimum': 0, 'description': 'Caption word offset.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['mode', 'data', 'bounds'], 'properties': {'data': {'type': 'object'}, 'mode': {'enum': ['summary', 'assets', 'timeline', 'transcript', 'full'], 'type': 'string'}, 'bounds': {'type': 'object', 'required': ['collections'], 'properties': {'collections': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'offset', 'limit', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'name': {'type': 'string'}, 'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}}}}}}, 'additionalProperties': False}
projects_list
List Projects
List the user's BlitzReels projects with status, duration, and basic metadata.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'maximum': 50, 'minimum': 1, 'description': 'Maximum number of projects to return (1-50)'}, 'offset': {'type': 'number', 'default': 0, 'minimum': 0, 'description': 'Project offset.'}, 'search': {'type': 'string', 'description': 'Search projects by name'}, 'status': {'enum': ['active', 'archived', 'all'], 'type': 'string', 'default': 'active', 'description': 'Filter by project status'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace ID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['projects', 'bounds'], 'properties': {'bounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'projects': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'description', 'updatedAt', 'lastExportAt', 'durationSeconds', 'clipCount', 'thumbnailUrl', 'status', 'projectUrl'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'status': {'enum': ['ready', 'exporting', 'needs_captions', 'processing', 'failed'], 'type': 'string'}, 'clipCount': {'type': 'number'}, 'updatedAt': {'type': 'string'}, 'projectUrl': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'lastExportAt': {'type': ['string', 'null']}, 'thumbnailUrl': {'type': ['string', 'null']}, 'durationSeconds': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
recording_sets_clips_create
Clip a Synchronized Recording
Produce a batch from a ready synchronized camera and screen recording, with optional clip count, maximum duration and caption look. Preserves readable screen context through the existing layout pipeline. Can spend existing credits; follows clips_get with the returned batch_id.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'recordingSetId', 'clipCount', 'maxDurationSeconds', 'captionThemeId'], 'properties': {'clipCount': {'anyOf': [{'type': 'integer', 'maximum': 30, 'minimum': 1}, {'type': 'null'}], 'default': None}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'captionThemeId': {'anyOf': [{'type': 'string', 'maxLength': 120}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'recordingSetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'maxDurationSeconds': {'anyOf': [{'type': 'integer', 'const': 30}, {'type': 'integer', 'const': 60}, {'type': 'integer', 'const': 90}, {'type': 'integer', 'const': 180}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
recording_sets_create
Create Synchronized Recording
Create an empty camera and screen recording set in the explicit workspace. Requires existing recording-set access; does not import files or start processing.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'name'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
recording_sets_finalize
Synchronize Recording Tracks
Finalize the collected camera and screen tracks and queue analysis. Can spend existing transcription credits. Inspect returned alignment and warnings before clipping.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'recordingSetId'], 'properties': {'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'recordingSetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
recording_sets_get
Inspect Synchronized Recording
Read one camera and screen recording set, its primary speaker, content windows, alignment and warnings. Separate audio-only tracks are not supported.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'recordingSetId'], 'properties': {'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'recordingSetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
recording_sets_list
List Synchronized Recordings
Read bounded camera and screen recording sets in the selected workspace with status, duration and alignment warnings.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'status', 'limit', 'offset'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}, 'status': {'anyOf': [{'enum': ['collecting_assets', 'analyzing', 'finalizing', 'ready', 'failed'], 'type': 'string'}, {'type': 'null'}], 'default': None}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
recording_sets_track_attach
Attach Camera or Screen Recording
Attach one existing authorized video asset as a camera or screen track. Specify the main speaker when known; alignment happens during finalization.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'recordingSetId', 'asset_id', 'role', 'participant_label', 'participant_name', 'is_primary'], 'properties': {'role': {'enum': ['camera', 'screen'], 'type': 'string'}, 'asset_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'is_primary': {'type': 'boolean', 'default': False}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'recordingSetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'participant_name': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}], 'default': None}, 'participant_label': {'anyOf': [{'type': 'string', 'maxLength': 120}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
series_apply
Apply Series
Create or replace a Growth+ Series identity and defaults. defaultCreationMode selects podcast branding or faceless Story Kit defaults; membership stays mixed. Updates require expectedRevision. Existing content keeps its settings.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name', 'defaultCreationMode', 'description', 'coverAssetId', 'logoAssetId', 'storyKitId', 'captionThemeId', 'seriesId', 'expectedRevision', 'workspaceId', 'idempotencyKey'], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'seriesId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'storyKitId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string', 'maxLength': 2000}, {'type': 'null'}], 'default': None}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'coverAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'captionThemeId': {'anyOf': [{'type': 'string', 'maxLength': 120, 'minLength': 1}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, {'type': 'null'}], 'default': None}, 'defaultCreationMode': {'enum': ['podcast', 'faceless'], 'type': 'string', 'default': 'podcast'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['series', 'mutationReceipt'], 'properties': {'series': {'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name', 'defaultCreationMode', 'description', 'coverAssetId', 'logoAssetId', 'storyKitId', 'captionThemeId', 'id', 'revision', 'createdAt', 'updatedAt'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'createdAt': {'type': 'string'}, 'updatedAt': {'type': 'string'}, 'storyKitId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string', 'maxLength': 2000}, {'type': 'null'}], 'default': None}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'coverAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'captionThemeId': {'anyOf': [{'type': 'string', 'maxLength': 120, 'minLength': 1}, {'type': 'null'}], 'default': None}, 'defaultCreationMode': {'enum': ['podcast', 'faceless'], 'type': 'string', 'default': 'podcast'}}, 'additionalProperties': False}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
series_assign
Assign Series Content
Assign, move or detach one source or project using expectedSeriesId. Moving a source does not move existing clips or change branding.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['kind', 'contentId', 'seriesId', 'expectedSeriesId', 'workspaceId', 'idempotencyKey'], 'properties': {'kind': {'enum': ['project', 'source'], 'type': 'string'}, 'seriesId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'contentId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedSeriesId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id', 'kind', 'seriesId', 'previousSeriesId', 'changed', 'mutationReceipt'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'kind': {'enum': ['project', 'source'], 'type': 'string'}, 'changed': {'type': 'boolean'}, 'seriesId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'previousSeriesId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}}, 'additionalProperties': False}
series_content
List Series Content
List sources or projects in a Series. Null seriesId lists standalone content. sourceId filters projects by clip origin.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['limit', 'offset', 'seriesId', 'kind', 'sourceId', 'search', 'workspaceId'], 'properties': {'kind': {'enum': ['project', 'source'], 'type': 'string'}, 'limit': {'type': 'integer', 'default': 30, 'maximum': 100, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}, 'search': {'type': 'string', 'default': '', 'maxLength': 120}, 'seriesId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'sourceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['items', 'bounds'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'kind', 'name', 'seriesId', 'sourceId', 'thumbnailUrl', 'durationSeconds'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'kind': {'enum': ['project', 'source'], 'type': 'string'}, 'name': {'type': 'string'}, 'seriesId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'sourceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'thumbnailUrl': {'type': ['string', 'null']}, 'durationSeconds': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'bounds': {'type': 'object', 'required': ['limit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'hasMore': {'type': 'boolean'}, 'returned': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}
series_delete
Delete Series
Delete the Series container at an expected revision and detach its content. Sources, projects and exports are preserved.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['seriesId', 'expectedRevision', 'workspaceId', 'idempotencyKey'], 'properties': {'seriesId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id', 'detachedProjects', 'detachedSources', 'contentPreserved', 'mutationReceipt'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'detachedSources': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'contentPreserved': {'type': 'boolean', 'const': True}, 'detachedProjects': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}
series_get
Get Series
Read a Series identity, creative defaults and revision.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'seriesId'], 'properties': {'seriesId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['series'], 'properties': {'series': {'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name', 'defaultCreationMode', 'description', 'coverAssetId', 'logoAssetId', 'storyKitId', 'captionThemeId', 'id', 'revision', 'createdAt', 'updatedAt'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'createdAt': {'type': 'string'}, 'updatedAt': {'type': 'string'}, 'storyKitId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string', 'maxLength': 2000}, {'type': 'null'}], 'default': None}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'coverAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'captionThemeId': {'anyOf': [{'type': 'string', 'maxLength': 120, 'minLength': 1}, {'type': 'null'}], 'default': None}, 'defaultCreationMode': {'enum': ['podcast', 'faceless'], 'type': 'string', 'default': 'podcast'}}, 'additionalProperties': False}}, 'additionalProperties': False}
series_list
List Series
List optional Series with bounded counts and cover previews.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['limit', 'offset', 'workspaceId'], 'properties': {'limit': {'type': 'integer', 'default': 30, 'maximum': 100, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['items', 'bounds'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'defaultCreationMode', 'description', 'coverAssetId', 'logoAssetId', 'storyKitId', 'captionThemeId', 'id', 'revision', 'createdAt', 'updatedAt', 'coverUrl', 'projectCount', 'sourceCount'], 'properties': {'id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'coverUrl': {'type': ['string', 'null']}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'createdAt': {'type': 'string'}, 'updatedAt': {'type': 'string'}, 'storyKitId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'description': {'anyOf': [{'type': 'string', 'maxLength': 2000}, {'type': 'null'}], 'default': None}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'sourceCount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'coverAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'projectCount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'captionThemeId': {'anyOf': [{'type': 'string', 'maxLength': 120, 'minLength': 1}, {'type': 'null'}], 'default': None}, 'defaultCreationMode': {'enum': ['podcast', 'faceless'], 'type': 'string', 'default': 'podcast'}}, 'additionalProperties': False}}, 'bounds': {'type': 'object', 'required': ['limit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'offset': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'hasMore': {'type': 'boolean'}, 'returned': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}
story_kits_apply
Apply Story Kit
Create or update a Story Kit with optimistic concurrency and an idempotent mutation receipt.
冪等
入力スキーマ
{'type': 'object', 'required': ['name', 'visualStyle', 'idempotencyKey'], 'properties': {'name': {'type': 'string', 'description': 'Stable Story Kit name.'}, 'facts': {'type': 'array', 'items': {'type': 'string'}}, 'locations': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'canonicalDescription', 'referenceAssetIds', 'facts'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'facts': {'type': 'array', 'items': {'type': 'string'}}, 'referenceAssetIds': {'type': 'array', 'items': {'type': 'string'}}, 'canonicalDescription': {'type': 'string'}}, 'additionalProperties': False}}, 'storyKitId': {'type': 'string'}, 'description': {'type': 'string'}, 'visualStyle': {'type': 'string', 'description': 'Canonical visual-style contract.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace UUID. Defaults to the user's default workspace. UUID string."}, 'characterIds': {'type': 'array', 'items': {'type': 'string'}}, 'idempotencyKey': {'type': 'string'}, 'expectedRevision': {'type': 'number'}, 'narratorCharacterId': {'type': 'string'}, 'styleReferenceAssetIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['storyKit', 'mutationReceipt'], 'properties': {'storyKit': {'type': 'object'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
story_kits_get
Get Story Kit
Inspect one Story Kit and its revision before generating or updating a story.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['storyKitId'], 'properties': {'storyKitId': {'type': 'string'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace UUID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['storyKit'], 'properties': {'storyKit': {'type': 'object'}}, 'additionalProperties': False}
story_kits_list
List Story Kits
List bounded reusable Story Kits that bind characters, locations, style, facts, and narrator voice.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'number', 'default': 0, 'minimum': 0}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional workspace UUID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['storyKits', 'bounds'], 'properties': {'bounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'storyKits': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': False}
timeline_audio_add
Add Audio To Timeline
Place an audio asset onto a BlitzReels project timeline at a timestamp for voiceover, music, or sound.
入力スキーマ
{'type': 'object', 'required': ['projectId', 'assetId'], 'properties': {'loop': {'type': 'boolean', 'default': False, 'description': 'Loop audio to fill requested duration'}, 'volume': {'type': 'number', 'default': 1, 'description': 'Audio volume multiplier, 1 is normal'}, 'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Audio media asset ID. UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'BlitzReels project ID. UUID string.'}, 'startSeconds': {'type': 'number', 'default': 0, 'minimum': 0, 'description': 'Timeline start time in seconds'}, 'fadeInSeconds': {'type': 'number', 'default': 0, 'minimum': 0, 'description': 'Fade-in length in seconds'}, 'fadeOutSeconds': {'type': 'number', 'default': 0, 'minimum': 0, 'description': 'Fade-out length in seconds'}, 'durationSeconds': {'type': 'number', 'minimum': 0, 'description': 'Optional duration. Required if the audio asset duration is not known yet.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object'}}, 'additionalProperties': False}
timeline_edit_apply
Apply Timeline Edit
Trim or extend one timeline item. Split one timeline item at an exact sequence position.
冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'operation', 'expectedRevision', 'idempotencyKey'], 'properties': {'operation': {'oneOf': [{'type': 'object', 'required': ['operationId', 'timelineItemId', 'trimStartDeltaSeconds', 'trimEndDeltaSeconds', 'snapToFrame'], 'properties': {'operationId': {'type': 'string', 'const': 'timeline.item.trim'}, 'snapToFrame': {'type': 'boolean'}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}, 'trimEndDeltaSeconds': {'type': 'number'}, 'trimStartDeltaSeconds': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['operationId', 'timelineItemId', 'splitAtSeconds', 'snapToFrame'], 'properties': {'operationId': {'type': 'string', 'const': 'timeline.item.split'}, 'snapToFrame': {'type': 'boolean'}, 'splitAtSeconds': {'type': 'number', 'minimum': 0}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}]}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'type': ['integer', 'null'], 'minimum': 0, 'description': 'Expected sequence revision, or null.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['result', 'mutationReceipt'], 'properties': {'result': {'oneOf': [{'type': 'object', 'required': ['success', 'operation_id', 'project_id', 'mutation_receipt_id', 'idempotency_key', 'base_revision', 'revision', 'replayed', 'txid', 'affected_timeline_item_ids', 'created_timeline_item_ids', 'deleted_timeline_item_ids', 'warnings', 'result'], 'properties': {'txid': {'type': 'number', 'minimum': 0}, 'result': {'type': 'object', 'required': ['timeline_item_id', 'trim_start_units', 'trim_end_units', 'trim_start_seconds', 'trim_end_seconds', 'message'], 'properties': {'message': {'type': 'string'}, 'trim_end_units': {'type': 'string'}, 'timeline_item_id': {'type': 'string', 'format': 'uuid'}, 'trim_end_seconds': {'type': 'number'}, 'trim_start_units': {'type': 'string'}, 'trim_start_seconds': {'type': 'number'}}, 'additionalProperties': False}, 'success': {'type': 'boolean', 'const': True}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'number', 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'project_id': {'type': 'string', 'format': 'uuid'}, 'operation_id': {'type': 'string', 'const': 'timeline.item.trim'}, 'base_revision': {'type': 'number', 'minimum': 0}, 'idempotency_key': {'type': 'string'}, 'mutation_receipt_id': {'type': 'string'}, 'created_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, 'deleted_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, 'affected_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}}, 'additionalProperties': False}, {'type': 'object', 'required': ['success', 'operation_id', 'project_id', 'mutation_receipt_id', 'idempotency_key', 'base_revision', 'revision', 'replayed', 'txid', 'affected_timeline_item_ids', 'created_timeline_item_ids', 'deleted_timeline_item_ids', 'warnings', 'result'], 'properties': {'txid': {'type': 'number', 'minimum': 0}, 'result': {'type': 'object', 'required': ['left_timeline_item_id', 'right_timeline_item_id', 'split_at_units', 'split_at_seconds'], 'properties': {'split_at_units': {'type': 'string'}, 'split_at_seconds': {'type': 'number'}, 'left_timeline_item_id': {'type': 'string', 'format': 'uuid'}, 'right_timeline_item_id': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}, 'success': {'type': 'boolean', 'const': True}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'number', 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'project_id': {'type': 'string', 'format': 'uuid'}, 'operation_id': {'type': 'string', 'const': 'timeline.item.split'}, 'base_revision': {'type': 'number', 'minimum': 0}, 'idempotency_key': {'type': 'string'}, 'mutation_receipt_id': {'type': 'string'}, 'created_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, 'deleted_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, 'affected_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}}, 'additionalProperties': False}]}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error'], 'properties': {'error': {'type': 'object', 'required': ['code', 'message', 'retryable', 'details'], 'properties': {'code': {'enum': ['validation_error', 'not_found', 'permission_denied', 'revision_conflict', 'idempotency_conflict', 'operation_in_progress', 'operation_previous_failure', 'sequence_busy', 'mutation_failed'], 'type': 'string'}, 'details': {'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}]}}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}]}
timeline_edit_preview
Preview Timeline Edit
Preview without mutation. Trim or extend one timeline item. Split one timeline item at an exact sequence position.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'operation', 'expectedRevision'], 'properties': {'operation': {'oneOf': [{'type': 'object', 'required': ['operationId', 'timelineItemId', 'trimStartDeltaSeconds', 'trimEndDeltaSeconds', 'snapToFrame'], 'properties': {'operationId': {'type': 'string', 'const': 'timeline.item.trim'}, 'snapToFrame': {'type': 'boolean'}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}, 'trimEndDeltaSeconds': {'type': 'number'}, 'trimStartDeltaSeconds': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['operationId', 'timelineItemId', 'splitAtSeconds', 'snapToFrame'], 'properties': {'operationId': {'type': 'string', 'const': 'timeline.item.split'}, 'snapToFrame': {'type': 'boolean'}, 'splitAtSeconds': {'type': 'number', 'minimum': 0}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}]}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'expectedRevision': {'type': ['integer', 'null'], 'minimum': 0, 'description': 'Expected sequence revision, or null.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'oneOf': [{'type': 'object', 'required': ['plan'], 'properties': {'plan': {'type': 'object', 'required': ['operation_id', 'project_id', 'current_revision', 'expected_revision', 'destructive', 'affected_timeline_item_ids', 'would_create_timeline_item_ids', 'would_delete_timeline_item_ids', 'change_count', 'warnings'], 'properties': {'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'project_id': {'type': 'string', 'format': 'uuid'}, 'destructive': {'type': 'boolean'}, 'change_count': {'type': 'number', 'minimum': 0}, 'operation_id': {'enum': ['timeline.item.trim', 'timeline.item.split'], 'type': 'string'}, 'current_revision': {'type': 'number', 'minimum': 0}, 'expected_revision': {'type': ['number', 'null'], 'minimum': 0}, 'affected_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, 'would_create_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}, 'would_delete_timeline_item_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid'}}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error'], 'properties': {'error': {'type': 'object', 'required': ['code', 'message', 'retryable', 'details'], 'properties': {'code': {'enum': ['validation_error', 'not_found', 'permission_denied', 'revision_conflict', 'idempotency_conflict', 'operation_in_progress', 'operation_previous_failure', 'sequence_busy', 'mutation_failed'], 'type': 'string'}, 'details': {'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}]}}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}]}
timeline_media_add
Add Media To Timeline
Place an image or video asset onto a BlitzReels project timeline at a timestamp, including B-roll and static images.
入力スキーマ
{'type': 'object', 'required': ['projectId', 'assetId'], 'properties': {'assetId': {'type': 'string', 'format': 'uuid', 'description': 'Image or video media asset ID. UUID string.'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'BlitzReels project ID. UUID string.'}, 'layerIndex': {'type': 'number', 'minimum': 0, 'description': 'Exact timeline layer to use. Lower layer numbers render on top. Omit for intent-based placement.'}, 'startSeconds': {'type': 'number', 'default': 0, 'minimum': 0, 'description': 'Timeline start time in seconds'}, 'allowDuplicate': {'type': 'boolean', 'default': True, 'description': 'Allow inserting the same asset more than once'}, 'positionPreset': {'enum': ['center', 'fullscreen', 'pip-top-left', 'pip-top-right', 'pip-bottom-left', 'pip-bottom-right'], 'type': 'string', 'default': 'fullscreen', 'description': 'Visual placement preset'}, 'animationPreset': {'enum': ['none', 'fadeIn', 'fadeOut', 'zoomIn', 'zoomOut', 'slideLeft', 'slideRight', 'slideUp', 'slideDown', 'popIn', 'bounce', 'spin'], 'type': 'string', 'default': 'none', 'description': 'Optional visual animation preset'}, 'durationSeconds': {'type': 'number', 'minimum': 0, 'description': 'Duration in seconds. Required for still images when a specific length is needed.'}, 'placementIntent': {'enum': ['overlay', 'background', 'exact'], 'type': 'string', 'default': 'overlay', 'description': 'Layer intent used when layerIndex is omitted. Use overlay for visible B-roll/logo/sticker over video, background for behind video, exact when layerIndex is supplied.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object'}}, 'additionalProperties': False}
update_timeline_clip
Update Timeline Clip
Update one timeline item's start, duration, trim, layer, ignored state, or blurred background. Provide at least one field to update besides timelineItemId.
冪等
入力スキーマ
{'type': 'object', 'required': ['projectId', 'timelineItemId', 'idempotencyKey'], 'properties': {'ignored': {'type': 'boolean'}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'UUID string.'}, 'layerIndex': {'type': 'integer', 'minimum': 0}, 'startSeconds': {'type': 'number', 'minimum': 0}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8, 'description': 'Retry key. Reuse only with identical inputs.'}, 'timelineItemId': {'type': 'string', 'format': 'uuid'}, 'trimEndSeconds': {'type': 'number', 'minimum': 0}, 'durationSeconds': {'type': 'number', 'minimum': 0, 'exclusiveMinimum': 0}, 'expectedRevision': {'type': 'integer', 'minimum': 0, 'description': 'Expected sequence revision, or null.'}, 'trimStartSeconds': {'type': 'number', 'minimum': 0}, 'blurredBackground': {'type': 'boolean'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['operationId', 'projectId', 'baseRevision', 'revision', 'replayed', 'txid', 'affectedTimelineItemIds', 'createdTimelineItemIds', 'deletedTimelineItemIds', 'warnings', 'result', 'mutationReceipt'], 'properties': {'txid': {'type': 'number'}, 'result': {'type': 'object'}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'integer'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string'}, 'operationId': {'type': 'string'}, 'baseRevision': {'type': 'integer'}, 'mutationReceipt': {'type': 'object', 'required': ['id', 'key', 'operation', 'status', 'replayed'], 'properties': {'id': {'type': ['string', 'null']}, 'key': {'type': ['string', 'null']}, 'status': {'enum': ['completed'], 'type': 'string'}, 'replayed': {'type': 'boolean'}, 'operation': {'type': 'string'}}, 'additionalProperties': False}, 'createdTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'deletedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}, 'affectedTimelineItemIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
video_assets_approve
Approve Previews and Produce Video
After the user approves the generated previews and animation cost, confirmApproved=true starts scene animation, narration and editable timeline assembly. Can replace the project's generated timeline and spend existing credits. Follow the revision and then export the finished project.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'projectId', 'revisionId', 'confirmApproved'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'revisionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'confirmApproved': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
video_feedback_save
Save Video Quality Feedback
Save the user's 1-5 rating and optional quality category/comment against one completed playable video export. Replaces that user's previous feedback for this export; does not change accepted clips or defaults. Requires the feedback storage migration to be installed.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'exportId', 'rating', 'category', 'comment'], 'properties': {'rating': {'type': 'integer', 'maximum': 5, 'minimum': 1}, 'comment': {'type': 'string', 'maxLength': 2000}, 'category': {'anyOf': [{'enum': ['moments', 'captions', 'pacing', 'framing', 'editing', 'export', 'other'], 'type': 'string'}, {'type': 'null'}]}, 'exportId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
video_storyboard_approve
Approve Storyboard Previews
After showing the storyboard and its credit estimate, confirmApproved=true starts production of reference images and scene keyframes. Spends existing credits. This stage produces reviewable previews, not animated videos.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'projectId', 'revisionId', 'confirmApproved'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'revisionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'confirmApproved': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
video_storyboard_asset_regenerate
Regenerate Selected Storyboard Preview
Replace the identified preview after user approval of the new credit cost. A scene_keyframe changes one keyframe; a character_anchor refreshes its dependent keyframes; a style_anchor refreshes every keyframe. Preserves unaffected previews. Does not regenerate an already finished video shot.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'revisionId', 'asset_type', 'workspaceId', 'idempotencyKey', 'confirmRegeneration'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'asset_type': {'enum': ['style_anchor', 'character_anchor', 'scene_keyframe'], 'type': 'string', 'description': 'style_anchor regenerates the shared style reference and every keyframe; character_anchor requires character_id and refreshes dependent keyframes; scene_keyframe requires scene_index.'}, 'revisionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'scene_index': {'type': 'integer', 'maximum': 11, 'minimum': 0}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'character_id': {'type': 'string', 'minLength': 1}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'confirmRegeneration': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
video_storyboard_create
Plan an Approved Video Script
Create a vertical video storyboard for the user-approved script in an existing project. Spends planning credits; returns scene narration, factual review notes, references and the production credit estimate. Does not generate images or animate video. Existing account access applies.
外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'script', 'workspaceId', 'idempotencyKey', 'confirmScriptApproved'], 'properties': {'script': {'type': 'string', 'maxLength': 30000, 'minLength': 1}, 'voice_id': {'type': 'string', 'maxLength': 200}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'series_id': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}]}, 'video_model': {'type': 'string', 'maxLength': 200, 'minLength': 3}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'story_kit_id': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'visual_style': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'character_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'maxItems': 8}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'image_model_id': {'type': 'string', 'maxLength': 200, 'minLength': 3}, 'caption_style_id': {'type': 'string', 'maxLength': 200}, 'include_captions': {'type': 'boolean'}, 'planner_model_id': {'type': 'string', 'maxLength': 200, 'minLength': 3}, 'confirmScriptApproved': {'type': 'boolean', 'const': True}, 'generate_sound_effects': {'type': 'boolean'}, 'target_duration_seconds': {'type': 'number', 'maximum': 120, 'minimum': 10}, 'generate_background_music': {'type': 'boolean'}, 'style_reference_asset_ids': {'type': 'array', 'items': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'maxItems': 10}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
video_storyboard_get
Review Video Storyboard
Read one authorized storyboard revision, its scene and reference previews, estimate, approvals and bounded polling guidance. Refreshes signed previews. Complete means the editable timeline is assembled; use exports_start and exports_list for a downloadable MP4.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'projectId', 'revisionId'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'revisionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
video_storyboard_revise
Revise Selected Storyboard Scenes
Create a new immutable draft from a known revision with selected scene, character or model changes. Preserves other scene definitions; requires review and production approval again. Does not generate media or overwrite an approved revision.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'revisionId', 'workspaceId', 'idempotencyKey'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'revisionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'video_model': {'type': 'string', 'maxLength': 200, 'minLength': 3}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'scene_updates': {'type': 'array', 'items': {'type': 'object', 'required': ['scene_index'], 'properties': {'title': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'scene_index': {'type': 'integer', 'maximum': 11, 'minimum': 0}, 'image_prompt': {'type': 'string', 'maxLength': 5000, 'minLength': 1}, 'character_ids': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'maxItems': 2}, 'motion_prompt': {'type': 'string', 'maxLength': 5000, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 12}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'image_model_id': {'type': 'string', 'maxLength': 200, 'minLength': 3}, 'character_updates': {'type': 'array', 'items': {'type': 'object', 'required': ['character_id'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'character_id': {'type': 'string', 'minLength': 1}, 'anchor_prompt': {'type': 'string', 'maxLength': 3000, 'minLength': 1}, 'canonical_description': {'type': 'string', 'maxLength': 3000, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 8}, 'style_anchor_prompt': {'type': 'string', 'maxLength': 3000, 'minLength': 1, 'description': 'Self-contained prompt for the single reference frame that locks rendering medium, palette, lighting, and grain for every scene. No characters, no text, no interfaces.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'additionalProperties': True}}, 'additionalProperties': False}
visuals_apply
Apply visual presets
Create or update up to 20 visual blocks in one call after edit timing is settled. Presets: broll-headline, steps, quote, end-screen, key-number, before-after, screenshot-focus, chapter. IDs are scoped to the project; repeating an ID updates it. Asset IDs must belong to the workspace. Atomic, undoable; dryRun validates without writing. Returns IDs and revision. No generation pass.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'items', 'expectedRevision', 'dryRun', 'idempotencyKey'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'at', 'duration', 'preset', 'text'], 'properties': {'at': {'type': 'number', 'maximum': 86400, 'minimum': 0}, 'id': {'type': 'string', 'pattern': '^[a-zA-Z0-9_-]{1,80}$'}, 'cta': {'type': 'string', 'maxLength': 40, 'minLength': 1, 'description': 'Required for end-screen.'}, 'text': {'type': 'string', 'maxLength': 220, 'minLength': 1, 'description': 'Heading, or quote. Max 120 characters except quote: 220.'}, 'focus': {'type': 'object', 'required': ['x', 'y', 'width', 'height'], 'properties': {'x': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'y': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'width': {'type': 'number', 'maximum': 1, 'exclusiveMinimum': 0}, 'height': {'type': 'number', 'maximum': 1, 'exclusiveMinimum': 0}}, 'description': 'Required for screenshot-focus. Normalized rectangle inside the source image.', 'additionalProperties': False}, 'steps': {'type': 'array', 'items': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'maxItems': 5, 'minItems': 2, 'description': 'Required for steps.'}, 'value': {'type': 'number', 'maximum': 999999, 'minimum': -999999, 'description': 'Required for key-number.'}, 'number': {'type': 'string', 'maxLength': 4, 'minLength': 1, 'description': 'Required for chapter.'}, 'preset': {'enum': ['broll-headline', 'steps', 'quote', 'end-screen', 'key-number', 'before-after', 'screenshot-focus', 'chapter'], 'type': 'string'}, 'suffix': {'type': 'string', 'maxLength': 8, 'description': 'Required for key-number; empty string allowed.'}, 'assetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'Required for broll-headline and screenshot-focus.'}, 'duration': {'type': 'number', 'maximum': 30, 'minimum': 1}, 'attribution': {'type': 'string', 'maxLength': 60, 'minLength': 1, 'description': 'Required for quote.'}, 'logoAssetId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'description': 'Required for end-screen; null for no logo.'}, 'afterAssetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'Required for before-after.'}, 'beforeAssetId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'Required for before-after.'}}, 'additionalProperties': False}, 'maxItems': 20, 'minItems': 1, 'description': 'Supply only the fields for the selected preset.'}, 'dryRun': {'type': 'boolean'}, 'projectId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'idempotencyKey': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 200, 'minLength': 8}, 'expectedRevision': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, {'type': 'null'}]}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['success', 'dryRun', 'revision', 'mutationReceiptId', 'replayed', 'items', 'warnings'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'timelineItemId', 'contentItemId', 'compositionId', 'status'], 'properties': {'id': {'type': 'string'}, 'status': {'enum': ['created', 'updated'], 'type': 'string'}, 'compositionId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'contentItemId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'timelineItemId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}}, 'additionalProperties': False}}, 'dryRun': {'type': 'boolean'}, 'success': {'type': 'boolean', 'const': True}, 'replayed': {'type': 'boolean'}, 'revision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'mutationReceiptId': {'type': ['string', 'null']}}, 'additionalProperties': False}
workflow_runs_create
Create Workflow Run
Create an interactive workflow run from a workflow and optional inputs.
入力スキーマ
{'type': 'object', 'required': ['workflowId'], 'properties': {'inputs': {'type': 'object', 'default': {}, 'description': 'Optional workflow input values. Omit to use workflow defaults.', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'array', 'items': {'type': 'string'}}, {'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}]}}, {'type': 'null'}]}}, 'projectId': {'type': 'string', 'format': 'uuid', 'description': 'Optional project ID for workflows that operate on an existing project. UUID string.'}, 'workflowId': {'type': 'string', 'format': 'uuid', 'description': 'Workflow ID to run. UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['run'], 'properties': {'run': {'type': 'object'}}, 'additionalProperties': False}
workflow_runs_execute_step
Execute Workflow Run Step
Execute one pending workflow run step and return updated run status.
入力スキーマ
{'type': 'object', 'required': ['runId', 'stepRunId'], 'properties': {'runId': {'type': 'string', 'format': 'uuid', 'description': 'Workflow run ID. UUID string.'}, 'stepRunId': {'type': 'string', 'format': 'uuid', 'description': 'Step run ID from workflow_runs_create or workflow_runs_get. UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['result', 'run'], 'properties': {'run': {'type': 'object'}, 'result': {'type': 'object'}}, 'additionalProperties': False}
workflow_runs_get
Get Workflow Run
Get workflow run status, step statuses, outputs, warnings, and dashboard URL.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['runId'], 'properties': {'runId': {'type': 'string', 'format': 'uuid', 'description': 'Workflow run ID. UUID string.'}, 'stepLimit': {'type': 'number', 'default': 20, 'description': 'Maximum workflow run steps to return (1-100).'}, 'stepOffset': {'type': 'number', 'default': 0, 'description': 'Workflow run step offset.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['run'], 'properties': {'run': {'type': 'object', 'required': ['steps', 'stepBounds'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object'}}, 'stepBounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}}}}, 'additionalProperties': False}
workflows_get
Get Workflow
Get a workflow definition, input schema, defaults, and ordered steps.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'required': ['workflowId'], 'properties': {'stepLimit': {'type': 'number', 'default': 20, 'description': 'Maximum workflow steps to return (1-100).'}, 'stepOffset': {'type': 'number', 'default': 0, 'description': 'Workflow step offset.'}, 'workflowId': {'type': 'string', 'format': 'uuid', 'description': 'Workflow ID. UUID string.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['workflow'], 'properties': {'workflow': {'type': 'object', 'required': ['steps', 'stepBounds'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object'}}, 'stepBounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}}}}, 'additionalProperties': False}
workflows_import
Import Workflow
Import a public BlitzReels workflow into the user's workspace.
入力スキーマ
{'type': 'object', 'required': ['workflowId'], 'properties': {'workflowId': {'type': 'string', 'format': 'uuid', 'description': 'Public workflow ID to import. UUID string.'}, 'workspaceId': {'type': 'string', 'format': 'uuid', 'description': "Optional target workspace ID. Defaults to the user's default workspace. UUID string."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['workflow'], 'properties': {'workflow': {'type': 'object', 'required': ['steps', 'stepBounds'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object'}}, 'stepBounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}}}}, 'additionalProperties': False}
workflows_list
List Workflows
List public BlitzReels workflows that can be imported into a workspace.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 20, 'maximum': 50, 'minimum': 1, 'description': 'Maximum workflows to return (1-50).'}, 'offset': {'type': 'number', 'default': 0, 'minimum': 0, 'description': 'Pagination offset.'}, 'search': {'type': 'string', 'description': 'Optional search query for workflow name or description.'}, 'trigger': {'enum': ['video_uploaded', 'project_created', 'export_started', 'manual'], 'type': 'string', 'description': 'Optional trigger filter.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['workflows', 'bounds'], 'properties': {'bounds': {'type': 'object', 'required': ['limit', 'maxLimit', 'offset', 'total', 'returned', 'hasMore', 'truncated'], 'properties': {'limit': {'type': 'number'}, 'total': {'type': 'number'}, 'offset': {'type': 'number'}, 'hasMore': {'type': 'boolean'}, 'maxLimit': {'type': 'number'}, 'returned': {'type': 'number'}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'workflows': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': False}
workspace_brand_scan
Inspect Supplied Business Website
Start extracting a brand profile from the exact website the user supplied and authorized to scan. Saves a draft profile for review; does not apply discovered fields to existing videos. Can spend existing account credits.
破壊的操作あり 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'websiteUrl', 'confirmAuthorizedToScan'], 'properties': {'websiteUrl': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'confirmAuthorizedToScan': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
workspace_brand_scan_get
Read Website Brand Draft
Read one authorized website extraction run and its draft business profile. Show the extracted fields to the user for review before saving them as defaults.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'runId'], 'properties': {'runId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'UUID string.'}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
workspace_context_get
Read Business Context
Read the selected workspace's business audience, offer, reviewed brand defaults, protected vocabulary, editorial purpose, language, avoided terms, pronunciation notes and existing account entitlements. Returns current export quality and watermark constraints without pricing or upgrade links.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId'], 'properties': {'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
workspace_context_save
Save Reviewed Business Context
Save the user-reviewed business name, audience, offer, conversion goal, tone, protected vocabulary and editorial preferences for the selected workspace. Requires workspace settings permission and confirmReviewed=true; changes future assistant guidance, preserving existing projects. Pronunciation notes guide script drafting; they do not retime or replace source speech.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceId', 'idempotencyKey', 'brandName', 'audience', 'offer', 'conversionGoal', 'tone', 'editorialPreferences', 'protectedWords', 'confirmReviewed'], 'properties': {'tone': {'anyOf': [{'type': 'string', 'maxLength': 240}, {'type': 'null'}]}, 'offer': {'anyOf': [{'type': 'string', 'maxLength': 500}, {'type': 'null'}]}, 'audience': {'anyOf': [{'type': 'string', 'maxLength': 500}, {'type': 'null'}]}, 'brandName': {'anyOf': [{'type': 'string', 'maxLength': 160}, {'type': 'null'}]}, 'workspaceId': {'anyOf': [{'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, {'type': 'null'}], 'default': None}, 'conversionGoal': {'anyOf': [{'type': 'string', 'maxLength': 500}, {'type': 'null'}]}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 8}, 'protectedWords': {'type': 'array', 'items': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'maxItems': 40}, 'confirmReviewed': {'type': 'boolean', 'const': True}, 'editorialPreferences': {'anyOf': [{'type': 'object', 'required': ['purpose', 'preferredLanguage', 'avoidTerms', 'pronunciationNotes'], 'properties': {'purpose': {'anyOf': [{'enum': ['authority', 'education', 'product_demo', 'lead_generation'], 'type': 'string'}, {'type': 'null'}]}, 'avoidTerms': {'type': 'array', 'items': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'maxItems': 40}, 'preferredLanguage': {'anyOf': [{'type': 'string', 'maxLength': 40, 'minLength': 2}, {'type': 'null'}]}, 'pronunciationNotes': {'type': 'array', 'items': {'type': 'object', 'required': ['term', 'pronunciation'], 'properties': {'term': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'pronunciation': {'type': 'string', 'maxLength': 160, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 40}}, 'additionalProperties': False}, {'type': 'null'}]}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
workspaces_list
List Workspaces
List bounded workspaces the connected user belongs to, with their role and default workspace. Selecting a workspace for the task does not change account defaults.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['limit', 'offset'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
変更
generation_jobs_cancel
2026年10月1日2:53
変更
generation_faceless_create
2026年10月1日2:53
変更
generation_sound_create
2026年10月1日2:53
変更
generation_music_create
2026年10月1日2:53
変更
generation_voiceover_create
2026年10月1日2:53
変更
generation_video_create
2026年10月1日2:53
変更
generation_image_create
2026年10月1日2:53
追加
captions_look_apply
2026年10月1日2:53
追加
clips_export
2026年10月1日2:53
追加
clips_repair
2026年10月1日2:53
追加
clips_reselect
2026年10月1日2:53
追加
clips_inspect
2026年10月1日2:53
追加
clips_list
2026年10月1日2:53
追加
clips_status_get
2026年10月1日2:53
変更
clips_get
2026年10月1日2:53
変更
clips_create
2026年10月1日2:53
追加
workspace_brand_scan_get
2026年10月1日2:53
追加
workspace_brand_scan
2026年10月1日2:53
追加
workspace_context_save
2026年10月1日2:53
追加
workspace_context_get
2026年10月1日2:53
追加
workspaces_list
2026年10月1日2:53
追加
clips_recover
2026年10月1日2:53
追加
captions_source_prepare
2026年10月1日2:53
追加
video_feedback_save
2026年10月1日2:53
追加
captions_words_correct
2026年10月1日2:53
追加
captions_words_list
2026年10月1日2:53
追加
clips_candidates_list
2026年10月1日2:53
追加
editor_edit_undo
2026年10月1日2:53
追加
editor_history_list
2026年10月1日2:53
追加
editor_snapshot_get
2026年10月1日2:53