package requests import "time" // ListResPoolRequest represents the request for retrieving a list of resource pools. type ListResPoolRequest struct { // Resource pool name. Searching by partial matching. Ignored if NameExact is provided. // Required: false Name string `url:"name,omitempty" json:"name,omitempty"` // Exact resource pool name. // Required: false NameExact string `url:"name_exact,omitempty" json:"name_exact,omitempty"` // Cluster ID. // Required: false ClusterID int `url:"cluster_id,omitempty" json:"cluster_id,omitempty"` // Cluster name. // Required: false ClusterName string `url:"cluster_name,omitempty" json:"cluster_name,omitempty"` // Filter resource pools by lock status. // Required: false Lock interface{} `url:"lock,omitempty" json:"lock,omitempty" validate:"omitempty,is_bool"` // List of resource pool IDs to exclude from listing. // Required: false ExcludeIDs []int `url:"exclude_ids,omitempty" json:"exclude_ids,omitempty"` // External resource ID where the resource pool is located. // Required: false ExternalResourceID int `url:"external_resource_id,omitempty" json:"external_resource_id,omitempty"` // Include external resource pools for filtering or not. Default: false. // Required: false IncludeExternal bool `url:"include_external,omitempty" json:"include_external,omitempty"` // Template for filtering by any text field. // Required: false FilterText string `url:"filter_text,omitempty" json:"filter_text,omitempty"` // List of columns that will be used by FilterText. // Required: false FilterColumns string `url:"filter_columns,omitempty" json:"filter_columns,omitempty"` // Filter entities created before this date. // Required: false CreatedBefore time.Time `url:"created_before,omitempty" json:"created_before,omitempty"` // Filter entities created after this date. // Required: false CreatedAfter time.Time `url:"created_after,omitempty" json:"created_after,omitempty"` // Field name or list of field names used for sorting. Ascending sort is default. For descending sort, use "-" before the name. // Required: false Sort []string `url:"sort,omitempty" json:"sort,omitempty"` // Visibility options: "visible" - Only active resource pools, "deleted" - Only removed resource pools, "all" - All resource pools. // Required: false Visibility string `url:"visibility,omitempty" json:"visibility,omitempty" validate:"omitempty,visibility"` // Number of the returning page. // Required: false Page int `url:"page,omitempty" json:"page,omitempty"` // Number of items on the page. // Required: false Limit int `url:"limit,omitempty" json:"limit,omitempty"` }