         var registerPath: String = ""
         var signInPath: String = ""
         var refreshPath: String = ""
+        var confirmationCodePath: String = ""
         
         if let readerInfo = reader.data as? [AnyHashable: Any] {
             registerPath = (readerInfo["register_path"] as? String) ?? ""
             signInPath = (readerInfo["sign_in_path"] as? String) ?? ""
             refreshPath = (readerInfo["refresh_path"] as? String) ?? ""
+            confirmationCodePath = (readerInfo["confirmation_code_path"] as? String) ?? ""
         }
         
-        let auth = PyroAuth(key: key, request: request, signInPath: signInPath, registerPath: registerPath, refreshPath: refreshPath)
+        let auth = PyroAuth(key: key, request: request, signInPath: signInPath, registerPath: registerPath, refreshPath: refreshPath, confirmationCodePath: confirmationCodePath)
         return auth
     }
 }

        }
    }
    
    internal func handleRequestResult(_ result: RequestResult, completion: @escaping (PyroAuthResult<PyroAuthContent>) -> Void) {
        switch result {
        case .succeeded(let info):

    internal var signInPath: String
    internal var registerPath: String
    internal var refreshPath: String
    internal var confirmationCodePath: String
    
    public init(key: String, request: RequestProtocol, signInPath: String, registerPath: String, refreshPath: String, confirmationCodePath: String) {
        self.key = key
        self.request = request
        self.signInPath = signInPath
        self.registerPath = registerPath
        self.refreshPath = refreshPath
        self.confirmationCodePath = confirmationCodePath
    }
    
    public func register(email: String, password: String, completion: @escaping (PyroAuthResult<PyroAuthContent>) -> Void) {
