PGYER文件中心

API 1.0

接口說明

利用PGYER提供的接口,第三方開發者可以把PGYER提供的應用上傳托管、安裝等功能,接入到自己的應用中,並且可以根據數據接口,獲取PGYER提供的各種應用數據,以方便開發者更容易的進行內測應用的分發。


  1. 除特別說明,所有數據API的請求方式均為HTTP POST方式。
  2. 獲取圖片等資源文件接口的請求方式為HTTP GET
  3. API接口返回數據格式為JSON。
  4. 所有接口請求時,必須包含參數_api_key,以便識別接口身份。 點擊獲取_api_key
PGYER現已推出API 2.0,推薦開發者使用,API 1.0版本將不再維護和更新。

常規參數說明

參數 別稱 說明
_api_key API Key API Key,用來識別API調用者的身份,如不特別說明,每個接口中都需要含有此參數。對於同一個PGYER的註冊用戶來說,這個值是固定的。點擊獲取_api_key
uKey User Key 用戶Key,用來標識當前用戶的身份,對於同一個PGYER的註冊用戶來說,這個值是固定的。 點擊獲取_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);
// output $jsonData ...

上傳App

通過該接口,開發者可以直接上傳 App 到PGYER。上傳時,請使用 HTTP POST 方式,其中 enctype 為 "multipart/form-data"

API地址

POST https://upload.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 (選填) 版本更新描述,請傳空字符串,或不傳。
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 PGYER生成的用於區分歷史版本的build號
appIdentifier String 應用程式包名,iOS為BundleId,Android為包名
appIcon String 應用程式的Icon圖標key,訪問地址為 https://www.pgyer.com/image/view/app_icons/[應用程式的Icon圖標key]
appDescription String 應用程式介紹
appUpdateDescription String 應用程式更新說明
appScreenShots String 應用程式截圖的key,獲取地址為 https://www.pgyer.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://upload.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=download-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 PGYER生成的用於區分歷史版本的build號
appIdentifier String 應用程式包名,iOS為BundleId,Android為包名
appIcon String 應用程式的Icon圖標key,訪問地址為 https://www.pgyer.com/image/view/app_icons/[應用程式的Icon圖標key]
appDescription String 應用程式介紹
appUpdateDescription String 應用程式更新說明
appScreenShots String 應用程式截圖的key,獲取地址為 https://www.pgyer.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 PGYER生成的用於區分歷史版本的build號
appCreated String 應用上傳時間
appUpdated String 應用更新時間
應用反饋返回參數 類型 說明
userKey Integer User Key
commentContent Integer 反饋內容
commentImageKeys Integer 反饋中的截圖key,訪問地址為:https://www.pgyer.com/image/view/comment_screenshot/[反饋中的截圖key]
appBuildVersion Integer PGYER生成的用於區分歷史版本的build號
appIdentifier Integer 應用程式包名,iOS為BundleId,Android為包名
appCreated Integer 應用上傳時間
appUpdated Integer 應用更新時間

獲取App組詳細信息

同一個 App 的不同版本,PGYER會將它們合併起來,形成一個 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 PGYER生成的用於區分歷史版本的build號
appIdentifier String 應用程式包名,iOS為BundleId,Android為包名
appIcon String 應用程式的Icon圖標key,訪問地址為 https://www.pgyer.com/image/view/app_icons/[應用程式的Icon圖標key]
appDescription String 應用程式介紹
appUpdateDescription String 應用程式更新說明
appScreenShots String 應用程式截圖的key,獲取地址為 https://www.pgyer.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 PGYER生成的用於區分歷史版本的build號
appIdentifier String 應用程式包名,iOS為BundleId,Android為包名
appIcon String 應用程式的Icon圖標key,訪問地址為 https://www.pgyer.com/image/view/app_icons/[應用程式的Icon圖標key]
appDescription String 應用程式介紹
appUpdateDescription String 應用程式更新說明
appScreenShots String 應用程式截圖的key,獲取地址為 https://www.pgyer.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 PGYER生成的用於區分歷史版本的build號
appIdentifier String 應用程式包名,iOS為BundleId,Android為包名
appIcon String 應用程式的Icon圖標key,訪問地址為 https://www.pgyer.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(逗號分開),獲取地址為 https://www.pgyer.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 PGYER生成的用於區分歷史版本的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 PGYER生成的用於區分歷史版本的build號
appIdentifier String 應用程式包名,iOS為BundleId,Android為包名
appIcon String 應用程式的Icon圖標key,訪問地址為 https://www.pgyer.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 創建時間