diff --git a/projects/policyengine-api-simulation/src/modal/gateway/endpoints.py b/projects/policyengine-api-simulation/src/modal/gateway/endpoints.py index a4716f147..5571b2d29 100644 --- a/projects/policyengine-api-simulation/src/modal/gateway/endpoints.py +++ b/projects/policyengine-api-simulation/src/modal/gateway/endpoints.py @@ -100,6 +100,7 @@ def _build_budget_window_parent_payload( payload = request.model_dump( exclude={"telemetry"}, mode="json", + exclude_none=True, ) payload["version"] = resolved_version if request.telemetry is not None: @@ -162,6 +163,7 @@ async def submit_simulation(request: SimulationRequest): payload = request.model_dump( exclude={"version", "telemetry"}, mode="json", + exclude_none=True, ) run_id = request.telemetry.run_id if request.telemetry else None if request.telemetry is not None: diff --git a/projects/policyengine-api-simulation/tests/gateway/test_endpoints.py b/projects/policyengine-api-simulation/tests/gateway/test_endpoints.py index 1dd3715ff..fb4de34ce 100644 --- a/projects/policyengine-api-simulation/tests/gateway/test_endpoints.py +++ b/projects/policyengine-api-simulation/tests/gateway/test_endpoints.py @@ -167,6 +167,8 @@ def test__given_no_data_value__then_routes_to_run_simulation( "policyengine-simulation-us1-500-0-uk2-66-0", "run_simulation", ) + assert "time_period" not in mock_modal["func"].last_payload + assert "data_version" not in mock_modal["func"].last_payload def test__given_submission__then_returns_job_id_and_poll_url( self, mock_modal, client: TestClient