List Users
const url = 'https://example.com/iam/v1/users';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/iam/v1/usersReturns a paginated list of users
Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ”The maximum number of users to return. The service may return fewer than this value. If unspecified, at most 20 users will be returned. The maximum value is 100; values above 100 will be coerced to 100.
A page token, received from a previous ListUsers call.
Provide this to retrieve the subsequent page. When paginating,
all other parameters provided to ListUsers must match the call
that provided the page token.
AIP-160 filter expression. Filterable fields: create_time, email, id, last_seen_time, name, status, surname, update_time.
AIP-132 order_by expression. Sortable fields: create_time, email, last_seen_time, name, status, surname, update_time.
AIP-158 offset mode: number of resources to skip from the start of the filtered, sorted set. Use EITHER skip (offset paging) OR page_token (cursor paging) — never both in the same request. Supplying both is an invalid request. Default 0 (no skip).
The scope the caller is acting at: ORGANISATION, WORKSPACE, or GROUP.
Supplied, the caller is authorized at that scope, so whoever administers one organisation or workspace can list the people in it. Omitted, the request resolves at the platform scope — exactly today’s behaviour.
The unique identifier of the scope. Supplied together with scope_type.
Responses
Section titled “ Responses ”OK
ListUsersResponse
Response message for ListUsers.
object
The list of users
User resource: an authenticated human identity in the platform (a Person).
object
The unique identifier of the user
The email address of the user
The given name of the user
The family name of the user
An opaque marker that changes whenever the user’s avatar changes; empty when the user has none.
It is NOT a URL and NOT resolvable by a client — the image lives in a private platform bucket. Read the bytes from the avatar sub-resource instead. Treat this only as a cache key: equal means unchanged, different means refetch.
Server-assigned: the avatar is replaced through its own sub-resource, so a value sent here is ignored rather than stored.
The lifecycle status of the user.
The discriminated principal kind (always USER for this resource).
Best-effort last-authentication instant; absent until first authentication.
Created Timestamp
The timestamp when the user was created
Updated Timestamp
Timestamp when the User was last updated
A token, which can be sent as page_token to retrieve the next page.
If this field is empty, there are no subsequent pages.
Exact count of resources matching the request’s filter and scope (both pagination modes).
Example
{ "users": [ { "status": "PRINCIPAL_STATUS_UNSPECIFIED", "type": "PRINCIPAL_TYPE_UNSPECIFIED" } ]}default
Section titled “default ”Default error response
The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.
object
The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
A list of messages that carry the error details. There is a common set of message types for APIs to use.
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
object
The type of the serialized message.
Example generated
{ "code": 1, "message": "example", "details": [ { "@type": "example" } ]}