---
title: "Kick a motion-story video export"
method: POST
path: "/dashboards/{dashboard_id}/video"
tags: ["Dashboard v3"]
---

# Kick a motion-story video export

`POST /dashboards/{dashboard_id}/video`

## Request

- Base URL: `https://app.mammoth.io/api/v2`
- URL: `https://app.mammoth.io/api/v2/dashboards/{dashboard_id}/video`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-KEY` and API key in header `X-API-SECRET` and API key in header `X-WORKSPACE-ID`

Start an on-demand async export of the PUBLISHED motion story to an MP4 (item 10a). `?aspect=landscape|square|portrait` picks the frame (1920x1080, 1440x1440, 1080x1920); omitted, the story's own `motion.aspect`, else landscape. Returns a job_id; poll /jobs/{id} for coarse {stage, progress} then the resolved {url, seconds, bytes, sequence, aspect}. Each aspect is its own clip; the video is keyed by the published sequence (`Dashboard.share['sequence']`) — a republish mints the next sequence and the old clip becomes stale. 400 when the dashboard isn't published (there is no sequence to key on). Auth mirrors /data (author or viewer — a viewer can share the published clip).

## Path parameters

- `dashboard_id` integer, required

## Query parameters

- `aspect` 'landscape' | 'square' | 'portrait' | 'null', nullable

## Response `201`

Document created, URL follows

- ObjectJobSchema
  - `status_code` integer, nullable
  - `job_id` integer, nullable: Created job id
  - `failure_reason` string, nullable: Failure reason if status is failure

## Other responses

- `202`: Successfully Submitted
- `400`: Bad request syntax or unsupported method
- `403`: Request forbidden -- authorization will not help

---

[API](https://skmtc.dev/mammoth/apis/mammoth-analytics.md) · [All operations](https://skmtc.dev/mammoth/apis/mammoth-analytics/llms.txt) · [OpenAPI document](https://skmtc.dev/mammoth/apis/mammoth-analytics/revisions/fe078afe239b?raw)
