> ## Documentation Index
> Fetch the complete documentation index at: https://docs.markifact.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Video Ad

> Create a LinkedIn single video ad (sponsored creative) under an ad set

Create a LinkedIn single video ad (sponsored creative) under an ad set. Uploads the video, then creates the creative inline. Supports single and bulk creation and lead-gen forms.

| | |
| - | - |
| **App** | LinkedIn Ads |
| **Operation ID** | `linkedin_ads_create_video_ad` |
| **Type** | Action |
| **Connection** | `linkedin_ads` (required) |
| **Credits per run** | 1 |
| **Agent / MCP tool** | Yes |
| **Requires approval** | Yes (write operation) |

## Inputs

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `account` | DynamicAccount | Yes | - | LinkedIn Ads account to create the ad in. |
| `update_type` | string or SelectableOption | Yes | - | Create a single video ad ('single') or many at once ('bulk'). |
| `adset_id` | string or SelectItem | No | - | Ad set (LinkedIn sponsored campaign) the ad belongs to. Maps to the creative's campaign. |
| `organization` | string or SelectItem | Yes | - | Company Page used as the post author. Accepts an organization id or urn:li:organization:123. |
| `video_url` | string | No | - | Video for the ad (MP4). Accepts a direct video URL or a Google Drive share link (set to 'Anyone with the link'). Markifact uploads it to LinkedIn automatically. |
| `intro_text` | string | No | - | Introductory text shown above the video. Up to 255 characters. |
| `headline` | string | No | - | Headline shown below the video. Up to 70 characters. |
| `destination_url` | string | No | - | Landing page URL the ad clicks through to. Required unless a lead form is set. |
| `lead_form` | string or SelectItem | No | - | Optional LinkedIn lead-gen form. Provide this for Lead Generation ad sets: the ad opens this form instead of a destination URL. Accepts a form id or urn:li:adForm:123. |
| `call_to_action` | string or SelectableOption | No | - | Call-to-action button label (e.g. LEARN\_MORE, SIGN\_UP, DOWNLOAD). |
| `ad_name` | string | No | - | Optional creative name. Up to 255 characters. |
| `status` | string or SelectableOption | No | `{'value': 'DRAFT', 'label': 'Draft'}` | Initial creative status: DRAFT (safely inactive) or ACTIVE (submitted for review). |
| `structured_data` | array (also accepts a comma-separated string) | No | - | Use only when update\_type is 'bulk', typically the output of a Sheets read. Each row supports: video\_url, adset\_id, intro\_text, headline, destination\_url, lead\_form, call\_to\_action, ad\_name, status. |
| `return_detailed_results` | boolean | No | `False` | Bulk mode only. If true, returns per-row results and does not raise on partial failures so the workflow can continue. Default false. |

### SelectItem

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `value` | string | Yes | - | The value of the selectable item. |
| `label` | string | Yes | - | The label of the selectable item, used for display purposes. If not provided, defaults to the value. |

### SelectableOption

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `value` | string | Yes | - | |
| `label` | string | Yes | - | |

## Output

**Type**: `Dict`

Returns created LinkedIn video ad creative IDs.

**Fields**: `creative_ids`, `video_urns`, `created_count`, `success_count`, `failed_count`, `total_count`, `results`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.