蒲公英文档中心

API 2.0

接口说明

利用蒲公英提供的接口,第三方开发者可以把蒲公英提供的应用上传托管、安装等功能,接入到自己的应用中,并且可以根据数据接口,获取蒲公英提供的各种应用数据,以方便开发者更容易的进行内测应用的分发。
  1. 除特别说明,所有数据API的请求方式均为HTTP POST方式。
  2. 所有数据API的请求Header的content-type为application/x-www-form-urlencoded。
  3. 获取图片等资源文件接口的请求方式为HTTP GET。
  4. API接口返回数据格式为JSON。
  5. 所有接口请求时,必须包含参数_api_key,以便识别接口身份。 点击获取_api_key
蒲公英现已推出API 2.0,推荐开发者使用,API 1.0版本将不再维护和更新。

常规参数说明

参数 别称 说明
_api_key API Key API Key,用来识别API调用者的身份,如不特别说明,每个接口中都需要含有此参数。对于同一个蒲公英的注册用户来说,这个值在固定的。点击获取_api_key
userKey User Key 用户Key,用来标识当前用户的身份,对于同一个蒲公英的注册用户来说,这个值在固定的。 点击获取userKey
appKey App Key 表示一个App组的唯一Key。例如,名称为'微信'的App上传了三个版本,那么这三个版本为一个App组,该参数表示这个组的Key。这个值显示在应用详情--应用概述--App Key。
buildKey Build Key Build Key是唯一标识应用的索引ID,可以通过 获取App所有版本取得

示例代码

PHP调用接口示例(查看广场的应用):

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://www.pgyer.com/apiv2/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://www.pgyer.com/apiv2/app/upload

POST参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
file File (必填) 需要上传的ipa或者apk文件
buildInstallType Integer (必填)应用安装方式,值为(2,3)。2:密码安装,3:邀请安装
buildPassword String (必填) 设置App安装密码
buildUpdateDescription String (选填) 版本更新描述,请传空字符串,或不传。
buildName String (选填) 应用名称
buildInstallDate Interger (选填)是否设置安装有效期,值为:1 设置有效时间, 2 长期有效,如果不填写不修改上一次的设置
buildInstallStartDate String (选填)安装有效期开始时间,字符串型,如:2018-01-01
buildInstallEndDate String (选填)安装有效期结束时间,字符串型,如:2018-12-31
buildChannelShortcut String (选填)所需更新的指定渠道的下载短链接,只可指定一个渠道,字符串型,如:abcd

返回数据

参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildType Integer 应用类型(1:iOS; 2:Android)
buildIsFirst Integer 是否是第一个App(1:是; 2:否)
buildIsLastest Integer 是否是最新版(1:是; 2:否)
buildFileSize Integer App 文件大小
buildName String 应用名称
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNo String 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildIdentifier String 应用程序包名,iOS为BundleId,Android为包名
buildIcon String 应用的Icon图标key,访问地址为 https://appicon.pgyer.com/image/view/app_icons/[应用的Icon图标key]
buildDescription String 应用介绍
buildUpdateDescription String 应用更新说明
buildScreenShots String 应用截图的key,获取地址为 https://app-screenshot.pgyer.com/image/view/app_screenshots/[应用截图的key]
buildShortcutUrl String 应用短链接
buildQRCodeURL String 应用二维码地址
buildCreated String 应用上传时间
buildUpdated String 应用更新时间

上传App示例

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

curl -F 'file=@/tmp/example.ipa' -F '_api_key=' https://www.pgyer.com/apiv2/app/upload

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

安装App

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

API地址

GET https://www.pgyer.com/apiv2/app/install

GET参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
appKey String (选填, 但buildKey和appKey不能同时为空) App Key (值显示在应用详情—应用概述--App Key),也可以输入应用短链接。(安装最新版本)
buildKey String (选填, 但buildKey和appKey不能同时为空) Build Key (Build Key是唯一标识应用的索引ID,可以通过 获取App所有版本取得)(安装具体buildKey对应版本)
buildPassword String (选填) 当应用需要安装密码时,请传入应用安装密码

