Skip to main content
Operations for saving and managing search filters.
See alsofind_saved_filter() and find_saved_filters() are in Configuration.
Bases: StashClientProtocol Mixin for filter-related client methods.

Functions

save_filter

save_filter(
    input_data: SaveFilterInput | dict[str, Any],
) -> SavedFilter
Save or update a filter. Parameters:
NameTypeDescriptionDefault
input_dataSaveFilterInput | dict[str, Any]SaveFilterInput object or dictionary.required
Returns:
TypeDescription
SavedFilterSavedFilter object with the saved filter data
Examples: Save a new filter:
from stash_graphql_client.types import SaveFilterInput, FilterMode

input_data = SaveFilterInput(
    mode=FilterMode.SCENES,
    name="My Favorite Scenes",
    find_filter={"per_page": 25},
    object_filter={"is_missing": "performers"}
)
saved_filter = await client.save_filter(input_data)
Update an existing filter:
input_data = SaveFilterInput(
    id="123",
    mode=FilterMode.SCENES,
    name="Updated Filter Name"
)
saved_filter = await client.save_filter(input_data)

destroy_saved_filter

destroy_saved_filter(
    input_data: DestroyFilterInput | dict[str, Any],
) -> bool
Delete a saved filter. Parameters:
NameTypeDescriptionDefault
input_dataDestroyFilterInput | dict[str, Any]DestroyFilterInput object or dictionary.required
Returns:
TypeDescription
boolTrue if the filter was successfully deleted
Examples:
from stash_graphql_client.types import DestroyFilterInput

input_data = DestroyFilterInput(id="123")
success = await client.destroy_saved_filter(input_data)
Using a dictionary:
success = await client.destroy_saved_filter({"id": "123"})