diff --git a/Sources/XXClient/Group/Functors/GroupGetMembership.swift b/Sources/XXClient/Group/Functors/GroupGetMembership.swift
index 1d78a2486781187817b022a96741b12c8217cbf6..4df1694412ca0e82001c18ec53938f7855f6778b 100644
--- a/Sources/XXClient/Group/Functors/GroupGetMembership.swift
+++ b/Sources/XXClient/Group/Functors/GroupGetMembership.swift
@@ -2,9 +2,9 @@ import Bindings
 import XCTestDynamicOverlay
 
 public struct GroupGetMembership {
-  public var run: () throws -> Data
+  public var run: () throws -> [GroupMember]
 
-  public func callAsFunction() throws -> Data {
+  public func callAsFunction() throws -> [GroupMember] {
     try run()
   }
 }
@@ -12,7 +12,8 @@ public struct GroupGetMembership {
 extension GroupGetMembership {
   public static func live(_ bindingsGroup: BindingsGroup) -> GroupGetMembership {
     GroupGetMembership {
-      try bindingsGroup.getMembership()
+      let data = try bindingsGroup.getMembership()
+      return try [GroupMember].decode(data)
     }
   }
 }