POST
https://spideriq.ai
/
api
/
v1
/
media
/
videos
/
import
Import Video
curl --request POST \
  --url https://spideriq.ai/api/v1/media/videos/import \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "<string>",
  "title": "<string>",
  "description": "<string>",
  "privacy": 123
}
'
{
  "success": true,
  "video_id": 123,
  "title": "Product Demo",
  "description": "Our product demonstration video",
  "watch_url": "https://videos.spideriq.ai/w/abc123xyz",
  "embed_url": "https://videos.spideriq.ai/videos/embed/abc123xyz",
  "channel_name": "client_cli_abc123",
  "privacy": 2,
  "state": "importing"
}
Import a video from a URL to your dedicated PeerTube channel. Supports YouTube, Vimeo, direct video URLs, and other supported platforms.

Request

url
string
required
Video URL to import (YouTube, Vimeo, direct link, etc.)
title
string
Video title (defaults to extracted title from source)
description
string
Video description
privacy
integer
default:"2"
Privacy setting:
  • 1 = Public (visible to everyone)
  • 2 = Unlisted (accessible via link only)
  • 3 = Private (only you can view)

Response

success
boolean
Whether the import was initiated
video_id
integer
PeerTube video ID
title
string
Video title
watch_url
string
URL to watch the video
embed_url
string
URL for embedding the video
channel_name
string
Your PeerTube channel name

Example

curl -X POST "https://spideriq.ai/api/v1/media/videos/import" \
  -H "Authorization: Bearer cli_abc123:sk_xxx:secret_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://youtube.com/watch?v=dQw4w9WgXcQ",
    "title": "Product Demo",
    "description": "Our product demonstration video",
    "privacy": 2
  }'
{
  "success": true,
  "video_id": 123,
  "title": "Product Demo",
  "description": "Our product demonstration video",
  "watch_url": "https://videos.spideriq.ai/w/abc123xyz",
  "embed_url": "https://videos.spideriq.ai/videos/embed/abc123xyz",
  "channel_name": "client_cli_abc123",
  "privacy": 2,
  "state": "importing"
}
Video imports may take several minutes depending on the source video size. The video will be in “importing” state until processing completes.