diff --git a/geomagio/api/ws/DataApiQuery.py b/geomagio/api/ws/DataApiQuery.py
index 5e90a33c01eea2739777e5312833be57c01b7c57..06fff9810b2099ba749a19625b8c60157790a6ce 100644
--- a/geomagio/api/ws/DataApiQuery.py
+++ b/geomagio/api/ws/DataApiQuery.py
@@ -41,15 +41,6 @@ class SamplingPeriod(float, enum.Enum):
     DAY = 86400.0
 
 
-class SamplingPeriodWithAuto(str, enum.Enum):
-    AUTO = "auto"
-    TEN_HERTZ = SamplingPeriod.TEN_HERTZ.value
-    SECOND = SamplingPeriod.SECOND.value
-    MINUTE = SamplingPeriod.MINUTE.value
-    HOUR = SamplingPeriod.HOUR.value
-    DAY = SamplingPeriod.DAY.value
-
-
 class DataHost(str, enum.Enum):
     # recognized public Edge data hosts, plus one user-specified
     DEFAULT = os.getenv("DATA_HOST", "edgecwb.usgs.gov")
diff --git a/geomagio/api/ws/FilterApiQuery.py b/geomagio/api/ws/FilterApiQuery.py
index f602fc44d1a3a7d8573c2efb88cc85e3e20b34d6..0aab1c78bfd38c5b2d481ed3e8998539d6e926a2 100644
--- a/geomagio/api/ws/FilterApiQuery.py
+++ b/geomagio/api/ws/FilterApiQuery.py
@@ -2,7 +2,6 @@ from .DataApiQuery import (
     DataApiQuery,
     SamplingPeriod,
     REQUEST_LIMIT,
-    SamplingPeriodWithAuto,
 )
 from pydantic import ConfigDict, model_validator, field_validator
 from typing import Optional, Union
