Power Automate HTTPリクエストのタイムゾーン指定で「+09:00」などの時間を指定する方法

HTTPリクエストアクションのURLクエリで、日本時間のタイムゾーンをそのまま指定したらエラー「DateTime parameter is invalid」が起きたので、対処方法をメモ。

スポンサーリンク

やりたいこと

URIパラメータで時間を指定できるHTTPリクエスト(OutlookのcalendarViewなど)で、日本時間などのタイムゾーンを指定したいときの話。
このタイムゾーンの指定が入ったリクエストを実行するとエラーが発生する。

原因と解決方法

原因は文字「+」や「:」で、この「+」はURIにおいて空白文字として解釈されるし、「:」は予約文字になっている。

そのため、タイムゾーンを指定するときはuriComponent関数を使用して、パーセントエンコーディングする必要がある。

使用箇所が多い場合は事前に「作成」アクションとかで定義しておくと便利だし、
使用箇所が少ない場合は、直接式を入力してもOK。
実行すると「+09:00」が「%2B09%3A00」に変換されて、リクエストが成功する。

関連記事

コメント

タイトルとURLをコピーしました