---
title: supertokens-node/recipe/emailverification/types
description: References documentation for the supertokens-node/recipe/emailverification/types package
sidebar:
  order: 120
---

## Type Aliases

### APIInterface

```ts check=false reason="Generated API signature"
type APIInterface = object;
```

Defined in: [recipe/emailverification/types.ts:127](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L127)

#### Properties

| Property | Type | Defined in |
| ------ | ------ | ------ |
| <a id="generateemailverifytokenpost"></a> `generateEmailVerifyTokenPOST` | \| `undefined` \| (`input`) => `Promise`\< \| \{ `status`: `"OK"`; \} \| \{ `newSession?`: `SessionContainerInterface`; `status`: `"EMAIL_ALREADY_VERIFIED_ERROR"`; \} \| [`GeneralErrorResponse`](types#generalerrorresponse)\> | [recipe/emailverification/types.ts:153](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L153) |
| <a id="isemailverifiedget"></a> `isEmailVerifiedGET` | \| `undefined` \| (`input`) => `Promise`\< \| \{ `isVerified`: `boolean`; `newSession?`: `SessionContainerInterface`; `status`: `"OK"`; \} \| [`GeneralErrorResponse`](types#generalerrorresponse)\> | [recipe/emailverification/types.ts:142](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L142) |
| <a id="verifyemailpost"></a> `verifyEmailPOST` | \| `undefined` \| (`input`) => `Promise`\< \| \{ `newSession?`: `SessionContainerInterface`; `status`: `"OK"`; `user`: [`UserEmailInfo`](#useremailinfo); \} \| \{ `status`: `"EMAIL_VERIFICATION_INVALID_TOKEN_ERROR"`; \} \| [`GeneralErrorResponse`](types#generalerrorresponse)\> | [recipe/emailverification/types.ts:128](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L128) |

***

### APIOptions

```ts check=false reason="Generated API signature"
type APIOptions = object;
```

Defined in: [recipe/emailverification/types.ts:116](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L116)

#### Properties

| Property | Type | Defined in |
| ------ | ------ | ------ |
| <a id="appinfo"></a> `appInfo` | [`NormalisedAppinfo`](types#normalisedappinfo) | [recipe/emailverification/types.ts:118](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L118) |
| <a id="config"></a> `config` | [`TypeNormalisedInput`](#typenormalisedinput) | [recipe/emailverification/types.ts:119](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L119) |
| <a id="emaildelivery"></a> `emailDelivery` | `EmailDeliveryIngredient`\<[`TypeEmailVerificationEmailDeliveryInput`](#typeemailverificationemaildeliveryinput)\> | [recipe/emailverification/types.ts:124](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L124) |
| <a id="isinserverlessenv"></a> `isInServerlessEnv` | `boolean` | [recipe/emailverification/types.ts:121](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L121) |
| <a id="recipeid"></a> `recipeId` | `string` | [recipe/emailverification/types.ts:120](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L120) |
| <a id="recipeimplementation"></a> `recipeImplementation` | [`RecipeInterface`](#recipeinterface) | [recipe/emailverification/types.ts:117](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L117) |
| <a id="req"></a> `req` | `BaseRequest` | [recipe/emailverification/types.ts:122](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L122) |
| <a id="res"></a> `res` | `BaseResponse` | [recipe/emailverification/types.ts:123](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L123) |

***

### GetEmailForRecipeUserIdFunc()

```ts check=false reason="Generated API signature"
type GetEmailForRecipeUserIdFunc = (user, recipeUserId, userContext) => Promise<
  | {
  email: string;
  status: "OK";
}
  | {
  status: "EMAIL_DOES_NOT_EXIST_ERROR" | "UNKNOWN_USER_ID_ERROR";
}>;
```

Defined in: [recipe/emailverification/types.ts:180](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L180)

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `user` | [`User`](types#user) \| `undefined` |
| `recipeUserId` | [`RecipeUserId`](index#recipeuserid-1) |
| `userContext` | [`UserContext`](types#usercontext) |

#### Returns

`Promise`\<
  \| \{
  `email`: `string`;
  `status`: `"OK"`;
\}
  \| \{
  `status`: `"EMAIL_DOES_NOT_EXIST_ERROR"` \| `"UNKNOWN_USER_ID_ERROR"`;
\}\>

***

### RecipeInterface

```ts check=false reason="Generated API signature"
type RecipeInterface = object;
```

Defined in: [recipe/emailverification/types.ts:79](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L79)

#### Methods

##### createEmailVerificationToken()

```ts check=false reason="Generated API signature"
createEmailVerificationToken(input): Promise<
  | {
  status: "OK";
  token: string;
}
  | {
  status: "EMAIL_ALREADY_VERIFIED_ERROR";
}>;
```

Defined in: [recipe/emailverification/types.ts:80](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L80)

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `input` | \{ `email`: `string`; `recipeUserId`: [`RecipeUserId`](index#recipeuserid-1); `tenantId`: `string`; `userContext`: [`UserContext`](types#usercontext); \} |
| `input.email` | `string` |
| `input.recipeUserId` | [`RecipeUserId`](index#recipeuserid-1) |
| `input.tenantId` | `string` |
| `input.userContext` | [`UserContext`](types#usercontext) |

###### Returns

`Promise`\<
  \| \{
  `status`: `"OK"`;
  `token`: `string`;
\}
  \| \{
  `status`: `"EMAIL_ALREADY_VERIFIED_ERROR"`;
\}\>

##### isEmailVerified()

```ts check=false reason="Generated API signature"
isEmailVerified(input): Promise<boolean>;
```

Defined in: [recipe/emailverification/types.ts:100](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L100)

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `input` | \{ `email`: `string`; `recipeUserId`: [`RecipeUserId`](index#recipeuserid-1); `userContext`: [`UserContext`](types#usercontext); \} |
| `input.email` | `string` |
| `input.recipeUserId` | [`RecipeUserId`](index#recipeuserid-1) |
| `input.userContext` | [`UserContext`](types#usercontext) |

###### Returns

`Promise`\<`boolean`\>

##### revokeEmailVerificationTokens()

```ts check=false reason="Generated API signature"
revokeEmailVerificationTokens(input): Promise<{
  status: "OK";
}>;
```

Defined in: [recipe/emailverification/types.ts:102](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L102)

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `input` | \{ `email`: `string`; `recipeUserId`: [`RecipeUserId`](index#recipeuserid-1); `tenantId`: `string`; `userContext`: [`UserContext`](types#usercontext); \} |
| `input.email` | `string` |
| `input.recipeUserId` | [`RecipeUserId`](index#recipeuserid-1) |
| `input.tenantId` | `string` |
| `input.userContext` | [`UserContext`](types#usercontext) |

###### Returns

`Promise`\<\{
  `status`: `"OK"`;
\}\>

##### unverifyEmail()

```ts check=false reason="Generated API signature"
unverifyEmail(input): Promise<{
  status: "OK";
}>;
```

Defined in: [recipe/emailverification/types.ts:109](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L109)

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `input` | \{ `email`: `string`; `recipeUserId`: [`RecipeUserId`](index#recipeuserid-1); `userContext`: [`UserContext`](types#usercontext); \} |
| `input.email` | `string` |
| `input.recipeUserId` | [`RecipeUserId`](index#recipeuserid-1) |
| `input.userContext` | [`UserContext`](types#usercontext) |

###### Returns

`Promise`\<\{
  `status`: `"OK"`;
\}\>

##### verifyEmailUsingToken()

```ts check=false reason="Generated API signature"
verifyEmailUsingToken(input): Promise<
  | {
  status: "OK";
  user: UserEmailInfo;
}
  | {
  status: "EMAIL_VERIFICATION_INVALID_TOKEN_ERROR";
}>;
```

Defined in: [recipe/emailverification/types.ts:93](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L93)

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `input` | \{ `attemptAccountLinking`: `boolean`; `tenantId`: `string`; `token`: `string`; `userContext`: [`UserContext`](types#usercontext); \} |
| `input.attemptAccountLinking` | `boolean` |
| `input.tenantId` | `string` |
| `input.token` | `string` |
| `input.userContext` | [`UserContext`](types#usercontext) |

###### Returns

`Promise`\<
  \| \{
  `status`: `"OK"`;
  `user`: [`UserEmailInfo`](#useremailinfo);
\}
  \| \{
  `status`: `"EMAIL_VERIFICATION_INVALID_TOKEN_ERROR"`;
\}\>

***

### TypeEmailVerificationEmailDeliveryInput

```ts check=false reason="Generated API signature"
type TypeEmailVerificationEmailDeliveryInput = object;
```

Defined in: [recipe/emailverification/types.ts:166](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L166)

#### Properties

| Property | Type | Defined in |
| ------ | ------ | ------ |
| <a id="emailverifylink"></a> `emailVerifyLink` | `string` | [recipe/emailverification/types.ts:176](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L176) |
| <a id="tenantid"></a> `tenantId` | `string` | [recipe/emailverification/types.ts:177](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L177) |
| <a id="type"></a> `type` | `"EMAIL_VERIFICATION"` | [recipe/emailverification/types.ts:167](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L167) |
| <a id="user"></a> `user` | `object` | [recipe/emailverification/types.ts:168](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L168) |
| `user.email` | `string` | [recipe/emailverification/types.ts:174](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L174) |
| `user.id` | `string` | [recipe/emailverification/types.ts:172](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L172) |
| `user.recipeUserId` | [`RecipeUserId`](index#recipeuserid-1) | [recipe/emailverification/types.ts:173](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L173) |

***

### TypeInput

```ts check=false reason="Generated API signature"
type TypeInput = object;
```

Defined in: [recipe/emailverification/types.ts:28](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L28)

#### Properties

| Property | Type | Defined in |
| ------ | ------ | ------ |
| <a id="emaildelivery-1"></a> `emailDelivery?` | `EmailDeliveryTypeInput`\<[`TypeEmailVerificationEmailDeliveryInput`](#typeemailverificationemaildeliveryinput)\> | [recipe/emailverification/types.ts:30](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L30) |
| <a id="getemailforrecipeuserid"></a> `getEmailForRecipeUserId?` | (`recipeUserId`, `userContext`) => `Promise`\< \| \{ `email`: `string`; `status`: `"OK"`; \} \| \{ `status`: `"EMAIL_DOES_NOT_EXIST_ERROR"` \| `"UNKNOWN_USER_ID_ERROR"`; \}\> | [recipe/emailverification/types.ts:31](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L31) |
| <a id="mode"></a> `mode` | `"REQUIRED"` \| `"OPTIONAL"` | [recipe/emailverification/types.ts:29](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L29) |
| <a id="override"></a> `override?` | `object` | [recipe/emailverification/types.ts:41](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L41) |
| `override.apis?` | (`originalImplementation`, `builder`) => [`APIInterface`](#apiinterface) | [recipe/emailverification/types.ts:46](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L46) |
| `override.functions?` | (`originalImplementation`, `builder`) => [`RecipeInterface`](#recipeinterface) | [recipe/emailverification/types.ts:42](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L42) |

***

### TypeNormalisedInput

```ts check=false reason="Generated API signature"
type TypeNormalisedInput = object;
```

Defined in: [recipe/emailverification/types.ts:50](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L50)

#### Properties

| Property | Type | Defined in |
| ------ | ------ | ------ |
| <a id="getemaildeliveryconfig"></a> `getEmailDeliveryConfig` | (`isInServerlessEnv`) => `EmailDeliveryTypeInputWithService`\<[`TypeEmailVerificationEmailDeliveryInput`](#typeemailverificationemaildeliveryinput)\> | [recipe/emailverification/types.ts:52](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L52) |
| <a id="getemailforrecipeuserid-1"></a> `getEmailForRecipeUserId?` | (`recipeUserId`, `userContext`) => `Promise`\< \| \{ `email`: `string`; `status`: `"OK"`; \} \| \{ `status`: `"EMAIL_DOES_NOT_EXIST_ERROR"` \| `"UNKNOWN_USER_ID_ERROR"`; \}\> | [recipe/emailverification/types.ts:55](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L55) |
| <a id="mode-1"></a> `mode` | `"REQUIRED"` \| `"OPTIONAL"` | [recipe/emailverification/types.ts:51](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L51) |
| <a id="override-1"></a> `override` | `object` | [recipe/emailverification/types.ts:65](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L65) |
| `override.apis` | (`originalImplementation`, `builder`) => [`APIInterface`](#apiinterface) | [recipe/emailverification/types.ts:70](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L70) |
| `override.functions` | (`originalImplementation`, `builder`) => [`RecipeInterface`](#recipeinterface) | [recipe/emailverification/types.ts:66](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L66) |

***

### UserEmailInfo

```ts check=false reason="Generated API signature"
type UserEmailInfo = object;
```

Defined in: [recipe/emailverification/types.ts:74](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L74)

#### Properties

| Property | Type | Defined in |
| ------ | ------ | ------ |
| <a id="email"></a> `email` | `string` | [recipe/emailverification/types.ts:76](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L76) |
| <a id="recipeuserid"></a> `recipeUserId` | [`RecipeUserId`](index#recipeuserid-1) | [recipe/emailverification/types.ts:75](https://github.com/supertokens/supertokens-node/blob/8353a9a70d8b17dd9ff6ffe41201fa2ef0e60218/lib/ts/recipe/emailverification/types.ts#L75) |