返回数据

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

示例代码

https://www.pgyer.com/apiv2/app/install?_api_key=&buildKey={buildKey}&buildPassword={buildPassword}

iOS应用内安装

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

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

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

示例代码

Web:

<a href="itms-services://?action=download-manifest&url=https://www.pgyer.com/app/plist/{buildKey}">安装</a>

iOS:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@'itms-services://?action=download-manifest&url=https://www.pgyer.com/app/plist/{buildKey}']];

或者:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@'https://www.pgyer.com/apiv2/app/install?_api_key=&buildKey={buildKey}&buildPassword={buildPassword}']];

获取App详细信息

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

API地址

POST https://www.pgyer.com/apiv2/app/view

POST参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
appKey String (必填) 表示一个App组的唯一Key。例如,名称为'微信'的App上传了三个版本,那么这三个版本为一个App组,该参数表示这个组的Key。这个值显示在应用详情--应用概述--App Key。
buildKey String (选填) Build Key是唯一标识应用的索引ID,可以通过 获取App所有版本取得

返回数据

应用详情返回参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildType Integer 应用类型(1:iOS; 2:Android)
buildIsFirst Integer 是否是第一个App(1:是; 2:否)
buildIsLastest Integer 是否是最新版(1:是; 2:否)
buildFileSize Integer App 文件大小
buildName String 应用名称
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNo String 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildIdentifier String 应用程序包名,iOS为BundleId,Android为包名
buildIcon String 应用的Icon图标key,访问地址为 https://appicon.pgyer.com/image/view/app_icons/[应用的Icon图标key]
buildDescription String 应用介绍
buildUpdateDescription String 应用更新说明
buildScreenShots String 应用截图的key,获取地址为 https://app-screenshot.pgyer.com/image/view/app_screenshots/[应用截图的key]
buildShortcutUrl String 应用短链接
buildQRCodeURL String 应用二维码地址
buildCreated String 应用上传时间
buildUpdated String 应用更新时间
otherApps array 历史版本
otherAppsCount int 历史版本数量
历史版本返回参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildName String 应用名称
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildCreated String 应用上传时间
buildUpdated String 应用更新时间

修改App组详细信息(更新所有版本)

API地址

POST https://www.pgyer.com/apiv2/app/update

POST参数

参数 类型 说明
_api_key String (必填)API Key 点击获取_api_key
appKey String (必填) 表示一个App组的唯一Key。例如,名称为'微信'的App上传了三个版本,那么这三个版本为一个App组,该参数表示这个组的Key。这个值显示在应用详情--应用概述--App Key。
buildShortcutUrl String (选填) 应用短链接地址
buildInstallType Integer (必填) 应用安装方式(2:密码安装;3:邀请安装)
buildPassword String (选填) 安装密码 buildInstallType 为2时使用)
appIsInstallDate Integer (选填) 是否设置有效期 (1:是;2:否)
appInstallStartDate String (选填)有效期开始时间 (buildInstallDate 为1时使用)
appInstallEndDate String (选填) 有效期结束时间 (buildInstallDate 为1时使用)
appLang Integer (选填) 语言设置 (1:中文;2:英文; 3:自动;)
buildVersionType Integer (选填) Build 版本号设置 (1:使用蒲公英生成的自增 Build 版本号; 2:使用 App 本身的 Build 版本号;)
appAutoSync Integer (选填) 是否自动同步app信息 (1:是;2:否;)
appShowPgyerCopyright Integer (选填) 是否在安装页面显示蒲公英版权信息 (1:是;2:否;)
buildQrcodeShowAppIcon Integer (选填) 二维码是否显示应用图标(1:是;2:否)
appFeedbackStatus Integer (选填) 是否开启反馈 (1:是;2:否)
buildTemplate String (选填) 设置模版 ( 可填写的值 classic,fashion,gray,green,colorful)

