Overview

The ListUsersOptions struct provides parameters for filtering and paginating user list requests.

Definition

pub struct ListUsersOptions {
    pub page: Option<u32>,
    pub per_page: Option<u32>,
    pub search: Option<String>,
    pub is_active: Option<bool>,
}

Fields

page
Option<u32>
The page number to retrieve. Defaults to 1 if not specified.
per_page
Option<u32>
Number of users to return per page. Defaults to 20 if not specified. Maximum is typically 100.
Search term to filter users by name or email. Searches are case-insensitive and partial matches are supported.
is_active
Option<bool>
Filter users by active status. Set to true for active users only, false for inactive users only, or None for all users.

Usage Example

use wacht::api::users::*;

// Basic pagination
let options = ListUsersOptions {
    page: Some(2),
    per_page: Some(50),
    search: None,
    is_active: None,
};

// Search for active users
let search_options = ListUsersOptions {
    page: Some(1),
    per_page: Some(20),
    search: Some("john".to_string()),
    is_active: Some(true),
};

// Get all inactive users
let inactive_options = ListUsersOptions {
    page: None,
    per_page: None,
    search: None,
    is_active: Some(false),
};

let response = fetch_users(Some(search_options)).await?;

Default Values

  • page: 1
  • per_page: 20
  • search: None (no filtering)
  • is_active: None (all users)

See Also