为超过 100 万开发者提供专业的 免费API 服务

一、接口简介
ALAPI短视频解析接口支持抖音、快手、小红书等主流平台,帮助开发者快速获取短视频真实地址。本教程将使用PHP语言演示如何调用该接口。
二、准备工作
1. 获取API凭证
- 访问 ALAPI官网 注册账号
- 进入「控制台」->「数据中心」-> [token管理] 获取 Token
2. 环境要求
- PHP 7.0+
- 开启cURL扩展
- 服务器可访问外网
三、快速开始
1. 基础代码示例
<?php
// 配置参数
$apiUrl = "https://v3.alapi.cn/api/video/url";
$token = "你的Token"; // 替换成实际Token
$videoUrl = "https://www.bilibili.com/video/BV12SkuYUEz9/";
// 初始化cURL
$ch = curl_init();
curl_setopt_array($ch, [
    CURLOPT_URL => $apiUrl . "?url=" . urlencode($videoUrl),
    CURLOPT_HTTPHEADER => ["Token: $token"],
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_SSL_VERIFYPEER => false
]);
// 发送请求
$response = curl_exec($ch);
if(curl_errno($ch)){
    die("请求失败: ".curl_error($ch));
}
curl_close($ch);
// 解析响应
$result = json_decode($response, true);
if($result['code'] == 200){
    echo "视频标题:" . $result['data']['title'] . "\n";
    echo "视频地址:" . $result['data']['video_url'];
} else {
    echo "解析失败:" . $result['msg'];
}
?>
2. 参数说明
| 参数 | 位置 | 必填 | 说明 | 
|---|---|---|---|
| token | Header | 是 | 身份验证令牌 | 
| url | Query | 是 | 短视频分享链接(需URL编码) | 
四、响应处理
成功响应示例
{
    "code": 200,
    "msg": "success",
    "data": {
        "title": "示例视频标题",
        "video_url": "https://real.video.url.mp4",
        "cover_url": "",
        "type": 1
    },
    "time": 1736180852
}
关键字段说明
- code: 200表示成功,其他值为错误码
- video_url: 可直接下载的视频地址(可能有时效性)
- type: 1=视频,2=图集(需结合pics字段)
五、错误处理
常见错误码
| 状态码 | 说明 | 
|---|---|
| 400 | 公共异常 | 
| 500 | 服务内部系统故障 | 
| 422 | 请求参数错误 | 
| 422 | 请求参数错误 | 
| 405 | 该接口只支持 请求方法 | 
| 404 | 接口地址不存在 | 
| 10001 | token秘钥不能为空 | 
| 10002 | token秘钥错误 | 
| 10003 | 账号不可用 | 
| 10004 | 未申请【】接口,请先申请后再使用 | 
| 10005 | 接口剩余可用次数不足,请充值 | 
| 429 | 请求次数过多,请稍后再试 | 
| 10006 | IP不被允许访问,请检查白名单 | 
| 10007 | Referer来源不被允许访问,请检查白名单 | 
| 10008 | token被禁用,如需要使用请启用该Token | 
| 10009 | 该token无【】接口权限,请先授权 | 
| 10010 | 该接口每日请求次数已使用完,如需继续使用请升级更高级会员 | 
| 10011 | 接口暂不可用 | 
| 10012 | 该接口为会员接口,请升级会员后使用 | 
异常处理建议
// 在请求代码后添加
if(!$response){
die("接口请求超时,请检查网络连接");
}
$result = json_decode($response, true);
if(json_last_error() !== JSON_ERROR_NONE){
die("响应解析失败:".json_last_error_msg());
}