返回数据

返回参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildType Integer 应用类型(1:iOS; 2:Android)
buildIsFirst Integer 是否是第一个App(1:是; 2:否)
buildIsLastest Integer 是否是最新版(1:是; 2:否)
buildFileSize Integer App 文件大小
buildName String 应用名称
buildPassword String 应用安装密码
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNo String 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildQrcodeShowAppIcon Integer 是否显示二维码中的图标(1:是; 2:否)
buildVersionType Integer 是否使用蒲公英版本号(1:是; 2:否)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildIdentifier String 应用程序包名,iOS为BundleId,Android为包名
buildIcon String 应用的Icon图标key,访问地址为 https://appicon.pgyer.com/image/view/app_icons/[应用的Icon图标key]
buildDescription String 应用介绍
buildUpdateDescription String 应用更新说明
buildScreenShots String 应用截图的key,获取地址为 https://app-screenshot.pgyer.com/image/view/app_screenshots/[应用截图的key]
buildShortcutUrl String 应用短链接
buildIsAcceptFeedback Integer 是否开启反馈 (1:是;2:否)
buildIsUploadCrashlog Integer 是否接受Crash(1:是;2:否)
buildTemplate String 模版
buildInstallType Integer 应用安装方式(2:密码安装;3:邀请安装)
buildManuallyBlocked Integer 是否被屏蔽(1:是;2:否)
buildIsPlaceholder Integer 是否是空应用(1:是;2:否)
buildCreated String 应用上传时间
buildUpdated String 应用更新时间
buildQRCodeURL String 应用二维码地址
isOwner Integer 是否是自己的应用(1:是;2:否)
isJoin Integer 是否是参与的应用(1:是;2:否)
appExpiredDate String app过期时间
appExpiredStatus Integer 是否即将过期(1:是;2:否)
otherApps Array 其他版本
otherAppsCount Integer 版本数
todayDownloadCount Integer 今日下载数
appKey String app组的Key
appAutoSync Integer 是否是同步应用市场(1:是;2:否)
appShowPgyerCopyright Integer 是否显示蒲公英版权(1:是;2:否)
appDownloadPay Integer 见 appDownloadPay参数对应的金额或其含义
appDownloadDescription String 应用下载说明
appLang Integer 应用语言(1:中文;2:英文; 3:自动;)
appIsTestFlight Integer 是否是TestFlight应用(1:是;2:否)
appIsInstallDate Integer 是否有安装时间限制(1:是;2:否)
appInstallStartDate String 安装开始时间
appInstallEndDate String 安装结束时间
appFeedbackStatus Integer 是否是开启反馈(1:是;2:否)
isMerged Integer 是否已合并(1:是;2:否)
mergeAppInfo Array 合并的应用信息

修改App详细信息

API地址

POST https://www.pgyer.com/apiv2/app/updateApp

POST参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
userKey String (必填) 用户Key,用来标识当前用户的身份,对于同一个蒲公英的注册用户来说,这个值在固定的。 点击获取userKey
buildKey String (必填) Build Key是唯一标识应用的索引ID,可以通过 获取App所有版本取得
screenshot file (选填) 应用截图
buildName String (选填) 应用名称
buildShortcutUrl String (选填) 应用短链接地址
buildUpdateDescription String (选填,传值为空则更新为空) 应用更新说明
buildDescription String (选填,传值为空则更新为空) 应用说明
buildPassword String (选填,传值为空则更新为空) 设置应用密码
buildVersion String (选填) 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildInstallType Integer (选填) 应用安装方式

返回数据

