过滤您可以访问的账号

您可以使用 Merchant Accounts API 查看经过过滤的账号列表 包括子账号。您可以按显示名进行过滤 关系。 例如,您可以过滤出显示名称中包含 关联状态为 PENDING 的字符串 "store",可查看您的所有 商店。

要查看所有子账号,请调用 accounts.v1beta.accounts.listSubAccounts

如需查看您有权访问的所有账号的过滤后列表,包括 子账号以及以您身份的任何账号 User,通话 accounts.v1beta.accounts.list 并在 filter 字段中指定过滤条件。

要详细了解 filter 字段的语法,请参阅过滤器语法 参考文档

以下是您可以使用的过滤器类型:

账号过滤条件

您可以使用以下字段在 account 级别进行过滤:

  • accountName:按 account 资源的 accountName 进行过滤。
  • relationship(...):按与账号相关联的关系类型进行过滤 使用另一个账号。您可以添加多个relationship(...)过滤条件 提交一个请求

关系过滤器

您可以使用 relationship(...) 函数根据以下信息进行过滤 条件:

  • providerId:服务提供商的商家 ID。例如,如果 过滤器应仅返回由 account/123,请使用 providerId = 123
  • callerHasAccessToProviderFilter():此过滤条件适用于具有以下政策的账号: 您有权与其访问的服务提供商建立关系。
  • externalAccountId: 向其提供服务的账号
  • accountIdAlias:。为 关系。
  • service(...):作为关系的一部分提供的服务。 您可以在一个 relationship(...) 中包含多个 service(...) 函数 函数。

服务过滤条件

您可以使用 service(...) 函数,根据 关系状态,以及这些关系提供的服务类型 提供:

  • handshakeState:两个账号之间的服务协议的状态。 接受以下值: <ph type="x-smartling-placeholder">
      </ph>
    • PENDING
    • APPROVED
  • type::提供商提供的服务类型。接受以下付款方式 值: <ph type="x-smartling-placeholder">
      </ph>
    • ACCOUNT_MANAGEMENT:账号由提供方管理。
    • ACCOUNT_AGGREGATION该提供商是账号的集合商家。

示例

以下是一些您可以尝试的过滤条件示例。

过滤出显示名称包含“store”的账号具有 ID“123”:

accountName = "*store*" AND relationship(providerId = 123)

过滤出账号“123”的所有子账号:

relationship(providerId = 123 AND service(type = "ACCOUNT_AGGREGATION"))

过滤出提供已批准的账号管理服务的账号:

relationship(service(handshakeState = "APPROVED" AND type = "ACCOUNT_MANAGEMENT"))

过滤出具有特定别名和 ID 且有权访问提供商的账号。 您还必须有权访问此请求的提供方:

relationship(callerHasAccessToProviderFilter() AND externalAccountId = "extAcctId" AND accountIdAlias = "alias")

后续步骤