接口说明

利用蒲公英提供的接口,第三方开发者可以把蒲公英提供的应用上传托管、安装等功能,接入到自己的应用中,并且可以根据数据接口,获取蒲公英提供的各种应用数据,以方便开发者更容易的进行内测应用的分发。


  1. 除特别说明,所有数据API的请求方式均为HTTP POST方式。
  2. 获取图片等资源文件接口的请求方式为HTTP GET
  3. API接口返回数据格式为JSON。
  4. 所有接口请求时,必须包含参数_api_key,以便识别接口身份。 点击获取_api_key

常规参数说明

参数 别称 说明
_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.pgyer.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);
print_r($jsonData);

上传App

通过该接口,开发者可以直接上传 App 到蒲公英。上传时,请使用 HTTP POST 方式,其中 enctype 为 "multipart/form-data"

API地址

POST https://qiniu-storage.pgyer.com/apiv1/app/upload

POST参数

参数 类型 说明
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 (选填) 版本更新描述,请传空字符串,或不传。

返回数据

参数 类型 说明
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,访问地址为 http://o1wh05aeh.qnssl.com/image/view/app_icons/[应用的Icon图标key]
appDescription String 应用介绍
appUpdateDescription String 应用更新说明
appScreenShots String 应用截图的key,获取地址为 http://o1whyeemo.qnssl.com/image/view/app_screenshots/[应用截图的key]
appShortcutUrl String 应用短链接
appQRCodeURL String 应用二维码地址
appCreated String 应用上传时间
appUpdated String 应用更新时间

上传App示例

使用Linux下的crul命令上传App示例:

curl -F "file=@/tmp/example.ipa" -F "uKey=" -F "_api_key=" https://qiniu-storage.pgyer.com/apiv1/app/upload

请根据开发者自己的账号,将其中的 uKey 和 _api_key 的值替换为相应的值。

安装App

通过该接口可以直接使用手机安装 App,请使用 HTTP GET 方式。该接口仅在手机上可用,使用手机浏览器请求该地址即可开始安装。

API地址

GET http://www.pgyer.com/apiv1/app/install

GET参数

参数 说明
aKey App Key (App Key是唯一标识应用的索引ID,可以通过短链接接口获取,或者我的应用接口获取)
_api_key API Key 点击获取_api_key
password (选填) 当应用需要安装密码时,请传入应用安装密码

返回数据

接口会根据应用的类型(iOS或Android),自动使用相应的的安装方式来安装应用。

示例代码

http://www.pgyer.com/apiv1/app/install?_api_key=&aKey=f3c7897cf8ac70a3d345699ef6e1584d&password=123456

iOS应用内安装

iOS应用内安装接口,可以实现用户安装应用时,无需打开浏览器,即可直接安装的效果。接口地址:

itms-services://?action=download-manifest&url=https://www.pgyer.com/app/plist/{aKey}

请将其中的{aKey}换成App的Key,不包含大括号。

示例代码

Web:

<a href="itms-services://?action=dpwnload-manifest&url=https://www.pgyer.com/app/plist/f3c7897cf8ac70a3d345699ef6e1584d>安装</a>
iOS:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-services://?action=download-manifest&url=https://www.pgyer.com/app/plist/f3c7897cf8ac70a3d345699ef6e1584d"]];
或者:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.pgyer.com/apiv1/app/install?_api_key=&aKey=f3c7897cf8ac70a3d345699ef6e1584d&password=123456"]];

获取App详细信息

该接口可以获取某个 App 的某个具体版本的详细信息。

API地址

POST http://www.pgyer.com/apiv1/app/view

POST参数

参数 类型 说明
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,访问地址为 http://o1wh05aeh.qnssl.com/image/view/app_icons/[应用的Icon图标key]
appDescription String 应用介绍
appUpdateDescription String 应用更新说明
appScreenShots String 应用截图的key,获取地址为 http://o1whyeemo.qnssl.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,访问地址为:http://o1whyeemo.qnssl.com/image/view/comment_screenshot/[反馈中的截图key]
appBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
appIdentifier Integer 应用程序包名,iOS为BundleId,Android为包名
appCreated Integer 应用上传时间
appUpdated Integer 应用更新时间

