Webhook 출력
워크플로 결과를 JSON 본문이 담긴 HTTP POST로 원하는 URL에 보내세요. 이름을 붙인 값과, 비밀 값이 서버에만 남는 저장된 자격 증명을 함께 보낼 수 있습니다.
Webhook 출력 노드는 워크플로의 결과를 JSON 본문이 담긴 HTTP POST 요청으로 URL에 보냅니다. 완성된 동영상, 이미지, 오디오 파일, 텍스트를 내 백엔드, 콘텐츠 관리 시스템, 자동화 서비스로 전달할 때 사용하세요. 보내는 값의 이름을 직접 정할 수 있으며, 워크플로에 키를 드러내지 않고 저장된 키를 요청마다 함께 보낼 수 있습니다.
사용 시기
- 생성한 동영상이 준비되면 그 URL을 콘텐츠 관리 시스템으로 보냅니다.
- 워크플로가 끝나면 다른 서비스에서 자동화를 시작합니다.
- 추가 처리를 위해 결과를 내 API로 전달합니다.
- 예약된 실행이나 트리거로 시작된 실행이 완료되었음을 다른 시스템에 알립니다.
빠른 시작
노드 추가
캔버스에서 Tab을 누르고 게시 › 내보내기 › Webhook 출력을 선택하세요.
주소 입력
설정 패널에 Webhook URL을 입력하세요. 예를 들면 https://example.com/webhook입니다. https:// 주소를 사용하세요.
보낼 값의 이름 지정
입력 파라미터에서 값마다 추가를 클릭하고, video_url 같은 이름을 입력한 다음 유형을 고르세요. 파라미터마다 그 이름의 입력이 노드에 하나씩 추가됩니다.
연결과 실행
각 입력을 그 값을 만드는 노드에 연결하고 실행을 클릭하세요. 패널의 마지막 실행에 전송의 HTTP 상태 코드가 표시됩니다.
입력
입력은 정의한 파라미터에 따라 달라집니다.
- 파라미터 없음. 노드에 입력이 하나 있습니다. 여기에 연결한 모든 것이 하나의 페이로드로 전송됩니다.
- 파라미터 하나 이상. 노드에 파라미터마다 그 이름을 딴 입력이 하나씩 있습니다. 각 값은 파라미터의 이름으로 전송됩니다.
항목마다 한 번씩 보내기
목록이 개별 연결로 입력에 들어오면 노드는 항목마다 요청을 하나씩 보냅니다. 예를 들어 기사 목록 필터는 기사마다 요청을 하나씩 보냅니다. 다른 파라미터에 두 번째 목록이 있으면 행끼리 짝을 짓습니다. 항목 3은 항목 3과 함께 나갑니다. 더 짧은 목록은 첫 항목부터 다시 시작합니다. 빈 항목은 그 요청에서 해당 파라미터에 아무것도 보내지 않습니다.
이번 실행에서 노드로 들어오는 모든 연결에 아무것도 오지 않으면, 노드는 아무것도 보내지 않고 건너뜀 · 입력 없음을 표시합니다. 예를 들어 목록 필터가 항목을 하나도 남기지 않은 경우입니다. 빈 요청이 엔드포인트에 도달하는 일은 없으며, 실행은 그대로 완료됩니다.
출력
응답 출력은 전송 결과로 돌아온 내용을 담으므로, 그 뒤에 다른 단계를 실행할 수 있습니다. 편집기에서 실행하면 응답 본문이 담깁니다. 트리거나 일정으로 시작한 실행처럼 서버에서 실행하면 sent라는 단어가 담깁니다.
설정
| 설정 | 역할 |
|---|---|
| Webhook URL | POST 요청을 받는 주소입니다. |
| 자격 증명 | 요청마다 헤더로 보내는 저장된 키입니다. 기본 선택은 없음(자격 증명 없이 전송) 항목입니다. 자격 증명과 함께 전송을 참고하세요. |
| 입력 파라미터 | 보낼 이름 붙은 값입니다. 각 값에는 이름과 유형이 있으며, 유형은 텍스트, 이미지 URL, 동영상 URL, 오디오 URL입니다. |
| 마지막 실행 | 마지막 전송의 HTTP 상태 코드, 또는 아직 전송되지 않음입니다. |
요청 형태
노드는 JSON 본문이 담긴 POST 요청을 보냅니다. 파라미터가 video_url과 caption 두 개이면 본문은 다음과 같습니다.
{
"video_url": "https://cdn.example.com/results/clip.mp4",
"caption": "Our new product, in 15 seconds."
}미디어 값은 파일의 URL이며, 받는 서비스가 이 URL에서 파일을 다운로드할 수 있습니다.
자격 증명과 함께 전송
많은 서비스는 Authorization: Bearer ...처럼 헤더에 키가 있을 때만 전송을 받습니다. 키를 자격 증명으로 한 번 저장한 다음 노드에서 선택하세요.
키 저장
연동 › HTTP 자격 증명을 열고 Authorization 같은 헤더 이름과 비밀 값으로 새 자격 증명을 저장하세요. 패널의 자격 증명 관리 링크도 같은 페이지를 엽니다.
사용 범위 선택
연동에서 키를 쓸 수 있는 범위를 묻습니다. 모든 주소나 주소 한 곳만을 선택하세요. 차이는 아래에서 설명합니다.
노드에서 선택
노드의 자격 증명 메뉴에서 저장한 자격 증명을 선택하세요. 이제 이 노드의 모든 전송에 헤더가 붙습니다.
노드는 자격 증명에 대한 참조만 저장합니다. 비밀 값은 요청을 보낼 때 서버에서 복호화되며 다시 표시되지 않습니다. 워크플로, 내보내기, 템플릿, 프리셋에는 절대 들어가지 않습니다. 키를 교체하려면 이전 값 위에 새 값을 저장하세요.
모든 주소와 주소 한 곳만
| 선택 | 작동하는 곳 | 사용 시기 |
|---|---|---|
| 모든 주소 | 내가 직접 시작한 실행에서만: 편집기에서 시작한 실행, 그리고 편집기에서 설정한 일정. | 아직 워크플로를 만드는 중일 때 |
| 주소 한 곳만 | 게시된 앱, 공유한 워크플로, 트리거로 시작된 실행을 포함한 모든 실행. 단, 노드가 고정된 주소로 보낼 때만. | 내가 없어도 워크플로가 실행되거나 다른 사람이 실행할 때 |
주소가 고정되지 않은 자격 증명은 게시된 앱, 공유한 워크플로, 공동 작업자의 실행, API 토큰으로 시작한 실행, Webhook 트리거, API로 만든 일정에서 거부됩니다. 그러면 노드는 키 없이 보내는 대신 분명한 메시지와 함께 실패합니다.
주소가 고정된 자격 증명은 https:// 주소 하나에 묶입니다. 기본적으로는 그 주소와 정확히 같은 주소로 고정됩니다. 같은 서비스의 여러 주소에 키 하나를 쓰려면 이 주소의 하위 경로도 허용을 켜세요. 정확한 주소로 고정된 자격 증명을 선택하면 Webhook URL이 그 주소를 따르며 편집할 수 없습니다.
고정은 한 방향으로만 됩니다. 나중에 고정된 주소를 바꿀 수는 있지만, 고정을 해제할 수는 없습니다.
게시와 공유에는 주소가 고정된 자격 증명이 필요
워크플로를 앱으로 게시하거나 다른 사람이 실행하도록 공유하기 전에, 워크플로가 함께 보내는 모든 자격 증명을 노드가 보내는 주소로 고정해야 합니다. 하위 워크플로의 자격 증명도 포함됩니다. 게시 대화 상자와 공유 대화 상자에서 클릭 한 번으로 자격 증명을 노드의 현재 URL에 고정할 수 있습니다.
주소 고정이 강제하는 것
모든 요청과 모든 리디렉션에서:
- URL이 고정된 주소와 일치해야 합니다. 일치하지 않으면 요청이 나가기 전에 거부됩니다.
- 다른 주소로의 리디렉션은 따라가지 않습니다. 키 없이 계속하는 대신 요청이 실패합니다.
- 주소가 고정되지 않은 자격 증명은 다른 사이트로의 리디렉션에서 제거됩니다.
- 자격 증명은 일반
http://로는 절대 전송되지 않습니다.
키를 붙이면 응답이 숨겨짐
자격 증명이 붙어 있으면 응답 본문은 반환되거나 저장되거나 표시되지 않고, 상태 코드만 표시됩니다. 일부 서비스는 요청 헤더를 응답에 그대로 되돌려 보내는데, 키가 워크플로로 돌아와서는 안 되기 때문입니다.
삭제되었거나 다른 계정에 속한 자격 증명은 노드를 실패하게 합니다. 노드는 키 없이 요청을 보내지 않습니다.
내보낸 워크플로
워크플로 내보내기나 템플릿에는 자격 증명이 절대 들어가지 않습니다. 누군가 워크플로를 가져오면 Webhook 출력 노드는 자격 증명 없이 도착하고, 가져온 사람이 자기 자격 증명을 고릅니다. 자격 증명은 Nodaro 앱에서만 관리됩니다.
팁
- 먼저 주소를 테스트하세요. 만드는 동안에는 노드가 요청 검사 서비스로 보내게 하고, 실제 엔드포인트를 연결하기 전에 본문을 확인하세요.
- 받는 쪽의 이름에 맞추세요. 받는 서비스가 기대하는 이름과 정확히 같게 파라미터 이름을 지으세요.
- 외부에서 실행을 시작하세요. Webhook 출력을 Webhook 트리거나 일정 트리거와 함께 쓰면, 편집기에 아무도 없어도 실행되는 워크플로를 만들 수 있습니다.
- 사본을 남기세요. 같은 결과를 저장소에 저장에도 연결하세요.
문제 해결
요청 뒤에 노드가 실패했습니다. 받는 주소가 오류로 응답했습니다. 상태 코드는 마지막 실행에, 오류는 실행 기록에 표시됩니다.
요청이 전송되기 전에 거부됩니다. 주소를 확인하세요. 사설 네트워크나 로컬 네트워크 주소를 가리키는 URL은 거부됩니다. 자격 증명이 붙어 있으면 URL이 자격 증명의 고정된 주소와도 일치해야 합니다.
URL이 고정된 주소가 아니라는 경고가 패널에 표시됩니다. 가져오기 뒤처럼, 자격 증명이 다른 주소로 고정되어 있습니다. 고정된 주소 사용을 클릭하거나 다른 자격 증명을 선택하세요.
직접 실행하면 작동하지만 게시된 앱이나 트리거로 시작된 실행에서는 실패합니다. 자격 증명의 주소가 고정되지 않았습니다. 연동에서 노드의 주소로 고정한 다음 다시 실행하세요.
자주 묻는 질문
Webhook 출력은 무엇을 보내나요?
JSON 본문이 담긴 HTTP POST 요청을 보냅니다. 파라미터가 있으면 각 파라미터의 이름이 키가 되고, 연결된 노드의 값, 예를 들어 동영상 URL이 그 값이 됩니다. 파라미터가 없으면 연결된 모든 데이터를 하나의 페이로드로 보냅니다.
Webhook과 함께 API 키나 토큰을 보내려면 어떻게 하나요?
연동에서 Authorization 같은 헤더 이름과 비밀 값으로 키를 자격 증명으로 한 번 저장하세요. 그런 다음 노드의 자격 증명 메뉴에서 선택하세요. 비밀 값은 서버에만 남고 워크플로에는 절대 들어가지 않습니다.
게시된 앱이나 공유한 워크플로에서 자격 증명이 거부되는 이유는 무엇인가요?
주소가 고정되지 않은 자격 증명은 내가 직접 시작한 실행에서만 작동합니다. 노드가 보내는 주소로 고정하면 게시된 앱, 공유한 워크플로, 트리거로 시작된 실행에서도 작동합니다.
서버의 응답을 볼 수 없는 이유는 무엇인가요?
자격 증명이 붙어 있으면 Nodaro는 응답을 반환하거나 저장하거나 표시하지 않고 상태 코드만 보여 줍니다. 일부 서버는 키를 포함한 요청 헤더를 응답에 그대로 되돌려 보내기 때문입니다.
Webhook 출력에 크레딧이 드나요?
아니요. Webhook 전송은 무료입니다. 결과를 만든 노드의 비용만 냅니다.
관련 문서
게시 노드
Webhook 트리거
저장소에 저장
자동화
Webhook
최종 업데이트