Skip to content
qibdo qibdo
v1
API version
  • v1
Theme
Book a demo

List Principals

GET
/iam/v1/principals
curl --request GET \
--url https://example.com/iam/v1/principals

Returns a paginated directory of principals, filtered to the kinds the caller is permitted to read.

page_size
integer format: int32

The maximum number of principals to return. The service may return fewer than this value. If unspecified, at most 20 principals will be returned. The maximum value is 100; values above 100 will be coerced to 100.

page_token
string

A page token from a previous ListPrincipals call.

filter
string

AIP-160 filter expression, e.g. ‘status = “ACTIVE”’.

order_by
string

AIP-132 order_by expression, e.g. ‘created asc’.

OK

Media type application/json

ListPrincipalsResponse

Response message for ListPrincipals.

object
principals

The list of principals visible to the caller.

Array<object>

Principal resource — the lean, discriminated directory projection shared by users and service accounts. Carries ONLY core identity; person-specific profile fields (name/surname/avatar) are exposed on the richer User message.

object
id

The unique identifier of the principal.

stringOutput only
display_name

Polymorphic human-readable label — a Person’s “name surname” or a service account’s service email.

stringOutput only
status

The lifecycle status of the principal.

string format: enum Output only
Allowed values: PRINCIPAL_STATUS_UNSPECIFIED PRINCIPAL_STATUS_INVITED PRINCIPAL_STATUS_ACTIVE PRINCIPAL_STATUS_DEACTIVATED
type

The discriminated kind of the principal.

string format: enum Output only
Allowed values: PRINCIPAL_TYPE_UNSPECIFIED PRINCIPAL_TYPE_USER PRINCIPAL_TYPE_SERVICE_ACCOUNT
last_seen

Best-effort last-authentication instant; absent until the principal first authenticates.

string format: date-time Output only
created

The timestamp when the principal was created.

string format: date-time Output only
updated

The timestamp when the principal was last updated.

string format: date-time Output only
next_page_token

A token to retrieve the next page; empty when there are no further pages.

string
Example
{
"principals": [
{
"status": "PRINCIPAL_STATUS_UNSPECIFIED",
"type": "PRINCIPAL_TYPE_UNSPECIFIED"
}
]
}

Default error response

Media type application/json

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
code

The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].

integer format: int32
message

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.

string
details

A list of messages that carry the error details. There is a common set of message types for APIs to use.

Array<object>

Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.

object
@type

The type of the serialized message.

string
key
additional properties
any
Example generated
{
"code": 1,
"message": "example",
"details": [
{
"@type": "example"
}
]
}