返回参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildType Integer 应用类型(1:iOS; 2:Android)
buildIsFirst Integer 是否是第一个App(1:是; 2:否)
buildIsLastest Integer 是否是最新版(1:是; 2:否)
buildFileSize Integer App 文件大小
buildName String 应用名称
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNo String 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildIdentifier String 应用程序包名,iOS为BundleId,Android为包名
buildIcon String 应用的Icon图标key,访问地址为 https://appicon.pgyer.com/image/view/app_icons/[应用的Icon图标key]
buildDescription String 应用介绍
buildUpdateDescription String 应用更新说明
buildScreenShots String 应用截图的key,获取地址为 https://app-screenshot.pgyer.com/image/view/app_screenshots/[应用截图的key]
buildShortcutUrl String 应用短链接
buildCreated String 应用上传时间
buildUpdated String 应用更新时间

获取App所有版本

API地址

POST https://www.pgyer.com/apiv2/app/builds

POST参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
appKey String (选填, 但appKey和buildKey不能同时为空) 表示一个App组的唯一Key。例如,名称为'微信'的App上传了三个版本,那么这三个版本为一个App组,该参数表示这个组的Key。这个值显示在应用详情--应用概述--App Key。
buildKey String (选填, 但appKey和buildKey不能同时为空) Build Key是唯一标识应用的索引ID
page Integer (选填) 历史版本分页页数

返回数据

返回参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildType Integer 应用类型(1:iOS; 2:Android)
buildFileSize Integer App 文件大小
buildName String 应用名称
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNo String 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildIdentifier String 应用程序包名,iOS为BundleId,Android为包名
buildIcon String 应用的Icon图标key,访问地址为 https://appicon.pgyer.com/image/view/app_icons/[应用的Icon图标key]
buildCreated String 应用上传时间

通过短链接获取App信息

API地址

POST https://www.pgyer.com/apiv2/app/getByShortcut

POST参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
buildShortcutUrl String (必填) 应用短链接,例如pgyer.com/PgY8,只需要传入PgY8参数即可

返回数据

应用详情返回参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildIsFirst Integer 是否是第一个App(1:是; 2:否)
buildIsLastest Integer 是否是最新版(1:是; 2:否)
buildType Integer 应用类型(1:iOS; 2:Android)
buildFileName String 上传的应用文件名
buildFileSize Integer App 文件大小
buildName String 应用名称
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNo String 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildIdentifier String 应用程序包名,iOS为BundleId,Android为包名
buildCreated String 应用上传时间
buildDescription String 应用介绍
buildUpdateDescription String 应用更新说明
buildShortcutUrl String 应用短链接
buildScreenshots String 应用截图的key,获取地址为 https://app-screenshot.pgyer.com/image/view/app_screenshots/[应用截图的key]

查看自己上传的应用

API地址

POST https://www.pgyer.com/apiv2/app/listMy

POST参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
page Integer (选填) 填写数字页数

返回数据

返回参数 类型 说明
buildKey String Build Key是唯一标识应用的索引ID
buildType Integer 应用类型(1:iOS; 2:Android)
buildFileSize Integer App 文件大小
buildName String 应用名称
buildVersion String 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNo String 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildBuildVersion Integer 蒲公英生成的用于区分历史版本的build号
buildIdentifier String 应用程序包名,iOS为BundleId,Android为包名
buildIcon String 应用的Icon图标key,访问地址为 http://appicon.pgyer.com/image/view/app_icons/[应用的Icon图标key]
buildCreated String 应用上传时间
appKey String 表示一个App组的唯一Key。

检测App是否有更新

API地址

POST https://www.pgyer.com/apiv2/app/check

POST参数

参数 类型 说明
_api_key String (必填) API Key 点击获取_api_key
appKey String (必填) 表示一个App组的唯一Key。例如,名称为'微信'的App上传了三个版本,那么这三个版本为一个App组,该参数表示这个组的Key。这个值显示在应用详情--应用概述--App Key。
buildVersion String (选填) 使用 App 本身的 Build 版本号,