콘텐츠로 건너뛰기

Journey에서 웹훅 응답 데이터 사용하기

웹훅 응답에서 값을 매핑하면 Pushwoosh는 이를 변수로 저장하여 나중에 Journey에서 사용자 프로필 업데이트, 시간 지연 및 콘텐츠 개인화에 사용할 수 있습니다. 이는 이벤트 속성을 사용하는 것과 같은 방식입니다. 한 가지 예외는 조건 분기입니다. 선언된 유형(태그 또는 이벤트 속성)이 있는 값이 필요하기 때문에 웹훅 변수에서 직접 분기할 수 없으며, 매핑된 웹훅 값에는 유형이 없습니다. 아래의 조건 분기에서 웹훅 값 비교하기를 참조하세요.

사용자 프로필 업데이트로 웹훅 값을 태그로 저장하기

Anchor link to

Webhook은 CRM 사용자 ID나 구독 상태와 같이 Pushwoosh가 아직 사용자 프로필에 저장하지 않은 외부 시스템의 데이터를 반환할 수 있습니다. 사용자 프로필 업데이트는 매핑된 값을 태그로 저장하여 세그먼트, 동적 콘텐츠 및 이후 Journey 단계에서 사용할 수 있도록 합니다.

예시: CRM 사용자 ID를 태그로 저장하기

Anchor link to

새로운 사용자가 앱에 가입하면 Journey가 CRM에 일치하는 레코드를 생성합니다. 반환된 CRM 사용자 ID를 태그로 저장하면 사용자가 Journey에 다시 들어올 때마다 중복 레코드를 생성하는 대신, 나중에 다른 Journey나 후속 Webhook 호출 등에서 동일한 CRM 레코드를 참조하거나 업데이트할 수 있습니다.

Journey 흐름: 트리거 기반 진입 → Webhook → 사용자 프로필 업데이트 → 브랜치 종료

  1. SignUp 이벤트에 대한 트리거 기반 진입으로 Journey를 생성합니다.
  2. 진입 단계 뒤에 Webhook 요소를 추가합니다. 이름을 지정하고(예: CRM에서 사용자 생성) 요청 URL을 CRM 사용자 생성 엔드포인트로 설정합니다.
  3. 응답 매핑에서 경로를 응답의 ID 필드(예: data.user.id)로 설정하고 속성을 crm_user_id로 설정합니다.
경로 data.user.id와 속성 crm_user_id를 사용한 웹훅 응답 매핑
  1. Webhook 단계 뒤에 사용자 프로필 업데이트 요소를 추가합니다.

  2. 동적 태그 값에서 + 동적 값을 클릭합니다. 태그에서 CRM ID를 저장하는 태그를 선택합니다(필요한 경우 미리 생성). 이벤트에서 지정한 이름으로 웹훅 단계를 선택합니다(CRM에서 사용자 생성). 동적 값에서 crm_user_id를 선택합니다.

CRM ID용 태그, 이벤트 웹훅 단계, 동적 값 crm_user_id를 사용한 동적 태그 값
  1. 브랜치를 종료합니다. 종료 요소를 추가하거나 나가는 연결 없이 둡니다.
사용자 프로필 업데이트 단계 후 종료로 끝나는 Journey 브랜치

시간 지연으로 웹훅 값에서 지연 예약하기

Anchor link to

방문 날짜, 갱신 마감일, 배송 기간 등은 종종 외부 예약 또는 청구 시스템에 존재합니다. Webhook이 API 응답에서 날짜를 매핑한 후, 시간 지연은 예를 들어 약속 2일 전과 같이 해당 시점까지 Journey를 일시 중지하여 다음 메시지가 제시간에 발송되도록 할 수 있습니다.

예시: 응답의 날짜로 리마인더 예약하기

Anchor link to

사용자가 앱에서 약속을 예약합니다. Journey는 예약 시스템에서 방문 날짜를 가져와 방문 2일 전에 푸시 리마인더를 보냅니다.

  1. AppointmentBooked 이벤트에 대한 트리거 기반 진입으로 Journey를 생성합니다.
  2. 진입 단계 뒤에 Webhook 요소를 추가합니다. 이름을 지정하고(예: 약속 세부 정보 가져오기) 요청 URL을 예약 시스템 API로 설정합니다.
  3. 응답 매핑에서 경로를 응답의 날짜 필드(예: appointment.date)로 설정하고 속성을 visit_date로 설정합니다.
appointment.date를 visit_date로 응답 매핑하는 웹훅 단계
  1. Webhook 단계 뒤에 시간 지연 요소를 추가합니다. 사용자/이벤트 데이터 기반을 선택하고, 날짜 가져오기를 이벤트로 설정하고, 이벤트를 지정한 이름으로 웹훅 단계를 설정하고(약속 세부 정보 가져오기), 이벤트 값을 visit_date로 설정하고, 지연을 2일 전으로 설정합니다.
