List users
List users
Returns a list of users in the specified zone.
Rollout note: the paginated/searchable/sortable behavior described below is gated behind the user-pagination feature flag and is currently disabled for most zones. While the flag is off, the response returns every user in the zone (capped at 100) in items and a fixed pagination envelope where after_cursor and before_cursor are null and total_count is 0. The query parameters below are accepted but ignored. The flag is rolled out per-zone in Datadog and will become the default once Console adopts the paginated contract.
Use cursor pagination via after/before. Sort: comma-separated field list; prefix with - for descending. Use expand[]=total_count to include the matching row count, expand[]=session_count to include per-user session counts, expand[]=grant_count to include per-user delegated-grant counts, and expand[]=role-assignments to include each user's structured role grants. Filter by exact email via filter[email]; search via query[email] / query[subject] / query[] (substring match, OR'd across repeated values). query[] matches against email and federation credential subject. Pass filter[id] (repeatable, max 100) to restrict results to a known set of users — mutually exclusive with after/before (returns 400 if combined). When filter[id] is set, limit is ignored and the response contains every requested user that exists in the zone, in a single page. IDs not in the zone are silently omitted.
Parameters
Returns
List users
package main
import (
"context"
"fmt"
"github.com/keycardai/keycard-go"
)
func main() {
client := keycard.NewClient(
)
users, err := client.Zones.Users.List(
context.TODO(),
"zoneId",
keycard.ZoneUserListParams{
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", users.Items)
}
{
"items": [
{
"id": "id",
"created_at": "2019-12-27T18:11:19.117Z",
"email": "dev@stainless.com",
"email_verified": true,
"identifier": "identifier",
"organization_id": "organization_id",
"status": "active",
"updated_at": "2019-12-27T18:11:19.117Z",
"zone_id": "zone_id",
"authenticated_at": "authenticated_at",
"grant_count": 0,
"issuer": "issuer",
"provider_id": "provider_id",
"role_assignments": [
{
"role_id": "role_id",
"role_identifier": "x",
"scope": {
"id": "id",
"type": "type"
}
}
],
"session_count": 0,
"subject": "subject"
}
],
"pagination": {
"after_cursor": "x",
"before_cursor": "x",
"total_count": 0
}
}Returns Examples
{
"items": [
{
"id": "id",
"created_at": "2019-12-27T18:11:19.117Z",
"email": "dev@stainless.com",
"email_verified": true,
"identifier": "identifier",
"organization_id": "organization_id",
"status": "active",
"updated_at": "2019-12-27T18:11:19.117Z",
"zone_id": "zone_id",
"authenticated_at": "authenticated_at",
"grant_count": 0,
"issuer": "issuer",
"provider_id": "provider_id",
"role_assignments": [
{
"role_id": "role_id",
"role_identifier": "x",
"scope": {
"id": "id",
"type": "type"
}
}
],
"session_count": 0,
"subject": "subject"
}
],
"pagination": {
"after_cursor": "x",
"before_cursor": "x",
"total_count": 0
}
}