B2B Saas Authentication

/

Mobile SDKs

/

React Native SDK reference

/

Discovery

/

Exchange Intermediate Session

Exchange intermediate session

Wraps Stytch's exchange intermediate session endpoint. This method will fail if there is no intermediate session token present.

Intermediate session tokens are generated upon successful calls to primary authenticate methods in the case where MFA is required, such as email magic link authenticate or upon successful calls to discovery authenticate methods, such as email magic link discovery authenticate.

If this method succeeds and the Member is not required to complete MFA, the Member will be logged in, granted an active session, and the session data will be persisted on device.

If this method succeeds and MFA is required, the intermediate session token will be persisted on device.

You can listen for successful login events anywhere in the codebase with the stytch.session.onChange() method or useStytchMemberSession hook.


Method parameters


organization_id*string

session_duration_minutes*int

localestring

Response fields


request_idstring

status_codeint

member_idstring

session_jwtstring

session_tokenstring

intermediate_session_tokenstring

member_authenticatedboolean

mfa_requiredobject

primary_requiredobject

member_sessionobject

memberobject

organizationobject
import React from 'react';
import { Text, TouchableOpacity, View } from 'react-native';
import { useStytchB2BClient } from '@stytch/react-native/b2b';

export const ExchangeIntermediateSession = () => {
  const stytch = useStytchB2BClient();

  const handleExchange = () => {
    stytch.discovery.intermediateSessions.exchange({
      organization_id: 'organization-test-07971b06-ac8b-4cdb-9c15-63b17e653931',
      session_duration_minutes: 60,
    });
  };

  return (
    <View>
      <TouchableOpacity onPress={handleExchange}>
        <Text>Log In</Text>
      </TouchableOpacity>
    </View>
  );
};

RESPONSE

200
{
	"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
	"status_code": 200,
	"member_id": "member-test-32fc5024-9c09-4da3-bd2e-c9ce4da9375f",
	"session_token": "mZAYn5aLEqKUlZ_Ad9U_fWr38GaAQ1oFAhT8ds245v7Q",
	"session_jwt": "eyJ...",
	"intermediate_session_token": "",
	"member_authenticated": true,
	"mfa_required": null,
	"primary_required", null,
    "member_session": {...},
    "member": {...},
    "organization": {...}
}