publ betaReference (MCP guide)
Open publ console

shorts_videos_apply

# shorts_videos_apply

Edits, publishes or deletes a short, sets its labels or creates or edits its conversion link in the Shorts app (pApp C00015). Video files are uploaded with shorts_video_upload_apply. Shows a preview first; the change runs only after confirmation. Called without confirmToken it previews and returns a confirmToken; repeating the same input with it executes once.

## Inputs

| Field | Required here | Contract |
| --- | --- | --- |
| `action` | Yes | When alternative 1: one of: `conversion-link`, `edit`, `publication`, `labels`, `delete` (by `kind`) |
| `action.postId` | Yes | When alternative 1 and `action.kind` is `conversion-link`: integer; greater than 0 |
| `action.operation` | Yes | When alternative 1 and `action.kind` is `conversion-link`: `create`, `edit` |
| `action.changes` | No | When alternative 1 and `action.kind` is `conversion-link`: object |
| `action.changes.title` | No | When alternative 1 and `action.kind` is `conversion-link`: string; min length 1; max length 30 |
| `action.changes.description` | No | When alternative 1 and `action.kind` is `conversion-link`: string; max length 50 |
| `action.changes.linkType` | No | When alternative 1 and `action.kind` is `conversion-link`: `INTERNAL_LINK`, `WEB_LINK` |
| `action.changes.destinationUrl` | No | When alternative 1 and `action.kind` is `conversion-link`: string; max length 4096; format `uri` |
| `action.changes.enabled` | No | When alternative 1 and `action.kind` is `conversion-link`: boolean |
| `action.changes.clearThumbnail` | No | When alternative 1 and `action.kind` is `conversion-link`: `true` |
| `action.changes.thumbnailImageTaskId` | No | When alternative 1 and `action.kind` is `conversion-link`: string; pattern `^[A-Za-z0-9_-]{8,80}$` |
| `action.postId` | Yes | When alternative 1 and `action.kind` is `edit`: integer; greater than 0 |
| `action.changes` | Yes | When alternative 1 and `action.kind` is `edit`: object |
| `action.changes.title` | No | When alternative 1 and `action.kind` is `edit`: string; min length 1; max length 100 |
| `action.changes.description` | No | When alternative 1 and `action.kind` is `edit`: string; max length 5000 |
| `action.changes.introduction` | No | When alternative 1 and `action.kind` is `edit`: string; max length 250 |
| `action.changes.contentHtml` | No | When alternative 1 and `action.kind` is `edit`: string; min length 2; max length 30000 |
| `action.changes.ageRating` | No | When alternative 1 and `action.kind` is `edit`: integer; minimum 0; maximum 10000000 |
| `action.changes.publishedAt` | No | When alternative 1 and `action.kind` is `edit`: string; pattern `^(?:(?:\d\d[2468][048]\|\d\d[13579][26]\|\d\d0[48]\|[02468][048]00\|[13579][26]00)-02-29\|\d{4}-(?:(?:0[13578]\|1[02])-(?:0[1-9]\|[12]\d\|3[01])\|(?:0[469]\|11)-(?:0[1-9]\|[12]\d\|30)\|(?:02)-(?:0[1-9]\|1\d\|2[0-8])))T(?:(?:[01]\d\|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z\|([+-](?:[01]\d\|2[0-3]):[0-5]\d)))$`; format `date-time` |
| `action.changes.coaching` | No | When alternative 1 and `action.kind` is `edit`: object |
| `action.changes.coaching.link` | Yes | When alternative 1 and `action.kind` is `edit`: string; max length 4096; format `uri` |
| `action.changes.coaching.startsAt` | Yes | When alternative 1 and `action.kind` is `edit`: string; pattern `^(?:(?:\d\d[2468][048]\|\d\d[13579][26]\|\d\d0[48]\|[02468][048]00\|[13579][26]00)-02-29\|\d{4}-(?:(?:0[13578]\|1[02])-(?:0[1-9]\|[12]\d\|3[01])\|(?:0[469]\|11)-(?:0[1-9]\|[12]\d\|30)\|(?:02)-(?:0[1-9]\|1\d\|2[0-8])))T(?:(?:[01]\d\|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z\|([+-](?:[01]\d\|2[0-3]):[0-5]\d)))$`; format `date-time` |
| `action.changes.coaching.durationMinutes` | Yes | When alternative 1 and `action.kind` is `edit`: integer; greater than 0 |
| `action.postId` | Yes | When alternative 1 and `action.kind` is `publication`: integer; greater than 0 |
| `action.isPublished` | Yes | When alternative 1 and `action.kind` is `publication`: boolean |
| `action.postId` | Yes | When alternative 1 and `action.kind` is `labels`: integer; greater than 0 |
| `action.labelIds` | Yes | When alternative 1 and `action.kind` is `labels`: array; items: integer; greater than 0; max items 100 |
| `action.postId` | Yes | When alternative 1 and `action.kind` is `delete`: integer; greater than 0 |
| `action.confirmation` | Yes | When alternative 1 and `action.kind` is `delete`: `DELETE_MEDIA_POST` |
| `confirmToken` | No | When alternative 1: string; pattern `^ct[a-f\d]{32}$`; The confirmToken from this tool's preview result. Omit it to preview; repeat the same input with it to execute. |
| `action` | Yes | When alternative 2: object |
| `action.kind` | Yes | When alternative 2: `episode-thumbnail` |
| `action.postId` | Yes | When alternative 2: integer; greater than 0 |
| `action.change` | Yes | When alternative 2: one of: `edit`, `restore-assets` (by `kind`) |
| `action.change.fields` | Yes | When alternative 2 and `action.change.kind` is `edit`: object |
| `action.change.fields.thumbnailImageTaskId` | Yes | When alternative 2 and `action.change.kind` is `edit`: string; pattern `^[A-Za-z0-9_-]{8,80}$` |
| `action.change.sourceTaskId` | Yes | When alternative 2 and `action.change.kind` is `restore-assets`: string; pattern `^[A-Za-z0-9_-]{8,80}$` |
| `confirmToken` | No | When alternative 2: string; pattern `^ct[a-f\d]{32}$`; The confirmToken from this tool's preview result. Omit it to preview; repeat the same input with it to execute. |