웹훅 visit_date에서 2일 전 오프셋으로 구성된 시간 지연
  1. 사용자가 방문 2일 이내에 예약할 수 있는 경우, 시간 지연 요소에서 날짜가 과거이거나 비어있는 경우 브랜치로 분기를 활성화합니다. 이렇게 하면 과거와 미래 두 개의 브랜치가 생성됩니다. 날짜가 과거이거나 비어있을 때 브랜치 분기하기를 참조하세요.
  2. 리마인더 메시지가 포함된 푸시 단계를 추가합니다. 분기가 활성화된 경우, 과거(즉시 전송)와 미래(시간 지연 후) 두 브랜치 모두에 이 푸시를 추가합니다.
  3. 각 브랜치를 종료합니다. 종료 요소를 추가하거나 나가는 연결 없이 둡니다.
과거와 미래 브랜치로 분기된 시간 지연, 각 브랜치에는 푸시 및 종료 단계가 있음

조건 분기에서 웹훅 값 비교하기

Anchor link to

조건 분기는 세그먼트, 태그 또는 선언된 유형이 있는 이벤트 속성을 기준으로 분기합니다. 웹훅 응답에서 매핑된 값에는 유형이 없으므로 조건 분기의 드롭다운에 나타나지 않으며 직접 비교할 수 없습니다.

웹훅 값을 기준으로 분기하려면 먼저 사용자 프로필 업데이트를 사용하여 일치하는 유형의 태그로 저장한 다음, 조건 분기에서 해당 태그를 비교하세요.

예시: 트리거 이벤트의 금액과 웹훅 잔액을 비교하여 분기하기

Anchor link to

사용자가 구매를 요청하면, Journey는 계속 진행하기 전에 CRM 잔액이 트리거 이벤트의 가격을 충당하는지 확인합니다.

Journey 흐름: 트리거 기반 진입 → Webhook → 사용자 프로필 업데이트 → 조건 분기

  1. 숫자 required_amount 속성이 있는 PurchaseRequested 이벤트에 대한 트리거 기반 진입으로 Journey를 생성합니다.
  2. 진입 단계 뒤에 Webhook 요소를 추가합니다. 응답 매핑에서 경로를 응답의 잔액 필드(예: current_balance)로 설정하고 속성을 current_balance로 설정합니다.
  3. Webhook 단계 뒤에 사용자 프로필 업데이트 요소를 추가합니다. 동적 태그 값에서 태그를 정수 또는 가격 유형의 숫자 태그로 설정하고(필요한 경우 미리 생성, 예: Current_balance), 이벤트를 웹훅 단계로, 동적 값을 current_balance로 설정합니다.
  4. 사용자 프로필 업데이트 뒤에 조건 분기 요소를 추가합니다. 조건을 태그 Current_balance, 연산자 크거나 같음으로 설정하고, 값으로 상수 대신 이벤트 속성 → 진입 이벤트 → required_amount를 선택합니다.
  5. 각 브랜치를 다음 단계에 연결합니다.

유의사항

Anchor link to
  • 경로 구문: 점으로 구분된 경로(예: data.user.id) 또는 배열의 모든 요소를 매핑하기 위한 * 세그먼트를 사용합니다. 필터는 지원되지 않습니다. 자세한 내용은 배열의 모든 요소 매핑하기를 참조하세요.
  • 응답 크기: 64KB보다 큰 응답은 매핑을 위해 처리되지 않습니다.
  • 조건 분기: 매핑된 웹훅 값에는 유형이 없으며 직접 사용할 수 없습니다. 먼저 태그로 저장하세요. 조건 분기에서 웹훅 값 비교하기를 참조하세요.
  • 테스트: 라이브 Journey에서 매핑된 값을 사용하기 전에 Webhook 요소에서 웹훅 테스트를 실행하세요. 요청이 성공하는지 확인한 다음, 호출 로그 탭에서 응답 본문을 각 경로와 비교하세요. Journey가 라이브 상태일 때 특정 여행자의 값이 잘못된 것으로 보이면 호출 로그에서 해당 여행자의 행을 확인하세요.
  • 응답 내 목록: 경로에서 *를 사용하여 모든 항목을 매핑합니다. 별도의 속성에 대해서는 item_{n}을 선택하거나 쉼표로 구분된 하나의 문자열에 대해서는 {n}이 없는 이름을 선택합니다. 경로 인덱스는 0부터 시작합니다. {n} 이름은 1부터 시작합니다. 최대 처음 50개의 요소만 매핑됩니다. 배열의 모든 요소 매핑하기를 참조하세요.