## List all users `client.Users.List(ctx, query) (*CursorPagination[User], error)` **get** `/users` Retrieve a paginated list of users using cursor-based pagination ### Parameters - `query UserListParams` - `After param.Field[string]` Cursor for forward pagination. Returns items after this cursor. - `Before param.Field[string]` Cursor for backward pagination. Returns items before this cursor. - `Limit param.Field[int64]` Maximum number of items to return ### Returns - `type User struct{…}` - `ID string` Unique identifier with user_ prefix - `CreatedAt Time` Timestamp when the user was created - `Email string` Email address of the user - `FirstName string` First name of the user - `LastName string` Last name of the user - `UpdatedAt Time` Timestamp when the user was last updated ### Example ```go package main import ( "context" "fmt" "github.com/withluminary/go-sdk" "github.com/withluminary/go-sdk/option" ) func main() { client := withluminary.NewClient( option.WithClientID("My Client ID"), option.WithClientSecret("My Client Secret"), ) page, err := client.Users.List(context.TODO(), withluminary.UserListParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", page) } ``` #### Response ```json { "data": [ { "id": "user_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "email": "jane.doe@example.com", "first_name": "Jane", "last_name": "Doe", "updated_at": "2024-01-20T14:45:00Z" } ], "page_info": { "has_next_page": true, "has_previous_page": false, "end_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9", "start_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9" }, "total_count": 100 } ```