Introduction

March 10, 2026

Introduction

The WayinVideo API enables everyone to integrate AI-powered video processing into their automation workflows. It is built to process videos of all lengths quickly, reliably, and efficiently, including hours-long videos, making it well suited for content pipelines across podcasts, gaming livestreams, webinars, tutorials, online courses, interviews, meetings, vlogs, citywalk footage, sports videos, ecommerce videos, product demos, and more. Submit a video URL or uploaded file, and receive AI-generated clips, summaries, transcripts, and more.

Key Capabilities

  • AI Clipping: Submit a video of any length and receive all clips ranked by viral potential, with auto-detected start/end timestamps, AI-generated titles, descriptions, and hashtags. Optionally export rendered clip videos.
  • Find Moments: Describe the moments you want in natural language — such as "funny moments" or "exciting goal moments" — and the API quickly finds and extracts matching clips with timestamps, titles, and descriptions from videos of all lengths, including hours-long videos. Optionally export rendered clip videos.
  • Video Summarization: Generate a structured overview, hashtags, and timeline highlights from videos of all lengths, including hours-long long-form content, with fast and stable processing.
  • Video Transcription: Extract transcripts with speaker identification from video or audio content.

Supported Video Sources

The API accepts URLs from the following platforms:

  • YouTube
  • Vimeo
  • Dailymotion
  • Kick
  • Rumble
  • Zoom
  • Twitch
  • TikTok
  • Facebook

More platforms are coming soon.

You can also use locally uploaded files. See the Upload API for details.

Base URL

All API requests are made to:

https://wayinvideo-api.wayin.ai/api/v2

Request Format

The API is RESTful and accepts JSON-formatted request bodies. All requests must include the following headers:

Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
x-wayinvideo-api-version: v2

Response Format

Success (HTTP 200)

When the request succeeds, the API returns HTTP status 200 and a JSON body containing only the payload in data:

{
  "data": {
    "project_id": "prj06928fdjqqaza",
    "name": "Sample project name",
    "status": "SUCCEEDED"
  }
}

The structure of data varies by endpoint; see each API’s documentation for details. For error responses and other HTTP status codes, see Status Codes.

Status Lifecycle

Many endpoints return an asynchronous processing status. The lifecycle is:

CREATED → QUEUED → ONGOING → SUCCEEDED / FAILED

Use polling to check the status until it reaches SUCCEEDED or FAILED. When a task fails, the response data includes an error_message field describing the reason.