> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-docs-event-stream-action-templates.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-dev-docs-event-stream-action-templates/5l8GTXHD40NsjgmL/docs/images/ja-jp/cdy7uua7fh8z/1h69FWzZwk9beKKjB4Cq38/16aa515e61cc6e9ebdfd0849201e3141/generate-one-time-password.png?fit=max&auto=format&n=5l8GTXHD40NsjgmL&q=85&s=3493158026cb531a8a90a5bd8d501b38" 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-dev-docs-event-stream-action-templates/itywf6vBRFUC2Nea/docs/images/ja-jp/cdy7uua7fh8z/3bkT8QDN4dcl0YHTrSOIGj/9698a07f55353a11ca98164377cd4217/verify-otp.png?fit=max&auto=format&n=itywf6vBRFUC2Nea&q=85&s=a5e73da96624df67122225773965ffb3" 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-dev-docs-event-stream-action-templates/ZqABYvyPOuGZRvBz/docs/images/ja-jp/cdy7uua7fh8z/6qkqny1hhObFalHwdEG342/1a2e18195b29102c3f68744f42277917/verify-email.png?fit=max&auto=format&n=ZqABYvyPOuGZRvBz&q=85&s=cac6c2c7b50ca4790bf91a82f2aebc6a" 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
}
```
