diff --git a/Sources/ElixxirDAppsSDK/E2E/Functors/E2ERequestAuthenticatedChannel.swift b/Sources/ElixxirDAppsSDK/E2E/Functors/E2ERequestAuthenticatedChannel.swift
index abba09c78fd2581e7fe4ddf39bad0836714baeb8..f4dccad24a4d9ccbe4d34cfcc3afff3e6935692b 100644
--- a/Sources/ElixxirDAppsSDK/E2E/Functors/E2ERequestAuthenticatedChannel.swift
+++ b/Sources/ElixxirDAppsSDK/E2E/Functors/E2ERequestAuthenticatedChannel.swift
@@ -2,23 +2,23 @@ import Bindings
 import XCTestDynamicOverlay
 
 public struct E2ERequestAuthenticatedChannel {
-  public var run: (Data, String) throws -> Int64
+  public var run: (Data, [Fact]) throws -> Int64
 
   public func callAsFunction(
     partnerContact: Data,
-    myFactsString: String
+    myFacts: [Fact]
   ) throws -> Int64 {
-    try run(partnerContact, myFactsString)
+    try run(partnerContact, myFacts)
   }
 }
 
 extension E2ERequestAuthenticatedChannel {
   public static func live(_ bindingsE2E: BindingsE2e) -> E2ERequestAuthenticatedChannel {
-    E2ERequestAuthenticatedChannel { partnerContact, myFactsString in
+    E2ERequestAuthenticatedChannel { partnerContact, myFacts in
       var roundId: Int64 = 0
       try bindingsE2E.request(
         partnerContact,
-        myFactsString: myFactsString,
+        factsListJson: try myFacts.encode(),
         ret0_: &roundId
       )
       return roundId