콘텐츠로 건너뛰기

웹훅

웹훅을 사용하면 Journey 데이터를 분석, CRM 시스템, 마케팅 도구와 같은 외부 서비스로 보낼 수 있습니다. 다음을 수행할 수 있습니다:

  • 고객이 Journey에서 특정 행동을 취했을 때 외부 시스템에 알림
  • 고객 데이터를 분석 도구로 전송
  • 특정 Journey 이벤트 발생 시 타사 이메일, SMS 또는 WhatsApp 트리거

웹훅 요소 설정 방법

Anchor link to

웹훅 요소 추가

Anchor link to

웹훅 요소를 캔버스로 드래그 앤 드롭합니다. 타사 서비스로 보낼 Journey 정보를 고려하여 원하는 위치에 웹훅을 배치하세요.

이름 및 요청 설정이 있는 캔버스 위의 웹훅 요소

웹훅 단계 이름 지정 및 요청 URL 및 유형 명시

Anchor link to

단계 이름 필드에 웹훅의 이름을 입력합니다. 웹훅이 데이터를 보내는 서비스나 사용 사례에 따라 이름을 지정하면 편리할 수 있습니다.

다음으로, URL 필드에 데이터를 보낼 요청 URL을 지정합니다. URL 필드 옆의 요청 유형 드롭다운에서 요청 유형을 GET 또는 POST로 선택합니다.

GET 또는 POST 메서드를 선택하기 위한 URL 필드와 REQUEST TYPE 드롭다운을 보여주는 웹훅 구성 인터페이스

헤더 구성

Anchor link to

헤더 섹션에서 콘텐츠 유형을 설정합니다.

기본적으로 콘텐츠 유형은 application/json입니다. 웹훅을 보내는 서비스에서 다른 콘텐츠 유형을 요구하는 경우, Content-Type 헤더 값에 적절한 유형을 입력하세요.

콘텐츠 유형의 예는 다음과 같습니다:

  • x-www-form-urlencoded
  • text/plain
  • text/xml

필요한 경우 + 헤더 추가를 클릭하여 추가 헤더를 추가할 수 있습니다. 헤더 옆의 ‘x’ 아이콘을 클릭하여 헤더를 제거할 수 있습니다.

엔드포인트에서 요구하는 인증 헤더를 추가하세요. 예를 들면 다음과 같습니다:

  • Authorization: Bearer <token>
  • X-Api-Key: <key>
  • Authorization: Basic <base64(user:pass)>

헤더의 정적 시크릿만 지원됩니다. Pushwoosh 측에서의 OAuth2 토큰 교환 흐름, mTLS 및 요청 서명은 지원되지 않습니다. 헤더 시크릿 대신 또는 추가로 엔드포인트를 Pushwoosh의 IP 주소로 제한할 수도 있습니다. Pushwoosh IP 주소를 참조하세요.

HTTP 기본 인증의 경우, 다음을 수행하세요:

  1. 일반 텍스트 편집기를 열고 사용자 이름과 비밀번호를 공백 없이 콜론으로 구분하여 입력합니다. 예: myuser:mypass
  2. 이 문자열을 Base64로 인코딩합니다.
  3. 결과로 나온 Base64 문자열을 복사합니다 (예: bXl1c2VyOm15cGFzcw==).
  4. 웹훅 설정에서 Basic <YOUR BASE64 STRING> 값으로 Authorization 헤더를 추가합니다. “Basic” 단어 뒤에 공백이 있는지 확인하세요.
웹훅 설정에서 기본 인증을 위한 Authorization 헤더 예시, Content-Type 및 Authorization 헤더 표시

JSON 요청 본문 추가

Anchor link to

데이터 섹션에 JSON 요청 본문을 입력합니다. 요청 본문이 올바른 JSON 형식인지 확인하세요.

예시:

{
"hwid": "{{device:hwid}}"
}

동적 데이터 및 매크로 사용

Anchor link to

데이터 빌더 패널을 사용하면 사용자, 기기, 태그 또는 이벤트 데이터와 같은 동적 정보를 JSON 요청 본문에 직접 삽입할 수 있습니다. 동적 데이터를 사용하면 Journey를 진행하는 개별 사용자에게 특정한 값을 포함할 수 있습니다.

이를 위해:

  1. 카테고리를 선택합니다. 세 가지 카테고리에서 데이터를 가져올 수 있습니다:
  • 기기: 사용자의 기기와 관련된 기술 정보가 필요할 때 기기 데이터를 사용합니다.

  • 태그: 사용자 프로필에 저장된 정보를 보내고 싶을 때 태그 데이터를 사용합니다.

  • 이벤트: 웹훅이 Journey의 트리거 이벤트 값을 보내야 할 때 이벤트 데이터를 사용합니다.

  1. 매개변수를 선택합니다 (예: HWID, 좋아하는 카테고리 등).
  2. Pushwoosh는 다음과 같은 매크로를 생성합니다:
{{tag:Language}}
  1. 매크로를 복사하여 데이터 섹션의 JSON 본문에 붙여넣습니다.

라이브 Journey에서 웹훅이 실행되면 Pushwoosh는 자동으로 매크로를 해당 사용자의 실제 값으로 대체합니다.

웹훅 요청 본문에 동적 데이터 플레이스홀더 삽입

웹훅 응답 데이터를 변수에 매핑

Anchor link to

웹훅 요소는 데이터를 보내는 것 외에도 수신한 응답에서 데이터를 캡처하여 변수로 변환할 수 있습니다. 이 변수들은 Journey의 뒷부분에서 사용될 수 있습니다. 예를 들어, 사용자 프로필 업데이트로 태그를 설정하거나, 외부 서비스에서 반환된 값을 기반으로 시간 지연을 예약할 수 있습니다. 전체 Journey 예시는 Journey에서 웹훅 응답 데이터 사용하기를 참조하세요.

응답 매핑 섹션에서 + 매핑 추가를 클릭하고 캡처하려는 각 값에 대해 두 개의 필드를 채웁니다:

  • 경로: 응답 JSON 본문 내 값의 위치
  • 속성: Journey의 뒷부분에서 이 값을 참조할 때 사용할 이름
웹훅 설정에서 Path 및 Attribute 필드와 매핑 추가 버튼이 있는 응답 매핑 섹션

예를 들어, CRM이 다음과 같이 응답하는 경우:

{
"data": {
"user": {
"id": "789xyz"
}
}
}

해당 ID를 캡처하려면 경로data.user.id로, 속성crm_user_id로 설정합니다.

시간 초과, 재시도 및 실패한 요청

Anchor link to

Pushwoosh는 응답을 최대 10초 동안 기다립니다. 요청 전송 및 응답 처리를 포함한 전체 웹훅 단계는 30초로 제한됩니다. 각 여행자는 요청을 한 번 트리거하며 자동 재시도는 없습니다.

이는 요청 자체가 완료되지 못하는 경우에만 해당됩니다. 응답이 도착했지만 깔끔하게 매핑되지 않는 경우(예: 유효하지 않은 JSON, 해결되지 않은 경로 또는 64KB를 초과하는 본문)에는 여행자가 이탈하지 않습니다. 위의 응답 매핑 아래의 참고 사항을 참조하세요.

웹훅 테스트

Anchor link to

웹훅 테스트를 클릭하여 웹훅 구성이 올바르고 요청이 성공적으로 전송되는지 확인합니다.

구성 저장

Anchor link to

적용을 클릭하여 웹훅 구성을 저장합니다.