Вы можете использовать API учетных записей торговцев для просмотра отфильтрованного списка учетных записей, к которым у вас есть доступ, включая субсчета. Вы можете фильтровать по отображаемым именам и связям с другими учетными записями. Например, вы можете отфильтровать учетные записи с отображаемыми именами, содержащими строку "store"
, которые также имеют статус связи " PENDING
", чтобы просмотреть все ваши магазины, которые еще не приняли запрос на связывание учетных записей.
Чтобы просмотреть все ваши дочерние учетные записи, accounts.v1beta.accounts.listSubAccounts
.
Чтобы просмотреть отфильтрованный список всех учетных записей, к которым у вас есть доступ, включая дополнительные учетные записи и любые учетные записи, в которых вы являетесь User
, вызовите accounts.v1beta.accounts.list
и укажите критерии фильтрации в поле filter
.
Подробную информацию о синтаксисе поля filter
см. в справочнике по синтаксису фильтра .
Вот типы фильтров, которые вы можете использовать:
Фильтры аккаунтов
Вы можете использовать следующие поля для фильтрации на уровне account
:
-
accountName
: фильтрует поaccountName
ресурсаaccount
. -
relationship(...)
: фильтрует по типу отношений, которые учетная запись имеет с другой учетной записью. Вы можете включить несколько фильтровrelationship(...)
в один запрос.
Фильтры отношений
Вы можете использовать функцию relationship(...)
для фильтрации по следующим критериям:
-
providerId
: идентификатор продавца поставщика услуг. Например, если фильтр должен возвращать только учетные записи, у которых есть услуга, предоставляемаяaccount/123
, используйтеProviderIdproviderId = 123
. -
callerHasAccessToProviderFilter()
: фильтрует учетные записи, связанные с поставщиком услуг, к которому у вас есть доступ. -
externalAccountId
: идентификатор внешней учетной записи поставщика услуг для учетной записи, которой он предоставляет услугу. -
accountIdAlias:
псевдоним идентификатора учетной записи, настроенный для связи. -
service(...)
: услуга, предоставляемая как часть отношения. Вы можете включить несколько функцийservice(...)
в одну функциюrelationship(...)
.
Сервисные фильтры
Вы можете использовать функцию service(...)
для дальнейшей фильтрации учетных записей на основе статуса их отношений и типов услуг, которые эти отношения предоставляют:
-
handshakeState
: состояние соглашения об обслуживании между двумя учетными записями. Принимает следующие значения:-
PENDING
-
APPROVED
-
-
type:
тип услуги, предоставляемой провайдером. Принимает следующие значения:-
ACCOUNT_MANAGEMENT
Поставщик управляет учетной записью. -
ACCOUNT_AGGREGATION
Провайдер является агрегатором аккаунта.
-
Примеры
Вот несколько примеров фильтров, которые вы можете попробовать.
Отфильтруйте учетные записи с отображаемыми именами, содержащими слово «магазин», и поставщиков с идентификатором «123»:
accountName = "*store*" AND relationship(providerId = 123)
Фильтр для всех субсчетов счета «123»:
relationship(providerId = 123 AND service(type = "ACCOUNT_AGGREGATION"))
Фильтруйте учетные записи с утвержденными службами управления учетными записями:
relationship(service(handshakeState = "APPROVED" AND type = "ACCOUNT_MANAGEMENT"))
Фильтруйте учетные записи с определенным псевдонимом и идентификатором, у которых есть доступ к провайдеру. У вас также должен быть доступ к провайдеру для этого запроса:
relationship(callerHasAccessToProviderFilter() AND externalAccountId = "extAcctId" AND accountIdAlias = "alias")
Что дальше
- Дополнительные сведения о фильтрации учетных записей см. в разделе Синтаксис фильтра .