Wistia
Video hosting, management, and analytics platform built for marketers with detailed engagement tracking.
Capabilities
| Integration | Available | Notes |
|---|---|---|
| API | ✓ | Data API (v1/modern), Stats API, Upload API |
| MCP | - | Not available |
| CLI | ✓ | wistia.js |
| SDK | ✓ | Ruby (official), community wrappers for other languages |
Authentication
- Type: Bearer Token
- Header:
Authorization: Bearer {api_token} - Get key: Account Settings > API tab at https://account.wistia.com/account/api
- Note: Only Account Owners can create/manage tokens. Tokens can only be copied when first created.
Common Agent Operations
List all projects
bash
GET https://api.wistia.com/v1/projects.json?page=1&per_page=25Create a project
bash
POST https://api.wistia.com/v1/projects.json
{
"name": "Marketing Videos Q1"
}List all media
bash
GET https://api.wistia.com/v1/medias.json?page=1&per_page=25Get media details
bash
GET https://api.wistia.com/v1/medias/{media_hashed_id}.jsonGet media stats
bash
GET https://api.wistia.com/v1/medias/{media_hashed_id}/stats.jsonGet account-wide stats
bash
GET https://api.wistia.com/v1/stats/account.jsonGet media engagement data (heatmap)
bash
GET https://api.wistia.com/v1/stats/medias/{media_id}/engagement.jsonGet media stats by date
bash
GET https://api.wistia.com/v1/stats/medias/{media_id}/by_date.json?start_date=2026-01-01&end_date=2026-01-31List visitors
bash
GET https://api.wistia.com/v1/stats/visitors.json?page=1&per_page=25List viewing events
bash
GET https://api.wistia.com/v1/stats/events.json?media_id={media_id}Update media metadata
bash
PUT https://api.wistia.com/v1/medias/{media_hashed_id}.json
{
"name": "Updated Video Title",
"description": "New description"
}List captions for a video
bash
GET https://api.wistia.com/v1/medias/{media_hashed_id}/captions.jsonAPI Versions
Wistia has two API versions:
- v1 (
/v1/) - Legacy, perpetually supported, no breaking changes - modern (
/modern/) - Current version, date-based versioning viaX-Wistia-Api-Versionheader
The CLI uses v1 for maximum stability.
Key Metrics
Media Stats
plays- Total video playsvisitors- Unique visitorspageLoads- Page load countaveragePercentWatched- Average watch percentagepercentOfVisitorsClickingPlay- Play click rate
Engagement Data
- Heatmap data showing exactly where viewers watch, rewatch, and drop off
- Per-second engagement breakdown
Account Stats
total_medias- Total video counttotal_plays- Account-wide playstotal_hours_watched- Total hours of video watched
Parameters
Media List Parameters
page- Page number (default: 1)per_page- Results per page (default: 25, max: 100)project_id- Filter by projectname- Filter by nametype- Filter by type (Video, Audio, Image, etc.)
Stats Date Parameters
start_date- Start date (YYYY-MM-DD)end_date- End date (YYYY-MM-DD)
When to Use
- Hosting marketing and product videos with analytics
- Tracking video engagement and viewer behavior
- A/B testing video thumbnails and CTAs
- Embedding videos with custom player branding
- Analyzing which parts of videos drive engagement
- Lead generation via video email gates
Rate Limits
- 600 requests per minute per account
- Exceeding returns HTTP 429 with
Retry-Afterheader - Asset access (media file downloads) does not count toward limit
- Events data returns records from past 2 years only
Relevant Skills
- video-marketing
- content-repurposing
- landing-page-optimization
- lead-generation