Webhookアラートを設定するには
TradingViewのWebhookを使うと、アラートがトリガーされた時に外部のアプリに通知することができます。手動でチャートを確認せずとも、指定したURLにHTTP POSTリクエストを介してデータが自動送信されます。この機能はアラートの作成/編集時に有効にできます。外部アプリの正しいURLを追加すると、アラートがトリガーされると同時にアラートメッセージを本文に含むPOSTリクエストが送信されます。
アラートメッセージが有効なJSON形式の場合、リクエストには "application/json" の content-type ヘッダーが含まれます。それ以外の場合は "text/plain" の content-type ヘッダーでリクエストを送信します。
重要!: Webhookを設定される際は、その本文中にログイン情報やパスワードなどの機密情報を含めないようにしてください。Webhookを介して機密データを送信すると、権限を持たない第三者にそのデータが開示される場合もあり、セキュリティが脆弱になるおそれがあります。ご自身の情報を守るためにも、セキュリティが確保された認証済のエンドポイントを常にご使用いただくとともに、機密データの暗号化もお願いいたします。

以下は弊社がPOSTリクエストの送信に利用するIPアドレスの一覧です。許可リストに追加する必要がある場合にご使用ください:
- 52.89.214.238
- 34.212.75.30
- 54.218.53.128
- 52.32.178.7
ポート番号付きのURLにリクエストを送信する場合、ポート番号が80と443のURLのみ許可されます。その他のポートへのリクエストは拒否されます。リモートサーバーでのリクエストの処理が3秒を超える場合にはそのリクエストはキャンセルされます。また、Webhookは現在IPv6には対応していません。
多くのアプリやサービスは、アラートメッセージのデフォルトの形式であるプレーンテキストではなく、JSON形式のWebhookデータを想定しています。リクエスト送信の前に、連携するアプリやサービスのドキュメントを確認し、それに応じてアラートの形式を設定してください。
たとえば、Slackでは“text”をキーとするJSON形式のメッセージが想定されています。したがって、アラートボックスには次のようなメッセージを入力することになります:
{"text": "BTCUSDが9000を超えました"}

このメッセージは有効なJSON形式であるため、TradingViewからは"application/json"の content-type ヘッダーを付けてリクエストを送信します。cURLを使用した場合のリクエストは以下のようになります:
curl -H 'Content-Type: application/json; charset=utf-8' -d '{"text": "BTCUSDが9000を超えました"}' -X POST https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
メッセージがプレーンテキスト(つまり、デフォルトのアラートメッセージ)の場合には、リクエストでは "plain/text" の content-type ヘッダーが使用されます。

cURL:
curl -H 'Content-Type: text/plain; charset=utf-8' -d 'BTCUSDが9000を超えました' -X POST https://webhook.site/test
データ保護のため、Webhookアラートは2段階認証が有効な場合にのみ使用が許可されます。
こちらもご覧ください: