> ## Documentation Index
> Fetch the complete documentation index at: https://stytch.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Authenticate

> Authenticates the discovery email OTP, returning an intermediate session token and the list of discovered organizations. Calls the `POST /sdk/v1/b2b/otps/email/discovery/authenticate` endpoint.

## Parameters

**emailAddress** `String` *required*

**code** `String` *required*

## Returns

**requestId** `String` *required*

**emailAddress** `String` *required*

**intermediateSessionToken** `String` *required*

**discoveredOrganizations** `List\<ApiDiscoveryV1DiscoveredOrganization\>` *required*

**properties**

**memberAuthenticated** `Boolean` *required*

**organization** `ApiOrganizationV1Organization?`

**properties**

**organizationId** `String` *required*

**organizationName** `String` *required*

**organizationLogoUrl** `String` *required*

**organizationSlug** `String` *required*

**ssoJitProvisioning** `String` *required*

**ssoJitProvisioningAllowedConnections** `List\<String\>` *required*

**ssoActiveConnections** `List\<ApiOrganizationV1ActiveSSOConnection\>` *required*

**emailAllowedDomains** `List\<String\>` *required*

**emailJitProvisioning** `String` *required*

**emailInvites** `String` *required*

**authMethods** `String` *required*

**allowedAuthMethods** `List\<String\>` *required*

**mfaPolicy** `String` *required*

**rbacEmailImplicitRoleAssignments** `List\<ApiOrganizationV1EmailImplicitRoleAssignment\>` *required*

**mfaMethods** `String` *required*

**allowedMfaMethods** `List\<String\>` *required*

**oauthTenantJitProvisioning** `String` *required*

**claimedEmailDomains** `List\<String\>` *required*

**firstPartyConnectedAppsAllowedType** `String` *required*

**allowedFirstPartyConnectedApps** `List\<String\>` *required*

**thirdPartyConnectedAppsAllowedType** `String` *required*

**allowedThirdPartyConnectedApps** `List\<String\>` *required*

**customRoles** `List\<ApiOrganizationV1CustomRole\>` *required*

**trustedMetadata** `Map\<String, JsonElement\>?`

**createdAt** `Instant?`

**updatedAt** `Instant?`

**organizationExternalId** `String?`

**ssoDefaultConnectionId** `String?`

**scimActiveConnection** `ApiOrganizationV1ActiveSCIMConnection?`

**allowedOauthTenants** `Map\<String, JsonElement\>?`

**membership** `ApiDiscoveryV1Membership?`

**properties**

**type** `String` *required*

**details** `Map\<String, JsonElement\>?`

**member** `ApiOrganizationV1Member?`

**primaryRequired** `ApiB2bSessionV1PrimaryRequired?`

**properties**

**allowedAuthMethods** `List\<String\>` *required*

**mfaRequired** `ApiB2bMfaV1MfaRequired?`

**properties**

**memberOptions** `ApiB2bMfaV1MemberOptions?`

**secondaryAuthInitiated** `String?`

**statusCode** `Int` *required*

**mfaRequired** `ApiB2bMfaV1MfaRequired?`

Present when the member must complete an MFA step before the session is fully established.

**properties**

**memberOptions** `ApiB2bMfaV1MemberOptions?`

**properties**

**mfaPhoneNumber** `String` *required*

**totpRegistrationId** `String` *required*

**secondaryAuthInitiated** `String?`

```js theme={null}
StytchB2B.otp.email.discovery.authenticate({ emailAddress: "user@example.com", code: "123456" })
```