@@ -14,36 +13,7 @@ the fields input_sampling_period and output_sampling_period."""
 class FilterApiQuery(DataApiQuery):
     model_config = ConfigDict(extra="forbid")
 
-    input_sampling_period: Union[SamplingPeriodWithAuto, float] = (
-        SamplingPeriodWithAuto.AUTO
-    )
-
-    @field_validator("input_sampling_period", mode="before")
-    def normalize_sampling_period(cls, value):
-        if isinstance(value, str) and value == SamplingPeriodWithAuto.AUTO:
-            return float("nan")  # Map 'auto' to NaN internally
-        if isinstance(value, str):
-            return float(value)  # Map string values to float
-        try:
-            value = float(value)  # Coerce numeric-like strings to float
-        except ValueError:
-            raise ValueError(
-                f"Invalid sampling period. Must be one of "
-                f"{[item.value for item in SamplingPeriodWithAuto]}"
-            )
-        # If the value is a float, find its matching enum based on the string value
-        if isinstance(value, float):
-            print("The sampling period is touching this logic downstream", type(value))
-            # Find matching enum value by checking if the float matches the string equivalent but skip the string "auto"
-            for period in list(SamplingPeriodWithAuto)[1:]:
-                if float(period.value) == value:
-
-                    return period
-
-            # If no match is found, return the float as-is
-            return value
-
-        return value  # Return the value if it's not a recognized string or float
+    input_sampling_period: Optional[Union[SamplingPeriod, float]] = None
 
     @model_validator(mode="after")
     def validate_sample_size(self):
diff --git a/geomagio/api/ws/algorithms.py b/geomagio/api/ws/algorithms.py
index 879ac70cf4a8f8ef447059642906621848b3acdc..25d2f0139c2e6243198478ce134ae56b0c39142e 100644
--- a/geomagio/api/ws/algorithms.py
+++ b/geomagio/api/ws/algorithms.py
@@ -2,15 +2,14 @@ import json
 
 from fastapi import APIRouter, Depends, HTTPException, Query
 from starlette.responses import Response
-from obspy.core import Stream, Stats
-from typing import List, Union
 
-from ...algorithm import DbDtAlgorithm, FilterAlgorithm
+
+from ...algorithm import DbDtAlgorithm
 from ...residual import (
     calculate,
     Reading,
 )
-from .DataApiQuery import DataApiQuery, SamplingPeriod
+from .DataApiQuery import DataApiQuery
 from .FilterApiQuery import FilterApiQuery
 from .data import format_timeseries, get_data_factory, get_data_query, get_timeseries
 from .filter import get_filter_data_query
diff --git a/geomagio/api/ws/filter.py b/geomagio/api/ws/filter.py
index 234aaa7cd2f659776589be4d098d5c71c1146f70..95853f865ba97f002a30acb1a7e47efe56062618 100644
--- a/geomagio/api/ws/filter.py
+++ b/geomagio/api/ws/filter.py
@@ -11,7 +11,6 @@ from .DataApiQuery import (
     DataType,
     OutputFormat,
     SamplingPeriod,
-    SamplingPeriodWithAuto,
 )
 from .FilterApiQuery import FilterApiQuery
 from ...algorithm.FilterAlgorithm import STEPS
@@ -34,13 +33,13 @@ def get_filter_data_query(
     format: Union[OutputFormat, str] = Query(
         OutputFormat.IAGA2002, title="Output Format"
     ),
-    input_sampling_period: Union[SamplingPeriodWithAuto, float, int] = Query(
-        SamplingPeriodWithAuto.AUTO,  # Assign Default value as auto
+    input_sampling_period: Optional[Union[SamplingPeriod, float]] = Query(
+        None,
         title="Initial Sampling Period",
-        description="Auto will dynamically determine necessary input_sampling_period.",
+        description="`--` dynamically determines a necessary sampling period.",
     ),
     sampling_period: Union[SamplingPeriod, float] = Query(
-        SamplingPeriod, alias="output_sampling_period", title="Output sampling period"
+        SamplingPeriod.SECOND, alias="output_sampling_period", title="Output sampling period"
     ),
     data_host: Union[DataHost, str] = Query(
         DataHost.DEFAULT, title="Data Host", description="Edge host to pull data from."
@@ -66,7 +65,7 @@ def get_timeseries(query: FilterApiQuery) -> Stream:
 
     # Determine input sampling period if not provided
     # if query.input_sampling_period == SamplingPeriodWithAuto.AUTO or query.input_sampling_period is None:
-    if math.isnan(query.input_sampling_period) or query.input_sampling_period is None:
+    if query.input_sampling_period is None:
         # Dynamically determine the input sampling period
         input_sampling_period, data = determine_available_period(
             query.sampling_period, query, data_factory
diff --git a/test/FilterApiQuery_test.py b/test/FilterApiQuery_test.py
index 1c7c384547b71c413ae340a31e6e2860a4ad2804..b6a4dc04c5b023d0d303394babfeaa55b0bc2011 100644
--- a/test/FilterApiQuery_test.py
+++ b/test/FilterApiQuery_test.py
@@ -5,7 +5,6 @@ from obspy import UTCDateTime
 from geomagio.api.ws.FilterApiQuery import FilterApiQuery
 from geomagio.api.ws.DataApiQuery import (
     SamplingPeriod,
-    SamplingPeriodWithAuto,
     DataType,
     OutputFormat,
     DataHost,
@@ -23,7 +22,7 @@ def test_FilterApiQuery_defaults():
     assert_equal(query.starttime, expected_start_time)
     assert_equal(query.endtime, expected_endtime)
     assert_equal(query.elements, ["X", "Y", "Z", "F"])
-    assert_equal(query.input_sampling_period, SamplingPeriodWithAuto.AUTO)
+    assert_equal(query.input_sampling_period, None)
     assert_equal(query.sampling_period, SamplingPeriod.MINUTE)
     assert_equal(query.data_type, DataType.VARIATION)
     assert_equal(query.format, OutputFormat.IAGA2002)
@@ -47,7 +46,7 @@ def test_FilterApiQuery_valid():
     assert_equal(query.starttime, UTCDateTime("2024-09-01T00:00:01"))
     assert_equal(query.endtime, UTCDateTime("2024-09-01T01:00:01"))
     assert_equal(query.elements, ["Z"])
-    assert_equal(query.input_sampling_period, SamplingPeriodWithAuto.MINUTE)
+    assert_equal(query.input_sampling_period, SamplingPeriod.MINUTE)
     assert_equal(query.sampling_period, SamplingPeriod.HOUR)
     assert_equal(query.data_type, DataType.ADJUSTED)
     assert_equal(query.format, OutputFormat.JSON)