API Docs

视频去水印 API 文档

神机阁 API 使用 HTTP JSON 调用。服务端提交公开分享链接,接口返回无水印视频地址或图集地址。 请不要在浏览器前端、小程序前端、App 客户端里直接暴露 API Key。

推荐流程:注册账号 → 创建应用 → 复制 App ID 和 API Key → 服务端调用接口。

鉴权方式

每个应用都有一个 App ID 和一个 API Key。App ID 可以公开,API Key 必须保密。

X-App-Id: YOUR_APP_ID
X-Api-Key: YOUR_API_KEY
Content-Type: application/json

解析接口

提交短视频分享链接。支持整段分享文案,服务会自动提取其中的链接。

POST https://shenjige.xyz/v1/original-url

{
  "share_url": "8.23 复制打开抖音,看看... https://v.douyin.com/xxxx/"
}

如果是豆包视频,也可以直接提交 video_id。

POST https://shenjige.xyz/v1/original-url

{
  "video_id": "v0xxxx"
}

返回字段

视频类内容会返回 original_url。部分平台下载时建议携带 download_headers。

{
  "ok": true,
  "platform": "douyin",
  "source": "share_url",
  "media_type": "video",
  "title": "视频标题",
  "original_url": "https://...",
  "download_headers": {
    "Referer": "https://...",
    "User-Agent": "Mozilla/5.0 ..."
  }
}

图集类内容会返回 image_urls 和 image_count。

{
  "ok": true,
  "platform": "xiaohongshu",
  "media_type": "image",
  "image_count": 6,
  "image_urls": [
    "https://...",
    "https://..."
  ],
  "original_url": "https://..."
}

示例代码

curl 示例:

curl -X POST "https://shenjige.xyz/v1/original-url" \
  -H "Content-Type: application/json" \
  -H "X-App-Id: YOUR_APP_ID" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -d '{"share_url":"https://v.douyin.com/xxxx/"}'

Node.js 示例:

const res = await fetch("https://shenjige.xyz/v1/original-url", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "X-App-Id": process.env.SHENJIGE_APP_ID,
    "X-Api-Key": process.env.SHENJIGE_API_KEY
  },
  body: JSON.stringify({
    share_url: "https://v.douyin.com/xxxx/"
  })
});

const data = await res.json();
console.log(data.original_url || data.image_urls);

Python 示例:

import os
import requests

resp = requests.post(
    "https://shenjige.xyz/v1/original-url",
    headers={
        "Content-Type": "application/json",
        "X-App-Id": os.environ["SHENJIGE_APP_ID"],
        "X-Api-Key": os.environ["SHENJIGE_API_KEY"],
    },
    json={"share_url": "https://v.douyin.com/xxxx/"},
    timeout=120,
)

data = resp.json()
print(data.get("original_url") or data.get("image_urls"))

PHP 示例:

<?php
$payload = json_encode([
  "share_url" => "https://v.douyin.com/xxxx/"
], JSON_UNESCAPED_UNICODE);

$ch = curl_init("https://shenjige.xyz/v1/original-url");
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json",
    "X-App-Id: " . getenv("SHENJIGE_APP_ID"),
    "X-Api-Key: " . getenv("SHENJIGE_API_KEY"),
  ],
  CURLOPT_POSTFIELDS => $payload,
  CURLOPT_TIMEOUT => 120,
]);

$body = curl_exec($ch);
curl_close($ch);
echo $body;
?>

错误码

400链接格式错误、暂不支持该平台或没有找到可解析媒体
401缺少 App ID / API Key,或密钥不正确
402调用次数不足,请充值后继续使用
403应用已停用,或免费体验次数已用完
429请求过于频繁,请降低调用频率
500系统繁忙,请稍后再试
{
  "ok": false,
  "error_code": "quota_exhausted",
  "message": "调用次数不足,请充值后继续使用。"
}

计费和注意事项

解析成功才扣次数,失败请求不扣额度。
请仅处理自己拥有或已获得授权的视频内容。不要把 API Key 写进网页前端代码。