# Wistia Documentation ## Guides - [Authenticating with OAuth2](https://docs.wistia.com/docs/authenticating-with-oauth2.md): Learn how to link an OAuth2 application with your account, then use it to act on behalf of your users. - [Making API Requests](https://docs.wistia.com/docs/making-api-requests.md): Learn how to get started and use Wistia APIs. - [Using Wistia's MCP server](https://docs.wistia.com/docs/mcp-server-guide.md): Learn how to use Wistia's MCP server. - [Migration Guide: API v1 to API 2026-01](https://docs.wistia.com/docs/migration-from-v1-guide.md): Outlines breaking changes and new features when migrating from the Wistia API v1 to the 2026-01 stable release. - [Uploader](https://docs.wistia.com/docs/uploader.md): The Wistia Uploader is the best way to enable video uploading directly from within your application to Wistia. - [Webhooks](https://docs.wistia.com/docs/webhooks.md): Webhooks let you hook into events that happen throughout the Wistia platform. - [Wistia Chooser](https://docs.wistia.com/docs/wistia-chooser.md): The Wistia Chooser enables people to access their Wistia videos from outside of the Wistia app, and easily embed and share them. - [Wistia Deprecation Schedule](https://docs.wistia.com/docs/wistia-deprecation-schedule.md): Sometimes, we need to remove functionality from our website due to safety concerns or for code health purposes. See below for a list of notable feature deprecations and removals. - [Asset URLs](https://docs.wistia.com/docs/asset-urls.md): Working with direct file URLs for Wistia-hosted content - [Extracting Thumbnails from a Video](https://docs.wistia.com/docs/extracting-thumbnails-from-a-video.md): Generate thumbnails at different times in a video using the Wistia API. - [Working With Images](https://docs.wistia.com/docs/working-with-images.md): All the ways you can manipulate images returned by Wistia APIs. - [All About E-v1.js](https://docs.wistia.com/docs/all-about-e-v1.md): If you've used Wistia embeds, read our Help Center, or worked with our Champs, you might've heard the name "E-v1" or "E-v1.js". What is this mystery script, and why is it so important? Read on as we pull back the curtain on the Wistia JavaScript Library. - [Construct a Wistia Embed Code](https://docs.wistia.com/docs/construct-a-wistia-embed-code.md): Learn to programmatically construct an embed code starting with just the video ID! - [Embed Code ID Tagging](https://docs.wistia.com/docs/embed-code-id-tagging.md): Pass an ID for each viewer to your stats through the player API using these simple steps! - [Embed Options and Plugins](https://docs.wistia.com/docs/embed-options-and-plugins.md): Learn more about the embed options and plugins available for your embedded videos. - [iFrame Embed Options](https://docs.wistia.com/docs/iframe-embed-options.md): Learn how to use deeply nested options in your iframe embeds. - [JavaScript Player API](https://docs.wistia.com/docs/javascript-player-api.md): The Wistia player has a built-in JavaScript API, providing you with a variety of ways to interact with and control the player.. - [Player Controls Framework](https://docs.wistia.com/docs/player-controls-framework.md): You can add custom buttons, dialogs, and other behavior to the Wistia player. - [Player Privacy Mode](https://docs.wistia.com/docs/player-privacy-mode.md): Enable or disable Privacy Mode for individual visitors using the Player API - [Plugin API](https://docs.wistia.com/docs/plugin-api.md): Have some cool JavaScript that you want to use with a bunch of videos? The Plugin API lets you create a simple script package that works with any Wistia embed code. - [Popover Options and API](https://docs.wistia.com/docs/popover-embed-customization.md): Customize your popover embeds with options, methods, and tips specific to popovers - [Use Webinar Embeds with API Registrations](https://docs.wistia.com/docs/use-webinar-embeds-with-api-registrations.md) - [Channel Embeds](https://docs.wistia.com/docs/channel-embeds.md): Learn how to set Channel embed options and use the Channel API. - [Embed Links](https://docs.wistia.com/docs/embed-links.md): Learn how to use Embed Links to setup playlists, chaptering, “watch another video,” and “choose your own adventure”-style navigation without any JavaScript. - [Generate and troubleshoot Wistia email embeds](https://docs.wistia.com/docs/generate-and-troubleshoot-wistia-email-embeds.md) - [Creating a Wistia-friendly Content Security Policy (CSP)](https://docs.wistia.com/docs/how-to-create-a-wistia-friendly-content-security-policy-csp.md): How to configure your Content Security Policy to allow Wistia embeds with full functionality - [Transcript Embeds](https://docs.wistia.com/docs/transcript-embeds.md): Learn how to embed your transcripts from Wistia alongside the player. - [Referrer Policy and Wistia's Domain Restrictions](https://docs.wistia.com/docs/using-wistias-domain-restrictions-with-a-referrer-policy.md): Learn about which referrer policies are compatible with Wistia's Domain Restrictions feature - [Which player am I using?](https://docs.wistia.com/docs/which-player-should-i-use.md) - [Wistia and oEmbed](https://docs.wistia.com/docs/wistia-and-oembed.md): oEmbed is a simple API to get information about embedded content on a URL. For Wistia, it's a great way to programmatically get embed codes for videos if you have their URLs. - [Interacting with Aurora on your page](https://docs.wistia.com/docs/interacting-with-aurora-on-your-page.md) - [Migrating from the Legacy Player (Vulcan) to Aurora](https://docs.wistia.com/docs/migrating-from-the-legacy-player-vulcan-to-aurora.md) - [Aurora Player Attributes and Properties](https://docs.wistia.com/docs/player-attributes-and-properties.md): Learn more about the attributes and properties available for your embedded player. - [Aurora Player API Overview](https://docs.wistia.com/docs/player-embed-api.md): Customize your embeds with options, events, methods, and some helpful tips. - [Aurora Player Events](https://docs.wistia.com/docs/player-events.md): Learn more about the events available for your embedded player. - [Aurora Player Methods](https://docs.wistia.com/docs/player-methods.md): Learn more about the methods available for your embedded player. - [Aurora Popover Player API](https://docs.wistia.com/docs/player-popover-embed-api.md): Customize your popover embeds with options, methods, and tips specific to popovers. - [Embedding the Aurora Player: Quick Start Guide](https://docs.wistia.com/docs/player-quick-start.md): Get up and running with the Wistia web component in no time! - [Aurora React Component](https://docs.wistia.com/docs/player-react-component.md) - [Quick Guide: Working with multiple embeds](https://docs.wistia.com/docs/quick-guide-working-with-multiple-embeds.md) ## API Reference - [Show Media Form Conversions](https://docs.wistia.com/reference/get_analytics-medias-mediaid-conversions.md): Retrieve form conversion data for a video. Returns a paginated list of form submissions with visitor details and timestamps. The date range between `start_date` and `end_date` must not exceed 2 years. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Embed Locations](https://docs.wistia.com/reference/get_analytics-medias-mediaid-embed-locations.md): Retrieve embed location analytics for a video. Returns a list of pages where the video is embedded, ranked by the chosen metric. The date range between `start_date` and `end_date` must not exceed 2 years. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Languages](https://docs.wistia.com/reference/get_analytics-medias-mediaid-languages.md): Retrieve language analytics for a video. Returns a breakdown of plays by viewer browser language, sorted by number of plays in descending order. The date range between `start_date` and `end_date` must not exceed 2 years. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Analytics Timeseries](https://docs.wistia.com/reference/get_analytics-medias-mediaid-timeseries.md): Retrieve analytics timeseries data for a video over a date range with configurable granularity. Returns an array of timestamped metric buckets. The date range between `start_date` and `end_date` must not exceed 2 years. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Traffic Breakdown](https://docs.wistia.com/reference/get_analytics-medias-mediaid-traffic.md): Retrieve traffic breakdown analytics for a video, grouped by a specified dimension such as UTM campaign, UTM source, UTM medium, referrer domain, or viewer screen size. The date range between `start_date` and `end_date` must not exceed 2 years. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Analytics](https://docs.wistia.com/reference/get_analytics-medias-mediaid.md): Retrieve aggregate analytics for a video over a date range. This endpoint provides Bottler-powered analytics including plays, loads, engagement rate, play rate, and conversion metrics. The date range between `start_date` and `end_date` must not exceed 2 years. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Webinar Audience](https://docs.wistia.com/reference/get_analytics-webinars-webinarid-audience.md): Retrieve audience data for a webinar. Returns a paginated list of registrants with their attendance status, engagement metrics, attribution data, and per-attendee histograms. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Webinar Histograms](https://docs.wistia.com/reference/get_analytics-webinars-webinarid-histograms.md): Retrieve engagement histogram data for a webinar. Returns arrays of per-time-bucket counts for attendees, chat activity, and visual focus, useful for rendering engagement visualizations. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Webinar Registration Timeseries](https://docs.wistia.com/reference/get_analytics-webinars-webinarid-registration.md): Retrieve registration timeseries data for a webinar with configurable granularity. Returns an array of timestamped registration metric buckets including impressions, registrations, and completion rates. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Webinar Traffic Breakdown](https://docs.wistia.com/reference/get_analytics-webinars-webinarid-traffic.md): Retrieve traffic breakdown analytics for a webinar, grouped by a specified dimension such as UTM campaign, UTM source, UTM medium, or referrer domain. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Webinar Analytics](https://docs.wistia.com/reference/get_analytics-webinars-webinarid.md): Retrieve aggregate analytics for a webinar. This endpoint provides Bottler-powered analytics including registrations, attendance, engagement, chat activity, and poll results. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Get Current Account](https://docs.wistia.com/reference/getaccountdetails.md): Retrieves a summary of the Wistia account including account name, description, URL and counts of records. ## Requires api token with one of the following permissions ``` (any scope allowed) ``` - [Get Current Token](https://docs.wistia.com/reference/gettokendetails.md): Retrieves a summary of the token used to make the API request. This endpoint can primarily be used to debug permission issues with the API. - [Delete Allowed Domain](https://docs.wistia.com/reference/delete_allowed-domains-domain.md): Deletes an allowed domain from the account. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Allowed Domain](https://docs.wistia.com/reference/get_allowed-domains-domain.md): Returns the details of an allowed domain. ## Requires api token with one of the following permissions ``` Read all data ``` - [List Allowed Domains](https://docs.wistia.com/reference/get_allowed-domains.md): Lists allowed domains belonging to the account. ## Requires api token with one of the following permissions ``` Read all data ``` - [Create Allowed Domain](https://docs.wistia.com/reference/post_allowed-domains.md): Creates an allowed domain for the account. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Background Job Status](https://docs.wistia.com/reference/get_background-job-status-backgroundjobstatusid.md): Retrieves the status of a background job. ## Requires api token with one of the following permissions ``` Read all data ``` - [Delete Captions](https://docs.wistia.com/reference/delete_medias-mediahashedid-captions-languagecode.md): Removes the captions file from a media for the specified language. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [List Captions](https://docs.wistia.com/reference/get_captions.md): Lists captions belonging to the account. This endpoint can also narrow down results to those belonging to a specific media. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Show Captions](https://docs.wistia.com/reference/get_medias-mediahashedid-captions-languagecode.md): Returns a video's captions in the specified language. Supports multiple formats: JSON (default), SRT, VTT, and TXT. Use file extensions (.srt, .vtt, .txt) or Accept headers to specify format. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [List Captions by Media](https://docs.wistia.com/reference/get_medias-mediahashedid-captions.md): Lists captions belonging to a specific media. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Purchase Captions](https://docs.wistia.com/reference/post_medias-mediahashedid-captions-purchase.md): This method is for purchasing English captions for a media. The request will charge the credit card on the account if successful. A saved credit card is required to use this endpoint. > 🚫 Alert > > The `automated` parameter defaults to `false`, which orders **paid human-generated captions**. To order computer-generated captions, you must explicitly set `automated` to `true`. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Create Captions](https://docs.wistia.com/reference/post_medias-mediahashedid-captions.md): Adds captions to a specified media by providing an SRT file or its contents directly. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Captions](https://docs.wistia.com/reference/put_medias-mediahashedid-captions-languagecode.md): This method is for replacing the captions on a video for the specified language. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Channel Episode](https://docs.wistia.com/reference/delete_channel-episodes-channelepisodehashedid.md): Deletes an existing channel episode in a channel. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [List Channel Episodes](https://docs.wistia.com/reference/get_channel-episodes.md): Lists Channel Episodes belonging to an account. This endpoint can also be used to do a batch fetch based off of the hashed id. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Show Channel Episode](https://docs.wistia.com/reference/get_channels-channelhashedid-channel-episodes-channelepisodeid.md): Returns the Channel Episode associated with a channel hashed id and channel episode hashed id. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [List Channel Episodes by Channel](https://docs.wistia.com/reference/get_channels-channelhashedid-channel-episodes.md): Lists Channel Episodes belonging to the channel passed in the path. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Create Channel Episode](https://docs.wistia.com/reference/post_channels-channelhashedid-channel-episodes.md): Creates a new channel episode in a channel. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Publish Channel Episode](https://docs.wistia.com/reference/put_channel-episodes-channelepisodehashedid-publish.md): Publishes an existing channel episode in a channel. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Un-publish Channel Episode](https://docs.wistia.com/reference/put_channel-episodes-channelepisodehashedid-unpublish.md): Un-publishes an existing channel episode in a channel. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Channel Episode](https://docs.wistia.com/reference/put_channel-episodes-channelepisodehashedid.md): Updates an existing channel episode in a channel. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Channel](https://docs.wistia.com/reference/delete_channels-channelhashedid.md): Deletes a channel. - [Show Channel](https://docs.wistia.com/reference/get_channels-channelhashedid.md): Returns the Channel associated with the hashedId. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [List Channels](https://docs.wistia.com/reference/get_channels.md): Lists all Channels belonging to an account. This endpoint can also be used to do a batch fetch based off of the hashed id. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Create Channel](https://docs.wistia.com/reference/post_channels.md): Creates a channel. - [Update Channel](https://docs.wistia.com/reference/put_channels-channelhashedid.md): Updates a channel. - [Delete Customizations](https://docs.wistia.com/reference/delete_medias-mediaid-customizations.md): Deletes all explicit customizations for a video, making it act as if it has never been customized. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Customizations](https://docs.wistia.com/reference/get_medias-mediaid-customizations.md): Fetches explicitly defined customizations for the video. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Create Customizations](https://docs.wistia.com/reference/post_medias-mediaid-customizations.md): Set customizations for a video. Replaces the customizations explicitly set for this video. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Customizations](https://docs.wistia.com/reference/put_medias-mediaid-customizations.md): Allows for partial updates on a video’s customizations. If a value is null, then that key will be deleted from the saved customizations. If it is not null, that value will be set. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Create Expiring Access Token](https://docs.wistia.com/reference/post_expiring-token.md): ``` 🚫 Alert This API is still under development and can change at any time. ``` This endpoint is for creating expiring access tokens which can be used for some iframe embeds. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Folder Sharing](https://docs.wistia.com/reference/delete_folders-folderid-sharings-sharingid.md): Deletes a sharing on a folder. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Folder Sharing](https://docs.wistia.com/reference/get_folders-folderid-sharings-sharingid.md): Retrieves the details of a specific sharing object for a given folder. ## Requires api token with one of the following permissions ``` Read all data ``` - [List Folder Sharings](https://docs.wistia.com/reference/get_folders-folderid-sharings.md): Lists the sharings of contacts and contact groups on a folder. ## Requires api token with one of the following permissions ``` Read all data ``` - [Create Folder Sharing](https://docs.wistia.com/reference/post_folders-folderid-sharings.md): Creates a new sharing object for a folder by specifying the email of the person to share with and other optional parameters. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Folder Sharing](https://docs.wistia.com/reference/put_folders-folderid-sharings-sharingid.md): Updates a sharing on a folder. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Folder](https://docs.wistia.com/reference/delete_folders-id.md): Deletes a folder (previously called project) ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Folder](https://docs.wistia.com/reference/get_folders-id.md): Retrieves a single folder (previously called project). ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [List Folders](https://docs.wistia.com/reference/get_folders.md): Lists folders (previously called projects) belonging to the account. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Copy Folder](https://docs.wistia.com/reference/post_folders-id-copy.md): This copies a folder (previously called project) and all its media and subfolders asynchronously in a background job. This method does not copy the folder’s sharing information (i.e. users that could see the old folder will not automatically be able to see the new one). For the request you can specify the owner of a new folder by passing an optional parameter. The person you specify must be a Manager in the account. The body of the response will contain an object representing the background job that was created. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Create Folder](https://docs.wistia.com/reference/post_folders.md): Creates a new folder (previously called project). If the folder is created successfully the Location HTTP header will point to the new folder. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Folder](https://docs.wistia.com/reference/put_folders-id.md): Updates a folder (previously called project) ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Getting Started with the Data API](https://docs.wistia.com/reference/getting-started-with-the-data-api.md) - [Delete Localization](https://docs.wistia.com/reference/delete_medias-mediahashedid-localizations-localizationhashedid.md): Deletes a localization. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Localization](https://docs.wistia.com/reference/get_medias-mediahashedid-localizations-localizationhashedid.md): Obtain detailed information about a localization. ## Requires api token with one of the following permissions ``` Read all data ``` - [List Localizations](https://docs.wistia.com/reference/get_medias-mediahashedid-localizations.md): Lists all the localizations for a media. ## Requires api token with one of the following permissions ``` Read all data ``` - [Create Localization](https://docs.wistia.com/reference/post_medias-mediahashedid-localizations.md): Creates a new localization. Creating a localization incurs a charge on your account. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Media Extended Audio Description](https://docs.wistia.com/reference/delete_media-extended-audio-descriptions-id.md): Deletes an extended audio description by its hashed id. - [Show Media Extended Audio Description](https://docs.wistia.com/reference/get_media-extended-audio-descriptions-id.md): Retrieves a single extended audio description by its hashed id, including download links. - [Get Order Status](https://docs.wistia.com/reference/get_media-extended-audio-descriptions-order-status-id.md): Returns the current status of an extended audio description order. Use the order id returned from the order endpoint to poll for status updates. - [List Media Extended Audio Descriptions](https://docs.wistia.com/reference/get_media-extended-audio-descriptions.md): Lists all extended audio descriptions belonging to the account. Supports pagination and sorting. - [Order Extended Audio Description](https://docs.wistia.com/reference/post_media-extended-audio-descriptions-order.md): Orders an extended audio description for a media. The request will charge the credit card on the account when the order is ready. Only accounts on paid plans with the `order_audio_descriptions` feature can use this endpoint. - [Delete Media](https://docs.wistia.com/reference/delete_medias-mediahashedid.md): Deletes a media. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Media Aggregated Stats](https://docs.wistia.com/reference/get_medias-mediahashedid-stats.md): Aggregated tracking statistics for a video embedded on your site. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Show Media](https://docs.wistia.com/reference/get_medias-mediahashedid.md): Fetches a single media by its hashed id. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [List Media](https://docs.wistia.com/reference/get_medias.md): Lists the media belonging to the account. This endpoint can also be used to do a batch fetch based off of the hashed id. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Import Media from URL](https://docs.wistia.com/reference/post_medias-import-url.md): This endpoint imports a media file from a given URL. The import is processed asynchronously and will return a background_job_status object rather than the typical Media response object. You can poll the background job status endpoint to check on the progress of the import. If no folder_id is provided, a new folder called "Untitled Folder" will be created and the imported media will be placed there. The URL must be publicly accessible — Wistia's servers need to be able to fetch the file directly. Note: imports from certain domains (e.g. vimeo.com, wistia.com) are not permitted. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Copy Media](https://docs.wistia.com/reference/post_medias-mediahashedid-copy.md): This endpoint copies a media and its assets to a destination folder (defaults to source media). ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Translate Media](https://docs.wistia.com/reference/post_medias-mediahashedid-translate.md): Translates the transcript for a media. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Archive Media](https://docs.wistia.com/reference/put_medias-archive.md): This method accepts a list of up to 100 medias to archive per request. It processes requests asynchronously and will return a background_job_status object rather than the typical Media response object. Note that webinar medias and Soapbox videos imported to Wistia before September 1, 2023 cannot be archived. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Bulk Copy Media](https://docs.wistia.com/reference/put_medias-copy.md): This method accepts a list of medias to copy to a destination folder. It processes requests asynchronously and will return a background_job_status object rather than the typical Media response object. Each media will be duplicated and the copy will be placed in the specified destination folder. The original media files will not be affected. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Swap Media](https://docs.wistia.com/reference/put_medias-mediahashedid-swap.md): Swap one media with another media. This operation queues a background job to replace the original media with the replacement media while preserving the original media's hashed ID and URLs. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Media](https://docs.wistia.com/reference/put_medias-mediahashedid.md): Updates the attributes on a media. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Move Media](https://docs.wistia.com/reference/put_medias-move.md): Move one or many media to a different folder and optionally to a specific subfolder. Max 100 media per request, and max 10 requests in 5 minutes. Note: this is a different rate limit than applies to the rest of the api! If a subfolder_id is provided, media will be moved to that subfolder. The subfolder must belong to the specified folder. Returns a Background Job as the move is async. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Restore Media](https://docs.wistia.com/reference/put_medias-restore.md): Restores archived medias to your account. This method accepts a list of up to 100 medias to restore per request. It processes requests asynchronously and will return a background_job_status object rather than the typical Media response object. Your account must have access to the Archiving feature to use this method. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Search](https://docs.wistia.com/reference/get_search.md): Searches across folders, subfolders, medias, channels, channel episodes, and webinars. Also searches through video transcripts, so media results may include transcript matches with timestamps when the query matches spoken content. ## Requires api token with one of the following permissions ``` Read all data ``` - [Bulk Delete Subfolders](https://docs.wistia.com/reference/delete_folders-folderid-subfolders-bulk-delete.md): This method accepts a list of subfolders to delete. It processes requests asynchronously and will return a background_job_status object. All media files in each deleted subfolder will be moved to the folder's root level. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Subfolder](https://docs.wistia.com/reference/delete_folders-folderid-subfolders-subfolderid.md): Deletes a subfolder from a folder. All media files in the subfolder will be moved to the folder's root level. The subfolder is soft-deleted and may be recoverable through other means, but is no longer accessible via the API. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Subfolder](https://docs.wistia.com/reference/get_folders-folderid-subfolders-subfolderid.md): Retrieves detailed information about a specific subfolder, including all media contained within it. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [List Subfolders](https://docs.wistia.com/reference/get_folders-folderid-subfolders.md): Lists subfolders in a specific folder. ## Requires api token with one of the following permissions ``` Read all folder and media data ``` - [Create Subfolder](https://docs.wistia.com/reference/post_folders-folderid-subfolders.md): Creates a new subfolder within a folder. The subfolder will be created with the next available position. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Subfolder](https://docs.wistia.com/reference/put_folders-folderid-subfolders-subfolderid.md): Updates a subfolder's name and/or description. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Bulk Tag Media](https://docs.wistia.com/reference/post_taggings-bulk-create.md): This method accepts a list of medias to tag. It processes requests asynchronously and will return a background_job_status object rather than the typical Media response object. The tags will be added to the existing tags on each media file, not replaced. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Tag](https://docs.wistia.com/reference/delete_tags-name.md): Deletes a tag ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [List Tags](https://docs.wistia.com/reference/get_tags.md): Lists tags belonging to the account. ## Requires api token with one of the following permissions ``` Read all data ``` - [Create Tags](https://docs.wistia.com/reference/post_tags.md): Creates a new tag. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Create Media from Trims](https://docs.wistia.com/reference/post_medias-mediahashedid-trims.md): Creates a new media that trims off parts of an existing media. By default, the `trims` parameter specifies time ranges to **remove** from the media. When `keep_trims` is set to `true`, the `trims` parameter instead specifies time ranges to **keep** in the media. **NOTE:** currently this endpoint only supports trimming video files. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Create Webinar Registration](https://docs.wistia.com/reference/post_webinars-webinarid-registrations.md): Register a person for a webinar by providing their email, first name, and last name. This endpoint generates a unique visitor key and returns a personalized webinar URL for the registrant. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Delete Webinar](https://docs.wistia.com/reference/delete_webinars-id.md): Deletes an existing webinar. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Show Webinar](https://docs.wistia.com/reference/get_webinars-id.md): Returns the webinar associated with the hashed id. ## Requires api token with one of the following permissions ``` Read all data ``` - [List Webinars](https://docs.wistia.com/reference/get_webinars.md): Lists webinars belonging to the account. This endpoint can also be used to do a batch fetch based off of the hashed id. ## Requires api token with one of the following permissions ``` Read all data ``` - [Create Webinar](https://docs.wistia.com/reference/post_webinars.md): Creates a new webinar. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [Update Webinar](https://docs.wistia.com/reference/put_webinars-id.md): Updates an existing webinar. ## Requires api token with one of the following permissions ``` Read, update & delete anything ``` - [My Requests](https://docs.wistia.com/reference/my-requests.md): Set up the welcome page for your API to help users make their first call. - [Getting Started with the Stats API](https://docs.wistia.com/reference/getting-started-with-the-stats-api.md): Programmatically access your video metrics, viewer activity, and more. - [Show Account Stats by Date](https://docs.wistia.com/reference/get_stats-account-by-date.md): Retrieve account-wide stats organized by day, between a start and end date parameter (inclusive). If start and end date are not provided, defaults to yesterday and today. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Current Account Stats](https://docs.wistia.com/reference/get_stats-account.md): Retrieve account-wide video stats. Get statistics like the number of video loads, plays, and hours watched for the entire account. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Event](https://docs.wistia.com/reference/get_stats-events-eventkey.md): Retrieve information for a single event. Please note that due to our data retention policy, only events from the last 2 years are available. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [List Events](https://docs.wistia.com/reference/get_stats-events.md): Retrieve a list of events. Please note that due to our data retention policy, only events from the last 2 years are available. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Stats by Date](https://docs.wistia.com/reference/get_stats-medias-mediaid-by-date.md): Retrieve stats for a media organized by day, between a start and end date paramater (inclusive). If start and end date are not provided, defaults to yesterday and today. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Engagement](https://docs.wistia.com/reference/get_stats-medias-mediaid-engagement.md): Retrieve engagement data for a video. This endpoint provides engagement data for a specific video identified by its media-id. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Media Stats](https://docs.wistia.com/reference/get_stats-medias-mediaid.md): Retrieve stats for a video. This endpoint provides statistics for a specific video identified by its media-id. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Project Stats](https://docs.wistia.com/reference/get_stats-projects-projectid.md): Retrieve stats for a project. This endpoint provides statistics for a specific project identified by its project-id. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Show Visitor](https://docs.wistia.com/reference/get_stats-visitors-visitorkey.md): This endpoint provides detailed information about a specific visitor. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [List Visitors](https://docs.wistia.com/reference/get_stats-visitors.md): This endpoint provides a list of visitors that have watched videos in your account. ## Requires api token with one of the following permissions ``` Read detailed stats ``` - [Getting Started with the Upload API](https://docs.wistia.com/reference/getting-started-with-the-upload-api-1.md) - [Update thumbnails via Upload API](https://docs.wistia.com/reference/update-thumbnails-via-upload-api.md): Use the upload API's thumbnail route to programmatically update thumbnails with a single request. - [Upload or Import Media](https://docs.wistia.com/reference/post_.md): Endpoint to upload media files from a local system or import from a web URL. - Use `multipart/form-data` with a `file` parameter to upload from local system - Use `application/x-www-form-urlencoded` with a `url` parameter to import from web URL - [Upload via S3 Copy](https://docs.wistia.com/reference/upload-via-s3-copy.md) ## Recipes - [Bulk Customizations](https://docs.wistia.com/recipes/bulk-customizations.md) - [Bulk Order Captions](https://docs.wistia.com/recipes/bulk-order-captions.md) - [Bulk Upload](https://docs.wistia.com/recipes/bulk-upload.md) - [Calculate Bulk Duration](https://docs.wistia.com/recipes/calculate-bulk-duration.md) - [Create Tag and Apply to Multiple Medias](https://docs.wistia.com/recipes/create-tag-and-apply-to-multiple-medias.md) - [Embed a Wistia Video](https://docs.wistia.com/recipes/embed-a-wistia-video.md) - [Get All Medias Including Tags](https://docs.wistia.com/recipes/get-all-medias-including-tags.md) - [[Vulcan] Player Progress Tracker](https://docs.wistia.com/recipes/player-api-progress-tracker.md) - [Retrieve a list of hashed_ids [Windows]](https://docs.wistia.com/recipes/retrieve-a-list-of-hashed_ids-windows.md) - [Rewind Only Demo](https://docs.wistia.com/recipes/rewind-only-demo.md) - [Upload Form Demo](https://docs.wistia.com/recipes/upload-form-demo.md) ## Changelog - [Improved webhooks page](https://docs.wistia.com/changelog/improved-webhooks-page.md) - [API versioning](https://docs.wistia.com/changelog/api-versioning.md) - [MCP server](https://docs.wistia.com/changelog/mcp-server.md) - [Live Stream Events (Webinars)](https://docs.wistia.com/changelog/live-stream-events.md) - [Swap](https://docs.wistia.com/changelog/swap.md)