Generate or locate an API access token with upload permissions from your Wistia account settings.
Prepare a multipart/form-data POST request to the Wistia upload API endpoint.
Include api_password (your access token) and file (the video file binary) as form fields; optionally include name, description, and project_id to organize the upload.
Send the request and parse the JSON response, which includes the media hashed_id, name, and status.
Use the hashed_id to reference the media in subsequent API calls (e.g., to update metadata or retrieve embed codes).
Monitor the media's status field via the Wistia Data API until processing is complete and the video is ready for playback.
Known gotchas
The API password must be included as a form field or via HTTP Basic Auth — not as a custom header; other authentication patterns will be rejected.
Large file uploads sent as a single multipart request may time out; for large files, consider using Wistia's URL-based ingestion option (passing a url parameter instead of file) to have Wistia fetch the video directly from a publicly accessible URL.
Uploaded media is placed in the Uncategorized project by default; use the project_id parameter to route uploads directly into the correct project.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp