웹훅 얼러트 설정 방법

트레이딩뷰 웹훅은 얼러트가 발생할 때 외부 애플리케이션에 알립니다. 차트를 수동으로 확인할 필요 없이, 제공하신 URL로 HTTP POST 요청을 통해 데이터를 자동으로 전송할 수 있습니다. 이 기능은 얼러트 생성 또는 편집 시 활성화할 수 있습니다. 애플리케이션의 올바른 URL을 추가하시면, 얼러트가 발생하자마자 요청 본문에 얼러트 메시지를 포함하여 POST 요청을 전송합니다.

얼러트 메시지가 유효한 JSON인 경우 요청에는 “application/json” 콘텐츠 타입 헤더가 포함됩니다. 그렇지 않은 경우 요청은 “text/plain”을 콘텐츠 타입 헤더로 사용합니다.

! 중요: 웹훅을 구성할 때 로그인 자격 증명이나 비밀번호와 같은 민감한 정보를 웹훅 본문에 포함하지 않도록 하십시오. 웹훅을 통해 민감한 데이터를 전송하면 권한이 없는 당사자에게 노출되어 보안 취약점을 발생시킬 수 있습니다. 정보 보호를 위해 항상 안전한 인증된 엔드포인트를 사용하고 민감한 데이터를 암호화하십시오.

허용 목록에 추가해야 할 경우를 대비하여 TradingView가 POST 요청을 전송하는 데 사용하는 IP 주소 목록은 다음과 같습니다:

  • 52.89.214.238
  • 34.212.75.30
  • 54.218.53.128
  • 52.32.178.7

포트 번호가 포함된 URL로 요청을 보내려면 포트 80과 443만 허용됩니다. 다른 포트로의 요청은 거부됩니다. 원격 서버가 요청 처리에 3초 이상 걸릴 경우 요청이 취소됩니다. 또한 웹훅에는 현재 IPv6가 지원되지 않습니다.

많은 앱과 서비스는 얼러트 메시지의 기본 형식인 일반 텍스트가 아닌 JSON 형식의 웹훅 데이터를 기대합니다. 요청을 보내기 전에 통합하려는 앱이나 서비스의 문서를 확인하고 얼러트를 그에 맞게 형식화하세요.

예를 들어, Slack은 “text”를 키로 하는 JSON 형식의 메시지를 기대합니다. 얼러트 상자에 다음과 같은 메시지를 입력할 수 있습니다:

{‘text’: “BTCUSD Greater Than 9000”}

메시지가 유효한 JSON이므로, TradingView는 “application/json” 콘텐츠 타입 헤더로 요청을 전송합니다. cURL을 사용한 요청 예시는 다음과 같습니다:

curl -H ‘Content-Type: application/json; charset=utf-8’ -d ‘{“text”: “BTCUSD Greater Than 9000”}’ -X POST https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX

메시지가 일반 텍스트(기본 얼러트 메시지)인 경우 요청은 “text/plain” 콘텐츠 타입 헤더를 사용합니다.

cURL:

curl -H ‘Content-Type: text/plain; charset=utf-8’ -d ‘BTCUSD Greater Than 9000’ -X POST https://webhook.site/test

데이터 보호를 위해 웹훅 얼러트는 2단계 인증이 활성화된 경우에만 허용됩니다.

다음도 함께 읽어보세요: