diff --git a/python_binding/graph/pybind_GraphView.cpp b/python_binding/graph/pybind_GraphView.cpp
index abb1a9eca0bc3edb1ee0faaecb9f6cd9bc52e167..37576b695fba4970a123070ad284e4306a092778 100644
--- a/python_binding/graph/pybind_GraphView.cpp
+++ b/python_binding/graph/pybind_GraphView.cpp
@@ -50,6 +50,7 @@ void init_GraphView(py::module& m) {
           )mydelimiter")
 
           .def("get_input_nodes", &GraphView::inputNodes,
+          py::arg("filter") = Aidge::InputCategory::All,
           R"mydelimiter(
           Get set of input Nodes.
 
diff --git a/python_binding/operator/pybind_Operator.cpp b/python_binding/operator/pybind_Operator.cpp
index 18708adee1f9644af7d6824cfb7896e786da2108..94b41f691051101871626b907f2a8c81a49c5f13 100644
--- a/python_binding/operator/pybind_Operator.cpp
+++ b/python_binding/operator/pybind_Operator.cpp
@@ -28,11 +28,13 @@ void init_Operator(py::module& m){
         .value("Data", OperatorType::Data)
         .value("Tensor", OperatorType::Tensor);
 
-    py::enum_<InputCategory>(m, "InputCategory")
-        .value("Data", InputCategory::Data)
-        .value("Param", InputCategory::Param)
-        .value("OptionalData", InputCategory::OptionalData)
-        .value("OptionalParam", InputCategory::OptionalParam);
+    py::enum_<Aidge::InputCategory>(m, "InputCategory", py::arithmetic())
+        .value("Optional", Aidge::InputCategory::Optional)
+        .value("Data", Aidge::InputCategory::Data)
+        .value("OptionalData", Aidge::InputCategory::OptionalData)
+        .value("Param", Aidge::InputCategory::Param)
+        .value("OptionalParam", Aidge::InputCategory::OptionalParam)
+        .value("All", Aidge::InputCategory::All);
 
     py::class_<Operator, std::shared_ptr<Operator>>(m, "Operator")
     .def("__repr__", &Operator::repr)
diff --git a/python_binding/pybind_core.cpp b/python_binding/pybind_core.cpp
index 7fef82847f3a9e5252e14c1aff584b21f182e36c..ee10cc06880bacb1970582ae022fe47bcd9f81fb 100644
--- a/python_binding/pybind_core.cpp
+++ b/python_binding/pybind_core.cpp
@@ -132,12 +132,6 @@ void init_Aidge(py::module& m) {
     init_Attributes(m);
     init_Spikegen(m);
 
-    init_Node(m);
-    init_GraphView(m);
-    init_OpArgs(m);
-    init_Connector(m);
-    init_SinglePassGraphMatching(m);
-
     init_OperatorImpl(m);
     init_Log(m);
     init_Operator(m);
@@ -146,6 +140,12 @@ void init_Aidge(py::module& m) {
     init_StaticAnalysis(m);
     init_DynamicAnalysis(m);
 
+    init_Node(m);
+    init_GraphView(m);
+    init_OpArgs(m);
+    init_Connector(m);
+    init_SinglePassGraphMatching(m);
+
     init_Abs(m);
     init_Add(m);
     init_And(m);