用于签署 iOS 代理的 API

本主题介绍如何使用 API 调用使用多个 Apple 帐户自动签署代理应用程序。然后,您可以为不同的设备使用不同的 iOS 帐户。本主题仅适用于 UFT Digital Lab

注: 这些 API 在将来的 Digital Lab 版本中可能会更改并破坏向后兼容性。

概述

使用 API,您可以通过上载预配配置文件和 iOS 证书来创建资产集。创建集之后,代理应用程序会自动使用上载的文件重新签名,并且资源集将分发到全部连接的连接器。资源集包含新签名的代理应用程序和 UDID 列表。将新的或更新的资源集分发到连接器后,未连接到 UFT Digital Lab 服务器的任何设备都会尝试再次使用新分发的代理进行连接。

先决条件

确保已为 iOS 设置了自动应用程序代码注入和签名服务。有关详细信息,请参阅自动签名服务

后退到顶部

日志英寸

会话中的第一个 REST API 请求必须是登录请求。有关详细信息,请参阅在 REST API 文档中登录

对于后续 API 请求,请使用登录响应标头中的 x-hp4msecret 和 cookie。

后退到顶部

创建资源集

这将在 Digital Lab 服务器上创建资源集。资产集由签名的代理应用程序 , 和可安装应用程序的设备列表 (取自用于签署代理的预配配置文件) 组成。要更新现有资源集,请调用更新资源集

方法: POST/rest/v2/assets

请求正文: 多部分

  • file application/octet-stream zip 文件,其中包含 iOSDeveloper 证书和匹配的预配配置文件。证书和预配配置文件的团队 ID 必须相同。
  • assetDetails application/json {" name": " name" ," password": " 123456"}。
    详细信息
    名称提供资产名称
    密码iOS 开发人员证书的密码

响应

状态 详细信息
200 成功
400 错误的请求。名称已存在,证书或预配配置文件无效
500 服务器错误

主体 (示例):

{

" name": " name" ,

" groupId": " xxx" ,

" certificate ExpirationDate": " xxxx" ,

" udid": [

" udid1",

" udid2"

]、

“ signingId ”:” dddd-ddd ”

}

上载的文件用于对代理应用程序进行签名,资源集将通过自动 API 调用分发到连接的连接器。签名 ID 可用于标识应用程序的签名和分发到连接器的状态。

后退到顶部

更新资源集

更改资产集的证书和预配配置文件。更改资源集时,代理将使用新资产重新签名,并分发到连接到 Digital Lab 服务器的全部连接器。

方法: PUT/rest/v2/assets

请求正文: 多部分

  • file application/octet-stream zip 文件,其中包含 iOSDeveloper 证书和匹配的预配配置文件。证书和预配配置文件的团队 ID 必须相同。
  • assetDetails application/json {" name": " name" ," password": " 123456"}。
    详细信息
    名称提供资产名称
    密码iOS 开发人员证书的密码

响应:

状态 详细信息
200 成功
400 错误的请求。无法按名称查找资产 , 证书无效或预配配置文件
500 服务器错误

主体 (示例):

{

" name": " name" ,

" groupId": " xxx" ,

" certificate ExpirationDate": " xxxx" ,

" udid": [

" udid1",

" udid2"

]、

“ signingId ”:” dddd-ddd ”

}

后退到顶部

删除资源集

删除资源集 (如果不再需要) 。资源集将从 Digital Lab 服务器以及连接器中移除。使用已删除资产集中的代理的已连接设备不会断开连接。

方法: DELETE/rest/v2/assets/{name}

请求正文: 否主体

响应:

状态 详细信息
200 成功
400 资产不存在
500 服务器错误

正文: 否响应正文。

后退到顶部

获取所有资源集的详细信息

检索所有资产集的名称、团队 ID、证书过期日期和设备 UDID 列表。

方法: GET/rest/v2/assets

请求正文: 否主体。

响应:

状态 详细信息
200 成功
500 服务器错误

主体 (示例):

[

{

" name": " name" ,

" groupId": " xxx" ,

" ExpirationDate": " xxxx" ,

" udids": [

" udid1",

" udid2"

]

}

{

" name": " name2" ,

" groupId": " xyz" ,

" ExpirationDate": " xxxx" ,

" udids": [

" udid3",

" udid4"

]

}

后退到顶部

从所有资源集中获取 UDID

从所有资源集中检索所有唯一设备 ID (UDID) 的列表。

方法: GET/rest/v2/assets/udid

请求正文: 否主体。

响应:

状态 详细信息
200 成功
500 服务器错误

主体 (示例):

[" udid1" ," udid2" ," udid3" ," udid4"]

后退到顶部

获取签名和分发状态

通过 signingId 获取资源集的状态。创建或更新资源集时, signingId 位于响应体中。有四种状态: 空闲、签名、分发、结束。

方法: GET/rest/signature/{signingId}/status /

请求正文: 否主体。

响应:

状态 详细信息
200 成功
500 服务器错误

主体 (示例):

{" messageCode": 0,

" message": " 0" ,

" signingId": " xxxx" ,

" 状态 ": " 分布 "}

后退到顶部

将签名的资产分配给特定的连接器

无需手动调用此 API。创建或更新资源集后,将自动对该资源集中的代理进行签名,并将资源集分发到全部连接的连接器。

方法: PUT rest/v2/connector/{connectorId}/signedAssets

请求正文: 否主体

响应:

状态 详细信息
200 成功
500 服务器错误

正文: 否响应正文。

后退到顶部

分发新签名的代理

在创建新资源集或更新现有资源集后,对代理应用程序重新签名时,将资源集分布到所有接头。无需手动调用此 API。创建或更新资源集后,将自动对该资源集中的代理进行签名,并将资源集分发到全部连接的连接器。

方法: PUT rest/v2/connector/signedAssets

请求正文: 否主体

响应:

状态 详细信息
200 成功
500 服务器错误

正文: 否响应正文。

后退到顶部