蒲公英文档中心
利用蒲公英提供的接口,第三方开发者可以把蒲公英提供的应用上传托管、安装等功能,接入到自己的应用中,并且可以根据数据接口,获取蒲公英提供的各种应用数据,以方便开发者更容易的进行内测应用的分发。
参数 | 别称 | 说明 |
---|---|---|
_api_key | API Key | API Key,用来识别API调用者的身份,如不特别说明,每个接口中都需要含有此参数。对于同一个蒲公英的注册用户来说,这个值是固定的。点击获取_api_key |
uKey | User Key | 用户Key,用来标识当前用户的身份,对于同一个蒲公英的注册用户来说,这个值是固定的。 点击获取_ukey |
aId | App Id | 表示一个App组的唯一ID。例如,名称为"微信"的App上传了三个版本,那么这三个版本为一个App组,该参数表示这个组的ID。这个值可以在应用管理后台中看到。 |
aKey | App Key | 代表一个具体的App的唯一标识。例如,名称为"微信"的App上传了三个版本,那么这三个版本具有不同的 aKey,这个值一般是通过其他接口返回的。 |
PHP调用接口示例(查看广场的应用):
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://www.xcxwo.com/apiv1/app/listAll');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, 'type=ios&_api_key=请登录,登录成功后即可查看&page=1');
$response = curl_exec($curl);
if (curl_errno($curl)) {
echo curl_error($curl);
}
curl_close($curl);
$jsonData = json_decode($response, true);
// output $jsonData ...
通过该接口,开发者可以直接上传 App 到蒲公英。上传时,请使用 HTTP POST 方式,其中 enctype 为 "multipart/form-data"
POST http://upload.xcxwo.com/apiv1/app/upload
参数 | 类型 | 说明 |
---|---|---|
uKey | String | (必填) 用户Key 点击获取_ukey |
_api_key | String | (必填) API Key 点击获取_api_key |
file | File | (必填) 需要上传的ipa或者apk文件 |
installType | Integer | (选填)应用安装方式,值为(1,2,3)。1:公开,2:密码安装,3:邀请安装。默认为1公开 |
password | String | (选填) 设置App安装密码,如果不想设置密码,请传空字符串,或不传。 |
updateDescription | String | (选填) 版本更新描述,请传空字符串,或不传。 |
channelShortcut | String | (选填)所需更新的指定渠道的下载短链接,只可指定一个渠道,字符串型,如:abcd。 |
参数 | 类型 | 说明 |
---|---|---|
appKey | String | App Key |
userKey | String | User Key |
appType | Integer | 应用类型(1:iOS; 2:Android) |
appIsFirst | Integer | 是否是第一个App(1:是; 2:否) |
appIsLastest | Integer | 是否是最新版(1:是; 2:否) |
appFileSize | Integer | App 文件大小 |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appVersionNo | Integer | 适用于Android的版本编号,iOS始终为0 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
appIcon | String | 应用的Icon图标key,访问地址为 https://www.xcxwo.com/image/view/app_icons/[应用的Icon图标key] |
appDescription | String | 应用介绍 |
appUpdateDescription | String | 应用更新说明 |
appScreenShots | String | 应用截图的key,获取地址为 https://www.xcxwo.com/image/view/app_screenshots/[应用截图的key] |
appShortcutUrl | String | 应用短链接 |
appQRCodeURL | String | 应用二维码地址 |
appCreated | String | 应用上传时间 |
appUpdated | String | 应用更新时间 |
使用Linux下的crul命令上传App示例:
curl -F "file=@/tmp/example.ipa" -F "uKey=请登录,登录成功后即可查看" -F "_api_key=请登录,登录成功后即可查看" http://upload.xcxwo.com/apiv1/app/upload
请根据开发者自己的账号,将其中的 uKey 和 _api_key 的值替换为相应的值。
通过该接口可以直接使用手机安装 App,请使用 HTTP GET 方式。该接口仅在手机上可用,使用手机浏览器请求该地址即可开始安装。
GET http://www.xcxwo.com/apiv1/app/install
参数 | 说明 |
---|---|
aKey | App Key (App Key是唯一标识应用的索引ID,可以通过短链接接口获取,或者我的应用接口获取) |
_api_key | API Key 点击获取_api_key |
password | (选填) 当应用需要安装密码时,请传入应用安装密码 |
接口会根据应用的类型(iOS或Android),自动使用相应的的安装方式来安装应用。
http://www.xcxwo.com/apiv1/app/install?_api_key=请登录,登录成功后即可查看&aKey=f3c7897cf8ac70a3d345699ef6e1584d&password=123456
iOS应用内安装接口,可以实现用户安装应用时,无需打开浏览器,即可直接安装的效果。接口地址:
itms-services://?action=download-manifest&url=https://www.xcxwo.com/app/plist/{aKey}
请将其中的{aKey}
换成App的Key,不包含大括号。
Web:
<a href="itms-services://?action=download-manifest&url=https://www.xcxwo.com/app/plist/f3c7897cf8ac70a3d345699ef6e1584d>安装</a>iOS:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-services://?action=download-manifest&url=https://www.xcxwo.com/app/plist/f3c7897cf8ac70a3d345699ef6e1584d"]];或者:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.xcxwo.com/apiv1/app/install?_api_key=请登录,登录成功后即可查看&aKey=f3c7897cf8ac70a3d345699ef6e1584d&password=123456"]];
该接口可以获取某个 App 的某个具体版本的详细信息。
POST http://www.xcxwo.com/apiv1/app/view
参数 | 类型 | 说明 |
---|---|---|
aKey | String | (App Key是唯一标识应用的索引ID,可以通过短链接接口获取,或者我的应用接口获取) |
uKey | String | (选填) 用户Key点击获取_ukey |
_api_key | String | API Key 点击获取_api_key |
应用详情返回参数 | 类型 | 说明 |
---|---|---|
appKey | String | App Key |
userKey | String | User Key |
appType | Integer | 应用类型(1:iOS; 2:Android) |
appIsFirst | Integer | 是否是第一个App(1:是; 2:否) |
appIsLastest | Integer | 是否是最新版(1:是; 2:否) |
appFileSize | Integer | App 文件大小 |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appVersionNo | Integer | 适用于Android的版本编号,iOS始终为0 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
appIcon | String | 应用的Icon图标key,访问地址为 https://www.xcxwo.com/image/view/app_icons/[应用的Icon图标key] |
appDescription | String | 应用介绍 |
appUpdateDescription | String | 应用更新说明 |
appScreenShots | String | 应用截图的key,获取地址为 https://www.xcxwo.com/image/view/app_screenshots/[应用截图的key] |
appShortcutUrl | String | 应用短链接 |
appQRCodeURL | String | 应用二维码地址 |
appCreated | String | 应用上传时间 |
appUpdated | String | 应用更新时间 |
历史版本返回参数 | 类型 | 说明 |
---|---|---|
appKey | String | App Key |
userKey | String | User Key |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appCreated | String | 应用上传时间 |
appUpdated | String | 应用更新时间 |
应用反馈返回参数 | 类型 | 说明 |
---|---|---|
userKey | Integer | User Key |
commentContent | Integer | 反馈内容 |
commentImageKeys | Integer | 反馈中的截图key,访问地址为:https://www.xcxwo.com/image/view/comment_screenshot/[反馈中的截图key] |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | Integer | 应用程序包名,iOS为BundleId,Android为包名 |
appCreated | Integer | 应用上传时间 |
appUpdated | Integer | 应用更新时间 |
同一个 App 的不同版本,蒲公英会将它们合并起来,形成一个 App 的集合,这个集合我们称之为一个"App组"。对于一个"App组",会有一个唯一的 App Id 与之对应。该接口用来获取 App 组的详细信息。
POST http://www.xcxwo.com/apiv1/app/viewGroup
参数 | 类型 | 说明 |
---|---|---|
aId | String | App Id |
_api_key | String | API Key 点击获取_api_key |
应用详情返回参数 | 类型 | 说明 |
---|---|---|
appKey | String | App Key |
appType | Integer | 应用类型(1:iOS; 2:Android) |
appIsFirst | Integer | 是否是第一个App(1:是; 2:否) |
appIsLastest | Integer | 是否是最新版(1:是; 2:否) |
appFileSize | Integer | App 文件大小 |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appVersionNo | Integer | 适用于Android的版本编号,iOS始终为0 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
appIcon | String | 应用的Icon图标key,访问地址为 https://www.xcxwo.com/image/view/app_icons/[应用的Icon图标key] |
appDescription | String | 应用介绍 |
appUpdateDescription | String | 应用更新说明 |
appScreenShots | String | 应用截图的key,获取地址为 https://www.xcxwo.com/image/view/app_screenshots/[应用截图的key] |
appShortcutUrl | String | 应用短链接 |
appQRCodeURL | String | 应用二维码地址 |
appCreated | String | 应用上传时间 |
appUpdated | String | 应用更新时间 |
POST http://www.xcxwo.com/apiv1/app/update
参数 | 类型 | 说明 |
---|---|---|
aKey | String | App Key (App Key是唯一标识应用的索引ID,可以通过短链接接口获取,或者我的应用接口获取) |
uKey | String | 用户Key点击获取_ukey |
_api_key | String | API Key 点击获取_api_key |
appName | String | (选填) 应用名称 |
appShortcutUrl | String | (选填) 应用短链接地址 |
appUpdateDescription | String | (选填,传值为空则更新为空) 应用更新说明 |
appDescription | String | (选填,传值为空则更新为空) 应用说明 |
appPassword | String | (选填,传值为空则更新为空) 设置应用密码 |
appVersion | String | (选填) 应用版本信息 |
appScreenshots | String | (选填,传值为空则更新为空) 应用截图Key |
返回参数 | 类型 | 说明 |
---|---|---|
appKey | String | App Key |
userKey | String | User Key |
appType | Integer | 应用类型(1:iOS; 2:Android) |
appIsFirst | Integer | 是否是第一个App(1:是; 2:否) |
appIsLastest | Integer | 是否是最新版(1:是; 2:否) |
appFileSize | Integer | App 文件大小 |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appVersionNo | Integer | 适用于Android的版本编号,iOS始终为0 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
appIcon | String | 应用的Icon图标key,访问地址为 https://www.xcxwo.com/image/view/app_icons/[应用的Icon图标key] |
appDescription | String | 应用介绍 |
appUpdateDescription | String | 应用更新说明 |
appScreenShots | String | 应用截图的key,获取地址为 https://www.xcxwo.com/image/view/app_screenshots/[应用截图的key] |
appShortcutUrl | String | 应用短链接 |
appQRCodeURL | String | 应用二维码地址 |
appCreated | String | 应用上传时间 |
appUpdated | String | 应用更新时间 |
POST http://www.xcxwo.com/apiv1/app/builds
参数 | 类型 | 说明 |
---|---|---|
aId | String | App Id |
page | Integer | 历史版本分页页数 |
_api_key | String | API Key 点击获取_api_key |
返回参数 | 类型 | 说明 |
---|---|---|
appKey | String | 返回应用最新build的App Key |
appType | Integer | 应用类型(1:iOS; 2:Android) |
appFileSize | Integer | App 文件大小 |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appVersionNo | Integer | 适用于Android的版本编号,iOS始终为0 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
appIcon | String | 应用的Icon图标key,访问地址为 https://www.xcxwo.com/image/view/app_icons/[应用的Icon图标key] |
appCreated | String | 应用上传时间 |
POST http://www.xcxwo.com/apiv1/app/uploadScreenshot
参数 | 类型 | 说明 |
---|---|---|
aKey | String | App Key (App Key是唯一标识应用的索引ID,可以通过短链接接口获取,或者我的应用接口获取) |
_api_key | String | API Key 点击获取_api_key |
image | File | 需要上传的截图,最大可以上传5张 |
返回参数 | 类型 | 说明 |
---|---|---|
keys | String | App上传后所有的截图key(逗号分开),获取地址为 https://www.xcxwo.com/image/view/app_screenshots/[应用截图的key] |
POST http://www.xcxwo.com/apiv1/app/getAppKeyByShortcut
参数 | 类型 | 说明 |
---|---|---|
shortcut | String | 应用短链接,例如pgyer.com/PgY8,只需要传入PgY8参数即可 |
_api_key | String | API Key 点击获取_api_key |
应用详情返回参数 | 类型 | 说明 |
---|---|---|
appKey | String | 返回应用最新build的App Key |
appType | Integer | 应用类型(1:iOS; 2:Android) |
appFileName | String | 上传的应用文件名 |
appFileSize | Integer | App 文件大小 |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appVersionNo | Integer | 适用于Android的版本编号,iOS始终为0 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
appCreated | String | 应用上传时间 |
POST http://www.xcxwo.com/apiv1/user/listMyPublished
参数 | 类型 | 说明 |
---|---|---|
uKey | String | 用户Key点击获取_ukey |
page | Integer | (选填) 填写数字页数 |
_api_key | String | API Key 点击获取_api_key |
返回参数 | 类型 | 说明 |
---|---|---|
appKey | String | 返回应用最新build的App Key |
appType | Integer | 应用类型(1:iOS; 2:Android) |
appFileSize | Integer | App 文件大小 |
appName | String | 应用名称 |
appVersion | String | 版本号 |
appVersionNo | Integer | 适用于Android的版本编号,iOS始终为0 |
appBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
appIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
appIcon | String | 应用的Icon图标key,访问地址为 https://www.xcxwo.com/image/view/app_icons/[应用的Icon图标key] |
appCreated | String | 应用上传时间 |
这里说的分组,指的是开发者在「应用管理」-「我的分组」中设置的App分组。
POST http://www.xcxwo.com/apiv1/userAppGroup/listAll
参数 | 类型 | 说明 |
---|---|---|
uKey | String | 用户Key点击获取_ukey |
_api_key | String | API Key 点击获取_api_key |
返回参数 | 类型 | 说明 |
---|---|---|
userAppGroupName | String | App分组名称 |
userAppGroupKey | String | App分组唯一标识Key |
userAppGroupShortcutURL | String | App分组的短链接 |
userAppGroupDescription | String | App分组的描述 |
userAppGroupCount | String | App分组中App的数量 |
userAppCreated | String | App分组的创建时间 |
这里说的分组,指的是开发者在「应用管理」-「我的分组」中设置的App分组。
这个接口会返回某个App分组的详细信息,同时也返回这个分组里面包含的App信息(只列出最新版本)。
POST http://www.xcxwo.com/apiv1/userAppGroup/view
参数 | 类型 | 说明 |
---|---|---|
userAppGroupKey | String | 用户App分组的Key。可以通过 userAppGroup/view 接口获取。 |
_api_key | String | API Key 点击获取_api_key |
返回参数 | 类型 | 说明 |
---|---|---|
userAppGroupName | String | App分组名称 |
userAppGroupKey | String | App分组唯一标识Key |
userAppGroupShortcutURL | String | App分组的短链接 |
userAppGroupDescription | String | App分组的描述 |
userAppGroupCount | String | App分组中App的数量 |
userAppCreated | String | App分组的创建时间 |
apps | Array | 包含的app信息(返回最新版本信息) |
POST http://www.xcxwo.com/apiv1/feedback/listAll
参数 | 类型 | 说明 |
---|---|---|
aId | String | App Id |
_api_key | String | API Key 点击获取_api_key |
page | Integer | 分页页数 |
返回参数 | 类型 | 说明 |
---|---|---|
feedBackContent | String | 反馈内容 |
feedBackImages | Array | 反馈信息中图片地址 |
feedBackVoice | String | 录音文件地址 |
feedBackFrom | String | 反馈信息来源 |
feedbackProcess | Integer | 反馈处理状态(1:已处理; 2:未处理) |
feedBackCreated | String | 反馈创建时间 |
POST http://www.xcxwo.com/apiv1/feedback/view
参数 | 类型 | 说明 |
---|---|---|
aId | String | App Id | feedbackKey | String | 反馈信息的Key,可以通过feedbackListAll接口得到 |
_api_key | String | API Key 点击获取_api_key |
返回参数 | 类型 | 说明 |
---|---|---|
feedBackContent | String | 反馈内容 |
feedBackImages | Array | 反馈信息中图片地址 |
feedBackVoice | String | 录音文件地址 |
feedBackDeviceName | String | 设备名称 |
feedBackOSVersion | String | 手机系统版本 |
feedBackOSType | Integer | 手机系统类型(1:iOS; 2:Android) |
feedBackOSJailBroken | Integer | 手机是否越狱或ROOT(1:是; 2:否) |
feedBackFreeRam | String | 手机剩余内存大小 |
feedBackFreeSpace | String | 手机剩余磁盘空间大小 |
feedBackNetwork | String | 手机网络 |
feedBackSDKVersion | String | SDK 版本 |
feedBackFrom | String | 反馈信息来源 |
feedbackProcess | Integer | 反馈处理状态(1:已处理; 2:未处理) |
appType | Integer | 应用类型 (1:iOS; 2:Android) |
appName | String | 应用名称 |
feedBackCreated | String | 反馈创建时间 |
POST http://www.xcxwo.com/apiv1/crash/listAll
参数 | 类型 | 说明 |
---|---|---|
aId | String | App Id |
_api_key | String | API Key 点击获取_api_key |
page | Integer | 分页页数 |
返回参数 | 类型 | 说明 |
---|---|---|
sdkCrashGroupCount | Integer | Crash 数量 |
sdkCrashGroupTitle | String | Crash 标题 |
sdkCrashGroupPattern | String | Crash Pattern |
sdkCrashGroupDescribe | String | Crash 描述 |
sdkCrashGroupAppVersion | String | Crash App 版本 |
sdkCrashGroupProcess | String | Crash 处理状态 |
sdkCrashGroupId | Integer | CrashGroupId |
sdkCrashGroupCreated | String | Crash 创建时间 |
POST http://www.xcxwo.com/apiv1/crash/view
参数 | 类型 | 说明 |
---|---|---|
aId | String | App Id |
sdkCrashGroupId | Integer | sdkCrashGroupId, 可以通过crashListAll获得某条crash的sdkCrashGroupId |
_api_key | String | API Key 点击获取_api_key |
返回参数 | 类型 | 说明 |
---|---|---|
sdkCrashGroupLog | String | Crash Log |
sdkCrashGroupCount | Integer | Crash 数量 |
sdkCrashGroupTitle | String | Crash 标题 |
sdkCrashGroupPattern | String | Crash Pattern |
sdkCrashGroupDescribe | String | Crash 描述 |
sdkCrashGroupAppVersion | String | Crash App 版本 |
sdkCrashGroupIsSymbolicated | String | Crash Log 是否符号化 |
sdkCrashGroupIsReaded | String | Crash 是否已读 |
sdkCrashGroupProcess | String | Crash 处理状态 |
sdkCrashGroupViewStatus | String | Crash 查看状态 |
deviceAffectList | Array | 影响设备情况 |
sdkCrashGroupCreated | String | Crash 创建时间 |