---
canonical: "https://agi-labo.com/tools/wings/docs/handler-invocation"
title: "Handler 間の呼び出し"
description: "子 Handler の結果と、共有する上限を理解します。"
section: "主要機能"
order: 11
pageType: "how-to"
lastVerifiedVersion: "1.4.16"
lastVerifiedAt: "2026-10-15"
draft: false
surfaces: ["cli", "console", "api"]
plans: ["free", "member"]
---

`env.handler()` で、同じアカウントに保存した別の Handler を呼び出せます。
この例は、`normalize` という名前の Handler にテキストを渡します。
呼び出し先を先に登録してください。

```js
export default async function (event, env) {
  return env.handler('normalize').run({ text: event.text })
}
```

呼び出し先は、自分に設定された Connection、Secret、Database を使います。
Web アプリの閲覧者情報は、呼び出し先へ引き継がれません。

## 実行履歴で確認する

呼び出し先も、子 Run として記録されます。
`triggerKind` は `internal-handler-invoke` です。
履歴で、呼び出し元と最初の Run を確認できます。

## 子 Run の上限

| 対象 | 上限 |
| --- | --- |
| 呼び出しの深さ | 5 |
| 最初の Run から始まる呼び出しの合計 | 16回 |
| event と結果 | それぞれ500 KiB |
| JSON の深さ | 64 |
| JSON の値 | 10,000個 |
| 1配列の項目 | 1,000個 |
| 1オブジェクトの項目 | 256個 |
| 1つの文字列 | 256 KiB |
| 文字列の合計 | 512 KiB |

子 Run も、同じ毎分・毎時の回数と1日の利用時間に数えます。
呼び出したすべての処理は、最初の Run の実行期限までに終える必要があります。
Handler を分けても、[プランの上限](/tools/wings/docs/plans-limits)や実行期限は延びません。