获取App组详细信息

同一个 App 的不同版本,蒲公英会将它们合并起来,形成一个 App 的集合,这个集合我们称之为一个"App组"。对于一个"App组",会有一个唯一的 App Id 与之对应。该接口用来获取 App 组的详细信息。

API地址

POST http://www.pgyer.com/apiv1/app/viewGroup

POST参数

参数 类型 说明
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,访问地址为 http://o1wh05aeh.qnssl.com/image/view/app_icons/[应用的Icon图标key]
appDescription String 应用介绍
appUpdateDescription String 应用更新说明
appScreenShots String 应用截图的key,获取地址为 http://o1whyeemo.qnssl.com/image/view/app_screenshots/[应用截图的key]
appShortcutUrl String 应用短链接
appQRCodeURL String 应用二维码地址
appCreated String 应用上传时间
appUpdated String 应用更新时间

修改App详细信息

API地址

POST http://www.pgyer.com/apiv1/app/update

POST参数

参数 类型 说明
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,访问地址为 http://o1wh05aeh.qnssl.com/image/view/app_icons/[应用的Icon图标key]
appDescription String 应用介绍
appUpdateDescription String 应用更新说明
appScreenShots String 应用截图的key,获取地址为 http://o1whyeemo.qnssl.com/image/view/app_screenshots/[应用截图的key]
appShortcutUrl String 应用短链接
appQRCodeURL String 应用二维码地址
appCreated String 应用上传时间
appUpdated String 应用更新时间

获取App所有版本

API地址

POST http://www.pgyer.com/apiv1/app/builds

POST参数

参数 类型 说明
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,访问地址为 http://o1wh05aeh.qnssl.com/image/view/app_icons/[应用的Icon图标key]
appCreated String 应用上传时间

上传App截图

API地址

POST http://www.pgyer.com/apiv1/app/uploadScreenshot

POST参数

参数 类型 说明
aKey String App Key (App Key是唯一标识应用的索引ID,可以通过短链接接口获取,或者我的应用接口获取)
_api_key String API Key 点击获取_api_key
image File 需要上传的截图,最大可以上传5张

返回数据

返回参数 类型 说明
keys String App上传后所有的截图key(逗号分开),获取地址为 http://o1whyeemo.qnssl.com/image/view/app_screenshots/[应用截图的key]

验证App短链接

API地址

POST http://www.pgyer.com/apiv1/app/getAppKeyByShortcut

POST参数

参数 类型 说明
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 应用上传时间

查看自己上传的应用

API地址

POST http://www.pgyer.com/apiv1/user/listMyPublished

POST参数

参数 类型 说明
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,访问地址为 http://o1wh05aeh.qnssl.com/image/view/app_icons/[应用的Icon图标key]
appCreated String 应用上传时间

列出用户的App分组

这里说的分组,指的是开发者在「应用管理」-「我的分组」中设置的App分组。

API地址

POST http://www.pgyer.com/apiv1/userAppGroup/listAll

POST参数

参数 类型 说明
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分组的详细信息,同时也返回这个分组里面包含的App信息(只列出最新版本)。

API地址

POST http://www.pgyer.com/apiv1/userAppGroup/view

POST参数

参数 类型 说明
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信息(返回最新版本信息)

查看App反馈信息列表

API地址

POST http://www.pgyer.com/apiv1/feedback/listAll

POST参数

参数 类型 说明
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 反馈创建时间

查看App反馈信息详情

API地址

POST http://www.pgyer.com/apiv1/feedback/view

POST参数

参数 类型 说明
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 反馈创建时间

查看应用Crash Log 列表

API地址

POST http://www.pgyer.com/apiv1/crash/listAll

POST参数

参数 类型 说明
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 创建时间

查看应用Crash Log 详情

API地址

POST http://www.pgyer.com/apiv1/crash/view

POST参数

参数 类型 说明
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 创建时间