# Method: members.hasMember

Checks whether the given user is a member of the group. Membership can be direct or nested, but if nested, the `memberKey` and `groupKey` must be entities in the same domain or an `Invalid input` error is returned. To check for nested memberships that include entities outside of the group's domain, use the [`checkTransitiveMembership()`](https://cloud.google.com/identity/docs/reference/rest/v1/groups.memberships/checkTransitiveMembership) method in the Cloud Identity Groups API.

### HTTP request

`GET https://admin.googleapis.com/admin/directory/v1/groups/{groupKey}/hasMember/{memberKey}`

The URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.

### Path parameters

| Parameters ||
|---|---|
| `groupKey` | `string` Identifies the group in the API request. The value can be the group's email address, group alias, or the unique group ID. |
| `memberKey` | `string` Identifies the user member in the API request. The value can be the user's primary email address, alias, or unique ID. |

### Request body

The request body must be empty.

### Response body

JSON template for Has Member response in Directory API.

If successful, the response body contains data with the following structure:

| JSON representation |
|---|
| ``` { "isMember": boolean } ``` |

| Fields ||
|---|---|
| `isMember` | `boolean` Output only. Identifies whether the given user is a member of the group. Membership can be direct or nested. |

### Authorization scopes

Requires one of the following OAuth scopes:

- `https://apps-apis.google.com/a/feeds/groups/`
- `
  https://www.googleapis.com/auth/admin.directory.group`
- `
  https://www.googleapis.com/auth/admin.directory.group.member`
- `
  https://www.googleapis.com/auth/admin.directory.group.member.readonly`
- `
  https://www.googleapis.com/auth/admin.directory.group.readonly`

For more information, see the [Authorization guide](https://developers.google.com/workspace/guides/configure-oauth-consent).