@@ -11,6 +11,7 @@ import com.squareup.moshi.Moshi
1111import com.squareup.moshi.Types
1212import com.stytch.java.common.InstantAdapter
1313import com.stytch.java.common.JWTAuthResponse
14+ import com.stytch.java.common.JWTErrorResponse
1415import com.stytch.java.common.JWTException
1516import com.stytch.java.common.JWTNullResponse
1617import com.stytch.java.common.JWTResponse
@@ -580,7 +581,22 @@ internal class SessionsImpl(
580581 else ->
581582 when (val netResult = authenticate(AuthenticateRequest (sessionJwt = jwt))) {
582583 is StytchResult .Success -> StytchResult .Success (JWTAuthResponse (netResult.value))
583- else -> StytchResult .Success (JWTNullResponse )
584+ is StytchResult .Error ->
585+ when (val exception = netResult.exception) {
586+ is StytchException .Response -> {
587+ val errorResponse = exception.reason
588+ StytchResult .Success (
589+ JWTErrorResponse (
590+ statusCode = errorResponse.statusCode,
591+ requestId = errorResponse.requestId,
592+ errorType = errorResponse.errorType,
593+ errorMessage = errorResponse.errorMessage,
594+ errorUrl = errorResponse.errorUrl,
595+ ),
596+ )
597+ }
598+ else -> StytchResult .Success (JWTNullResponse )
599+ }
584600 }
585601 }
586602 }
0 commit comments