summaryrefslogtreecommitdiff
path: root/src/mailman/rest/root.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/rest/root.py')
-rw-r--r--src/mailman/rest/root.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/mailman/rest/root.py b/src/mailman/rest/root.py
index caa44f872..cd4c8ceef 100644
--- a/src/mailman/rest/root.py
+++ b/src/mailman/rest/root.py
@@ -34,7 +34,7 @@ from mailman.rest.addresses import AllAddresses, AnAddress
from mailman.rest.domains import ADomain, AllDomains
from mailman.rest.helpers import etag, path_to
from mailman.rest.lists import AList, AllLists
-from mailman.rest.members import AMember, AllMembers
+from mailman.rest.members import AMember, AllMembers, FindMembers
from mailman.rest.users import AUser, AllUsers
@@ -120,9 +120,13 @@ class TopLevel(resource.Resource):
"""/<api>/members"""
if len(segments) == 0:
return AllMembers()
+ # Either the next segment is the string "find" or a member id. They
+ # cannot collide.
+ segment = segments.pop(0)
+ if segment == 'find':
+ return FindMembers(), segments
else:
- member_id = segments.pop(0)
- return AMember(member_id), segments
+ return AMember(segment), segments
@resource.child()
def users(self, request, segments):