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

# データ検証

> データ検証フローアクションを構成して、ワンタイムパスワード（OTP）を生成し、メールアドレスを検証する方法を説明します。

このデータ検証アクションのリストは、メールアドレスを検証してワンタイムパスワードを生成・検証できるようにするものです。

## ワンタイムパスワードを生成する

メール、SMS、その他のメッセージアプリを使って送信できる、有効時間5分の数値コードを生成します。

<Frame>
  <img src="https://mintcdn.com/docs-staging-docs-5625/vBBC10ZHRFp7Oc3i/docs/images/ja-jp/cdy7uua7fh8z/1h69FWzZwk9beKKjB4Cq38/16aa515e61cc6e9ebdfd0849201e3141/generate-one-time-password.png?fit=max&auto=format&n=vBBC10ZHRFp7Oc3i&q=85&s=67bb5b7b8bdb300d0a12fe45480dc93d" alt="" width="1404" height="631" data-path="docs/images/ja-jp/cdy7uua7fh8z/1h69FWzZwk9beKKjB4Cq38/16aa515e61cc6e9ebdfd0849201e3141/generate-one-time-password.png" />
</Frame>

### 入力設定

| パラメーター | 説明 |
| - | - |
| 参照値（必須） | 生成したコードは電話番号、メールアドレスや他の値にバインドできます。 |
| コードの長さ（必須） | 生成されたコードの桁数です。 |

### 出力オブジェクト

| プロパティ | 種類 | 説明 |
| - | - | - |
| `code` | 文字列 | 生成されたコードです。 |

### 出力オブジェクトの例

```json lines theme={null}
{
  "code": "███",
}
```

## ワンタイムパスワードを検証する

提供したワンタイムパスワードコードが有効かどうかを検証します。

<Frame>
  <img src="https://mintcdn.com/docs-staging-docs-5625/0R2yC4bvemvq5aiX/docs/images/ja-jp/cdy7uua7fh8z/3bkT8QDN4dcl0YHTrSOIGj/9698a07f55353a11ca98164377cd4217/verify-otp.png?fit=max&auto=format&n=0R2yC4bvemvq5aiX&q=85&s=18b91fdd47063cca091c1543ca5b60c3" alt="" width="1404" height="646" data-path="docs/images/ja-jp/cdy7uua7fh8z/3bkT8QDN4dcl0YHTrSOIGj/9698a07f55353a11ca98164377cd4217/verify-otp.png" />
</Frame>

### 入力設定

| パラメーター | 説明 |
| - | - |
| 参照値（必須） | ワンタイムパスワード生成アクションで構成したのと同じ参照値を使用します。 |
| コードの長さ（必須） | 生成されたコードの桁数です。 |

### 出力オブジェクト

| プロパティ | タイプ | 説明 |
| - | - | - |
| `有効` | ブール値 | 指定されたコードが有効かどうかを示し、`true`または`false`の値を返します。 |
| `result` | 文字列 | 指定されたコードに基づき、以下のように異なる結果コードを返します。 <ul> <li> `MISSING（欠落）：` コードが指定されていません。</li> <li> `EXPIRED（有効期限切れ）：` 指定されたコードは有効期限切れです。</li> <li> `VALID（有効）：` 指定されたコードは有効です。</li> <li> `UNEQUAL（不一致）：` 指定されたコードは無効です。</li> </ul> |

### 出力オブジェクトの例

```json lines theme={null}
{
  "valid": false,
  "result": "UNEQUAL"
}
```

```json lines theme={null}
{
  "valid": true
}
```

## メールアドレスの検証

提供されたメールアドレスに対して、選択されたいくつかの検証ルールを実行します。

<Frame>
  <img src="https://mintcdn.com/docs-staging-docs-5625/L1uDFLRFA2bctWre/docs/images/ja-jp/cdy7uua7fh8z/6qkqny1hhObFalHwdEG342/1a2e18195b29102c3f68744f42277917/verify-email.png?fit=max&auto=format&n=L1uDFLRFA2bctWre&q=85&s=edd98573b68297b1e89cbe65ff673967" alt="" width="1404" height="1165" data-path="docs/images/ja-jp/cdy7uua7fh8z/6qkqny1hhObFalHwdEG342/1a2e18195b29102c3f68744f42277917/verify-email.png" />
</Frame>

### 入力設定

| パラメーター | 説明 |
| - | - |
| Email（メール）（必須） | 確認するメールアドレスです。 |
| （MXレコードを必須にする） | MXレコードを必須にします。ドメインにMXレコードがない場合、メールサーバーはそのドメインに対してメールの送信先を判断できません。 |
| Block free email providers（無料メールプロバイダーをブロックする） | @gmail.comや@hotmail.comなどの無料メールプロバイダーをブロックします。 |
| Block disposable email providers（使い捨てメールプロバイダーをブロックする） | @mailnator.comや@maildrop.ccなどの使い捨てメールプロバイダーをブロックします。 |
| Block email account aliases（メールアカウントのエイリアスをブロックする） | [jane.doe+alias@gmail.com](mailto:jane.doe+alias@gmail.com)など、メールアカウントのエイリアスをブロックします。 |
| Allowlist domains（許可リストのドメイン） | リストにある承認されたドメインからのメールのみを許可します。 |
| Blocklist domains（ブロックリストのドメイン） | 特定のメールドメインをブロックします。 |

### 出力オブジェクト

| プロパティ | 種類 | 説明 |
| - | - | - |
| `valid` | ブール値 | メールが検証ルールを満たしたかによって、`true`または`false`を返します。 |
| `cause` | 文字列 | 有効なプロパティが`false`の場合は、そのメールが満たしていない最初のルールについて以下の参照を返します。 <ul> <li> `MISSING_MX_RECORD`：メールのドメインにMXレコードがありません。</li> <li> `FREE_EMAIL`：メールのドメインが無料メールプロバイダーです。</li> <li> `DISPOSABLE_EMAIL`：使い捨てメールアドレスです。</li> <li> `BLOCKLISTED`：メールのドメインがブロックリストのドメイン設定に含まれています。</li> <li> `NOT_ALLOWED`：メールのドメインが許可リストのドメイン設定に含まれていません。</li> </ul> |

### 出力オブジェクトの例

```json lines theme={null}
{
  "valid": false,
  "cause": "FREE_EMAIL"
}
```

```json lines theme={null}
{
  "valid": true,
  "cause": null
}
```
