diff --git a/djangoldp/permissions.py b/djangoldp/permissions.py
index 29858650212aa7eff357831f46bad9035ac06dab..e22e39b754ff09912baced5ac27f12e7e26d82f4 100644
--- a/djangoldp/permissions.py
+++ b/djangoldp/permissions.py
@@ -1,5 +1,6 @@
 from rest_framework.permissions import BasePermission
 from django.core.exceptions import PermissionDenied
+from django.db.models.base import ModelBase
 
 
 class LDPPermissions(BasePermission):
@@ -42,9 +43,15 @@ class LDPPermissions(BasePermission):
             else:
                 return authenticated_perms
 
-    def filter_user_perms(self, user, model, permissions):
+    def filter_user_perms(self, user, obj_or_model, permissions):
         # Only used on Model.get_permissions to translate permissions to LDP
-        return [perm for perm in permissions if perm in self.user_permissions(user, model)]
+        if isinstance(obj_or_model, ModelBase):
+            model = obj_or_model
+            obj = None
+        else:
+            obj = obj_or_model
+            model = obj_or_model.__class__  
+        return [perm for perm in permissions if perm in self.user_permissions(user, model, obj)]
 
 
     perms_map = {