Power AutomateでJSONデータを扱う際、自動生成されるスキーマが期待と異なることは少なくありません。特に会社環境では、組織のポリシーやライセンス制限によってスキーマ生成そのものが機能しないケースもあります。この記事では、JSONスキーマ生成が想定どおり進まない原因を切り分け、会社PCでも安全に再設定するための実務的な手順を解説します。管理者への確認事項やよくある失敗パターンも網羅していますので、まずは落ち着いて原因を特定してください。
【要点】この記事で確認すること
- 最初に見る場所: フローのトリガーやアクションで使用している「JSONの解析」アクションの設定画面、特に「サンプルペイロードからスキーマを生成」ボタンが有効かどうか。
- 切り分けの軸: 端末側のブラウザやネットワークの問題、アカウントのライセンスやアクセス権限、組織のデータ損失防止(DLP)ポリシーやカスタムコネクタの制限の3軸で原因を特定します。
- 注意点: 会社PCではスキーマの手動編集やサンプルデータの直接変更を行う前に、必ず管理者に確認してください。特にDataverseやDynamics 365に関連するフローでは、誤ったスキーマ変更がデータ不整合を引き起こす可能性があります。
ADVERTISEMENT
目次
なぜJSONスキーマ生成が想定どおり進まないのか
JSONスキーマの自動生成は、Power AutomateがサンプルJSONから推論してスキーマを作成する機能です。しかし、会社環境では次のような要因で想定どおりに動作しないことがあります。
手動入力と自動生成の違い
「JSONの解析」アクションでスキーマを設定する方法は大きく2つあります。1つはサンプルペイロードを貼り付けて「スキーマの生成」ボタンをクリックする自動生成、もう1つはスキーマを直接JSON形式で記述する手動入力です。自動生成の方が簡単ですが、サンプルデータの構造が複雑だったり、配列の要素数が少ないと不完全なスキーマが生成されることがあります。一方、手動入力ではスキーマの正確性を高められますが、書式の誤りやJSONの文法ミスが発生しやすくなります。
サンプルデータの形式やエンコードの問題
スキーマ生成に使用するサンプルデータ自体が適切でないケースも多いです。たとえば、実際のAPIレスポンスとは異なるプロパティ名やデータ型が含まれていると、生成されるスキーマが実態と乖離します。また、UTF-8以外のエンコードでサンプルデータを保存すると、特殊文字が正しく認識されずスキーマ生成が失敗する可能性があります。会社環境では社内システムから取得したJSONがBOM付きUTF-8だったり、Shift_JISでエンコードされていることもあるため注意が必要です。
会社環境で安全にスキーマを再設定するための事前確認
再設定に進む前に、必ず以下の項目を確認してください。これらを省略すると、後でより深刻なトラブルに発展する可能性があります。
使用しているPower Automateのライセンスと機能制限
Power Automateには無料のMicrosoft 365ライセンスに含まれるものと、有償の有料ライセンス(Per User / Per Flow)があります。無料ライセンスでは一部のコネクタやプレミアムアクションが利用できず、「JSONの解析」アクション自体が使えない場合があります。また、組織が「Power Automate for Microsoft 365」のみを契約している場合、カスタムコネクタやDataverseの使用が制限されるため、スキーマ生成機能が意図したとおり動作しないことがあります。
組織のポリシー(データ損失防止ポリシーとカスタムコネクタ)
管理者が設定するデータ損失防止(DLP)ポリシーによって、特定のコネクタがブロックされている可能性があります。また、カスタムコネクタを使用している場合、そのコネクタのスキーマが自動生成できないケースがあります。これらの情報はご自身の環境では確認できないため、管理者に問い合わせる必要があります。
具体的な再設定手順
ここからは、安全にJSONスキーマを再設定する手順を説明します。各ステップを順番に実施し、問題が解決したかどうかを確認しながら進めてください。
- バックアップを取る – 現在のフローをエクスポートしてバックアップします。Power Automateポータルでフローを開き、「その他のコマンド」→「エクスポート」→「パッケージ」を選択してダウンロードしてください。これにより、失敗時に元の状態に戻せます。
- 実際のサンプルデータを収集する – スキーマの対象となる実際のJSONレスポンスを取得します。HTTP要求やトリガー出力を確認し、加工せずにそのままコピーしてください。実行ログから「raw outputs」をコピーすると確実です。
- スキーマ生成を試行する – 「JSONの解析」アクションを開き、「サンプルペイロードからスキーマを生成」をクリックします。取得したサンプルデータを貼り付けて「完了」を押します。このとき、貼り付けるデータの末尾に改行や空白がないことを確認してください。
- 生成されたスキーマを検証する – 生成されたスキーマが実際のデータ構造と一致するか確認します。特に、配列の要素型や必須プロパティが正しく設定されているかをチェックしてください。不明な場合は、スキーマを手動で編集する前に管理者に相談します。
- フローを保存してテストする – スキーマを更新したら保存し、テスト実行を行います。テストデータは実際のデータに近いものを使用し、Parse JSONアクションがエラーなく動くことを確認します。問題がなければ本番環境でも使用できます。
失敗パターンとその対処法
実際の現場でよく遭遇する失敗パターンを表にまとめました。自身の状況に当てはめて対処法を試してください。
| 失敗パターン | 原因 | 対処法 |
|---|---|---|
| 「スキーマの生成」ボタンがグレーアウトしている | JSONの解析アクションがプレミアム機能であるため、ライセンス不足またはDLPポリシーでブロックされている。 | 管理者にライセンス追加を依頼するか、代替手段として手動でスキーマを記述する。手動記述の方法を管理者へ確認する。 |
| 生成されたスキーマが不完全(プロパティが欠落) | サンプルデータに一部のプロパティが含まれていなかったり、配列要素数が少なすぎる。 | 複数のサンプルデータを結合してからスキーマ生成を試みる。または手動で不足プロパティを追加する。 |
| Parse JSONアクションで「無効なスキーマ」エラー | 手動編集時にJSON文法ミスがある、またはスキーマの型定義が実データと合っていない。 | JSONバリデーター(https://json-schema-validator.herokuapp.com/ など)でスキーマを検証する。型を確認し修正する。 |
| サンプルペイロードを貼り付けても何も起こらない | ブラウザのポップアップブロック、またはPower Automateの一時的な不具合。またはサンプルデータのJSON書式が壊れている。 | ブラウザのシークレットウィンドウで試す。サンプルデータをJSON整形ツールで整えてから再度貼り付ける。それでもダメなら管理者に問い合わせ。 |
管理者へ依頼すべき設定と確認事項
問題の切り分けでどうしても解決しない場合、管理者に依頼する必要があります。以下の情報を整理して伝えると迅速に対応してもらえます。
- ライセンスの確認と割り当て – 「Power Automate Free」ではなく「Power Automate per user with attended RPA」や「Power Automate per flow」などのプレミアムライセンスが必要かどうかを確認してください。
- DLPポリシーの緩和申請 – 使用しているコネクタがDLPでブロックされていないか確認し、必要な場合はポリシーの変更を依頼します。
- カスタムコネクタのスキーマ生成サポート – カスタムコネクタのスキーマが自動生成できない場合、管理者がSwaggerファイルを手動で更新する必要があります。
- 環境の移行 – テスト環境と本番環境でスキーマが異なる場合、環境変数やソリューションを利用してスキーマを一元管理する方法を検討します。
よくある質問
Q1: JSONスキーマを手動で記述しても問題ありませんか?
A1: 問題ありませんが、正確なスキーマを記述するにはJSON Schema仕様の理解が必要です。チーム内で管理する場合は、共有リポジトリでスキーマを管理し、レビューを受けることをおすすめします。
Q2: スキーマ生成ボタン自体が表示されません。どうすればよいですか?
A2: そのアクションがプレミアムライセンスを必要としている可能性が高いです。Power Automateのプランを確認し、必要なライセンスを管理者に申請してください。または、代わりに「コンポーズ」アクションと手動のJSON解析を組み合わせる方法もあります。
Q3: 会社のセキュリティポリシーでスキーマ生成がブロックされている可能性はありますか?
A3: あります。特にカスタムコネクタやHTTPコネクタの使用はDLPポリシーで制限されることが多いです。管理者に問い合わせて、該当コネクタが許可されているか確認してください。
まとめ
JSONスキーマ生成が想定どおり進まない場合、まずは原因を切り分けることが大切です。サンプルデータの品質やライセンス、ポリシーの制限が主な要因です。再設定の前には必ずバックアップを取り、管理者に必要な確認を行ってから手順を進めてください。手動でのスキーマ編集も有効な手段ですが、その場合は必ずJSON Schemaの構文を守るように注意しましょう。最後に、組織のガバナンスに従い、安定したフロー運用を心がけてください。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
- 【Teams】会議の「参加者リスト」を出席後にダウンロードする!誰が参加したか確認する手順
- 【Teams】画面共有時に「音声」も共有する方法!音が流れない時の設定手順
