Skip to main content
Para provides a comprehensive set of methods for managing authentication sessions in React Native applications. These sessions are crucial for secure transaction signing and other authenticated operations.

Session Duration

Para session length is configured per API key and can be set up to 30 days through the Configuration section of the or CLI. The Para API enforces the configured duration. Signing a message or transaction, or calling keepSessionAlive(), can extend an active session according to that configuration.

Managing Sessions

Checking Session Status

Use isSessionActive() to verify whether a user’s session is currently valid before performing authenticated operations.
In React Native applications, it’s especially important to check the session status before allowing users to access authenticated areas of your app due to the persistence of local storage between app launches.
Example usage:

Maintaining Active Sessions

Para provides the keepSessionAlive() method to extend an active session without requiring full reauthentication.
Example usage:

Refreshing Expired Sessions

When a session has expired, Para recommends initiating a full authentication flow rather than trying to refresh the session.
For React Native applications, always call logout() before reinitiating authentication when a session has expired to ensure all stored data is properly cleared.

Exporting Sessions to Your Server

Use exportSession() when you need to transfer session state to your server for performing operations on behalf of the user.
If your server doesn’t need to perform signing operations, use { excludeSigners: true } when exporting sessions for enhanced security.
Example implementation:

Best Practices for React Native

  1. Check Sessions on App Launch: Verify session status when your app starts to determine if users need to reauthenticate.
  1. Implement Automatic Session Extension: For long app usage sessions, periodically call keepSessionAlive() to prevent unexpected session expirations.
  1. Handle Background/Foreground State: React Native apps can be backgrounded and foregrounded, which may affect session status.
  1. Secure Storage Configuration: For enhanced security, consider implementing a to manage sensitive session data.

Next Steps

Explore more advanced features and integrations with Para in React Native: