特定の属性と一致するグループを検索するには、Directory API の groups.list
メソッドを使用します。このメソッドには、1 つ以上の検索句を組み合わせた検索クエリを query
パラメータとして渡すことができます。各検索句は、次の 3 つの部分で構成されます。
- フィールド
- 検索対象のグループ属性例:
name
- 演算子
- データに対して行われる一致するかどうかを調べるテスト。たとえば、
=
演算子はテキスト属性が値と一致するかどうかをテストします。 - 値
- テスト対象の属性の内容例:
groupName
複数の句は空白で区切られ、暗黙のうちに AND
演算子で結合されます。
フィールド
フィールド | 値の型 | 演算子 | 説明 |
---|---|---|---|
email |
文字列 | = 、:{PREFIX}* |
グループのメールアドレス。注: 同じクエリ内での memberKey パラメータとの併用はできません。 |
name |
文字列 | = 、:{PREFIX}* |
グループの表示名。注: 同じクエリ内での memberKey パラメータとの併用はできません。 |
memberKey |
文字列 | = |
memberKey クエリ パラメータは、ユーザーまたはグループがメンバーになっているすべてのグループを返します。この値は、ユーザーのメインまたはエイリアスのメールアドレス、グループのメインまたはエイリアスのメールアドレス、ユーザーの一意の ID のいずれかです。注: 同じクエリ内での email パラメータまたは name パラメータとの併用はできません。 |
値の型
値の型 | メモ |
---|---|
文字列 | クエリに空白文字が含まれている場合は、単一引用符 ' で囲みます。クエリ内の単一引用符は \' を使ってエスケープします(例: 'Valentine\'s Day' )。 |
演算子
演算子 | サポートされている値の型 | メモ |
---|---|---|
= |
文字列、ブール値、数値、日付 | フィールドと値が完全に一致しています。たとえば、name=contact は、name 属性が "contact" であるすべてのグループに一致しますが、"contactgroup" であるグループには一致しません。ほとんどの文字列フィールドでサポートされています(上記を参照)。 |
:{PREFIX}* |
文字列 | フィールドはこの値で始まっています。たとえば、email:support* のクエリは、email の値が "supportgroup@" のグループと "support@" のグループとは一致しますが、"contactsupport" のグループとは一致しません。一部の文字列フィールドでのみサポートされています(上記を参照)。 |
例
すべてのクエリは groups.list
メソッドを使用します。このメソッドには、次のような HTTP リクエストがあります(読みやすくするために改行を入れています)。
GET https://admin.googleapis.com/admin/directory/v1/groups ?domain=primary domain &query=query parameters
query
パラメータは URL エンコードする必要があります。たとえば、query=email:support*
というクエリを URL エンコードすると query=email%3Asupport*
になります。このページのすべての例では、query
パラメータをエンコードせずに表記しています。クライアント ライブラリは、この URL エンコードを自動的に行います。
表示名でグループを検索する
name='contact'
メールアドレスのプレフィックスが一致するグループを検索する
email:admin*
ユーザーのすべてのグループを検索する
memberKey=user@company.com
名前とメールアドレスが contact で始まるグループを検索する
name:contact* email:contact*