スケーラブルなフローを設計するには、Power Automate と Power Platform のライセンスと API がフローに課す制限を理解するのに役立ちます。 これらの制限に違反するフローは、スロットリングされたり、速度を落とされたり、停止されたりすることがあります。 フローが14日間継続的にスロットルされると、自動的にオフになります。 いつでもフローを再びオンにすることができます。 引き続き制限に違反すると、再びオフになります。 この記事では、フローに影響を与える可能性のある制限と、その範囲内にとどまる方法について説明します。 詳細については、自動フロー、予定フロー、インスタント フローの制限 および 要求の制限と割り当て を参照してください。
ライセンス プランを確認する
一部のプラットフォームと API の制限は、ライセンス プランによって異なります。 Power Automate では、ライセンスと機能を特定する最も簡単な方法は、設定>自分のライセンスを表示 を選択することです。
ライセンス プランの詳細をさらに掘り下げるには、Power Automate ポータルで Ctrl+Alt+A を押します。
API 要求の制限
API 要求は、Power Automate フローがサービスに、アプリへの接続やデータの送信または返却など、何かを行うように要求する方法です。 フローが何かを行うたびに、成功か失敗かにかかわらず、要求としてカウントされます。 詳細については、Microsoft Power Platform request とは? を参照してください。
ライセンス プランに基づいて、クラウド フローが 1 日に実行できるアクションの数には制限があります。 プラットフォーム レベルでの API の制限は、ユーザー ライセンスに基づきます。 詳細については、Power Automate ライセンスの種類 を参照してください。
API 要求の制限は、コネクタの調整の制限 とは異なります。 24 時間以内のすべてのフローにわたるすべての実行に適用されます。 フローが実行するアクションの数を表示するには、フローの詳細ページに移動して 分析 を選択し、アクション タブを選択します。
フローが Power Platform request をほとんど行わない場合でも、予想よりも頻繁に実行されると、制限に達する可能性があります。 たとえば、上司から電子メールが届くたびにプッシュ通知を送信するクラウド フローを作成することができます。 フローは、誰からでもメールを受け取るたびに実行されます。そのメールが上司からのものであるかどうかを確認する必要があるためです。
フローの要求使用状況を見積もるための以下のガイドラインを使用します:
1 つのトリガーと 1 つのアクションを持つ単純なフローでは、フローが実行されるたびに 2 つのアクションが発生し、2 つの要求が消費されます。
フロー内のすべてのトリガーとアクションは、Power Platform request を生成します。 アクションには、コネクタ アクション、HTTP アクション、組み込みアクション (変数の初期化、スコープの作成、単純な作成アクションなど) が含まれます。
成功したアクションと失敗したアクションの両方が制限の対象としてカウントされますが、スキップされたアクションはカウントされません。
各アクションは 1 つの要求を生成します。 アクションが "個々に適用" ループにある場合、ループで処理する項目と同じ数の要求が生成されます。
アクションには複数の式を含めることができますが、1 つの API 要求としてカウントされます。
再試行や、ページネーションによる追加リクエストもアクションとして数えられます。
フローがスロットリングされた場合の対処法
スロットリングは、次の 2 つの方法で解消できます。
- フローの容量を増やします。
- 送信するリクエストの数を減らします。
フローに独自の容量を付与する
プロセス ライセンスをフローに割り当てます。 ユーザー ライセンスとは異なり、プロセス ライセンスはフロー自体に割り当てられるため、フローの権利は、フローの所有者または実行者に依存しません。 プロセス ライセンスは、フローに 24 時間あたり 250,000 アクションを付与します (管理センター レポートの Power Platform 要求として表示されます)。
フローは ソリューション内にある必要があります。 その後、容量を割り当てる方法は 2 つあります。
- フローにライセンスを直接割り当てる: 1 つのフローで 24 時間あたり 250,000 を超えるアクションが必要な場合は、フロー間で作業を分割するのではなく、 最大 10 個のプロセス ライセンスをスタック します。 各ライセンスは、24 時間あたりさらに 250,000 アクションを追加します。
- フロー グループにライセンスを割り当てる: 24 時間あたり最大 25 個のソリューション対応クラウド フローがグループの 250,000 アクションを共有します。 すべての親子フローを明示的に追加する必要があり、フロー グループにライセンスをスタックすることはできません。
ライセンスが割り当てられた後にフローを保存すると、フローは新しい権利をすぐに取得します。 それ以外の場合、フローは 1 週間以内にバックグラウンドでプランを更新します。
購入前に容量が必要な場合は、グローバル管理者に、Microsoft 365 管理センターから 30 日間の無料プロセス試用版を開始するよう依頼してください。 試用版ライセンスは有料ライセンスと同じ権利を持つため、調整はすぐに解決されます。 詳細については、 管理者が管理する試用版ライセンスを参照してください。
Power Platform 要求アドオンもここでは役に立ちません。 アドオンは、フローではなくユーザーの 1 日あたりの要求制限を引き上げ、フローに割り当てることはできません。
Note
Power Automate のフローごとのプランは、Process ライセンスに置き換えられるレガシー ライセンスです。 フローごとのライセンスが既にあるフローでは、24 時間あたり 250,000 アクションが保持されますが、フローに割り当てることができるフローごとのライセンスは 1 つだけです。 制限を積み重ねることはできません。また、フロー グループに割り当てることはできません。 新しい容量にはプロセス ライセンスを使用します。
フローで使用する要求の数を減らします
すべてのトリガーとアクションは、変数の初期化やアクションの作成などの組み込みアクションを含め、要求としてカウントされます。 一般的な削減:
- 受信項目が実際に処理する必要がある場合にのみフローが実行されるように 、トリガー条件 を追加します。 すべてのメール受信時に開始され、その後送信者を確認するフローは、メールごとにリクエストを消費します。
- すべての行を取得して Apply to each ループ内でテストするのではなく、OData フィルター クエリを使用してデータ ソースでフィルター処理します。 ループの反復処理ごとに、独自の要求が生成されます。
- 各項目に作用するのではなく、データをリシェイプするループの代わりに、配列データの 選択 操作と フィルター 処理を使用します。
- 不要な再試行を削除します。 再試行と改ページの両方がアクションとしてカウントされます。
超過した制限を確認する
スロットリングされたすべてのフローが 1 日あたりのアクション制限に達するわけではありません。 別の救済策が適用されます。
| 症状: | 制限 | 役に立つもの |
|---|---|---|
| フロー全体で遅延したアクション、管理センター レポートの 1 日あたりのアクション数が多い | 1 日のアクションの制限 | Process ライセンス、またはより少ないリクエスト数 |
| 1 つのコネクタから返される HTTP 429、Rate limit is exceeded のようなエラー テキスト | コネクタの制限 | 時間の経過に伴う呼び出しの分散、バッチ処理、または別の接続の使用 |
| 読み込み中に Dataverse を呼び出すエラー | Dataverse サービス保護の制限 | 要求率を下げる。プロセス ライセンスがこれらを発生させません |
環境を従量課金制に移行すると、1 日のアクション制限を超える使用量の課金方法が変わります。 コネクタの制限や Dataverse サービス保護の制限は引き上げられません。そのため、調整されたフローの一般的な修正ではありません。
フローが中断されている場合
連続して 14 日間の制限を超えるフローが中断され、その所有者に通知されます。 プロセス ライセンスを割り当てて、フローをオンに戻します。
詳細については、「 フローが実行されるアクションが多すぎるとどうなるか」を参照してください。
コネクタの API スループット制限
プラットフォームが課す制限に加えて、各コネクタ サービスには独自の制限があります。 Power Automate におけるコネクタ調整とは、コネクタがレート制限または使用量クォータを適用して不正使用を防ぎ、公正なリソース割り当てを確保するメカニズムを指します。 コネクタが調整されると、特定の時間枠内に実行できる要求または操作の数が制限されます。 すべてのコネクタには、独自のスロットル制限があります。
フローがコネクタ レベルの調整制限に達すると、サービスはエラー コード 429 (要求が多すぎます) と レート制限を超えました。27 秒後に再試行してください を返します。
Dataverse API に関する制限
コネクタ サービスとしての Dataverse は、独自のサービス保護制限を定義します。 これらの制限はユーザーごとに評価され、ユーザーはアクションに関連付けられているユーザーです。 通常、ユーザーはフローの所有者ですが、フローがアクションでユーザー コンテキストを呼び出す場合は、呼び出し元のユーザーになることができます。 詳細については、サービス保護 API の制限 を参照してください。
フローの同時実行制限
同時に実行できる実行の数、ループで処理できる項目、処理効率を上げるために大規模なデータセットを分割できるチャンクには、制限が適用されます。 詳細については、同時実行、ループ、バッチ解除の制限 を参照してください。
アクション バーストの制限
アクション バースト制限は、特定の期間にトリガーできるアクションの最大数を指し、通常は時間のローリング ウィンドウで測定されます。 現在、上限は 5 分間で 100,000 アクションです。
この制限内に収めるには、子フローを使用して複数のフロー間で負荷を分散するか、トリガー条件を追加します。 詳細については、子フローを作成する および Power Automate トリガーを最適化する を参照してください。
フロー設計の制限事項
設計および定義レベルで定義されたフローの複雑さに制限が生じる場合があります。 問題が発生した場合は、フローの再設計を検討してください。 詳細については、フロー定義の制限事項 を参照してください。