diff --git a/plstackapi/core/api/deployment_networks.py b/plstackapi/core/api/deployment_networks.py
index 80b4ff3..00ee2e8 100644
--- a/plstackapi/core/api/deployment_networks.py
+++ b/plstackapi/core/api/deployment_networks.py
@@ -1,14 +1,17 @@
+from types import StringTypes
 from plstackapi.openstack.client import OpenStackClient
 from plstackapi.openstack.driver import OpenStackDriver
 from plstackapi.core.api.auth import auth_check
 from plstackapi.core.models import DeploymentNetwork
 
 def _get_deployment_networks(filter):
+    if isinstance(filter, StringTypes) and filter.isdigit():
+        filter = int(filter)
     if isinstance(filter, int):
         deployment_networks = DeploymentNetwork.objects.filter(id=filter)
     elif isinstance(filter, StringTypes):
         deployment_networks = DeploymentNetwork.objects.filter(name=filter)
-    elif isinstance(filer, dict):
+    elif isinstance(filter, dict):
         deployment_networks = DeploymentNetwork.objects.filter(**filter)
     else:
         deployment_networks = []
