콘텐츠로 건너뛰기

Dynamics 365: 레코드 생성 또는 업데이트

Dynamics 365: 레코드 생성 또는 업데이트를 사용하여 여정 단계에서 대체 키 열을 기준으로 일치하는 하나의 Dataverse 행을 업서트(upsert)합니다. 값이 이미 있는 경우 행을 업데이트하고, 없는 경우 새로 생성합니다. Dataverse 에는 정적 API 키가 없으므로 이 지점은 전체 계정에 대해 한 번 등록된 Entra ID 애플리케이션을 통해 인증합니다. 지점 자체에는 토큰 필드가 없습니다.

일반적인 사용 사례:

  • Dynamics 365 동기화 유지: 여정 참여자가 여정을 진행함에 따라 행을 생성하거나 업데이트하여 CRM 에서 최신 데이터를 볼 수 있도록 합니다.
  • 여정 활동을 CRM 에 동기화: 여정 참여자가 마일스톤에 도달했을 때 열을 설정하여 팀이 이를 필터링하거나 보고할 수 있도록 합니다.
  • 중복 행 방지: 대체 키로 일치시키면 이 지점을 다시 통과하는 여정 참여자는 새 행을 생성하는 대신 동일한 행을 업데이트합니다.

시작하기 전에

Anchor link to

Entra ID 에 애플리케이션을 등록하고 설정 > 타사 통합 > Microsoft Dynamics 365에서 연결합니다:

  1. Microsoft Entra 관리 센터에서 애플리케이션을 등록하고 클라이언트 시크릿을 생성합니다.
  2. Power Platform 관리 센터에서 대상 환경을 열고, 애플리케이션을 애플리케이션 사용자로 추가한 후, 쓰려는 테이블의 행을 생성하고 업데이트할 수 있는 보안 역할을 할당합니다.
  3. Pushwoosh 의 환경 URL에 https://를 포함하고 후행 경로가 없는 환경의 URL 을 입력합니다(예: https://acme.crm4.dynamics.com).
  4. 디렉터리(테넌트) ID 및 애플리케이션(클라이언트) ID에 Entra ID 개요 페이지에 있는 애플리케이션의 ID 를 입력합니다.
  5. 클라이언트 시크릿에 시크릿 값을 붙여넣습니다. 이 값은 쓰기 전용으로 저장됩니다. Pushwoosh 는 이 값을 다시 표시하지 않으므로, 교체하려면 새 값을 붙여넣어야 합니다.
  6. Dynamics 365 연결을 클릭합니다.
환경 URL, 테넌트 ID, 클라이언트 ID, 시크릿이 있는 설정 Microsoft Dynamics 365 연결 양식

Dynamics 365 를 연결한 후, 통합을 설치하여 여정 빌더에 지점이 나타나도록 합니다.

지점 구성

Anchor link to
  1. 왼쪽 패널의 통합 섹션에서 Dynamics 365: 레코드 생성 또는 업데이트를 캔버스로 드래그합니다.
  2. 지점을 더블 클릭하고 단계 이름을 입력합니다.
  3. 환경 호스트에 https:// 없이 동일한 환경의 호스트를 입력합니다(예: acme.crm4.dynamics.com).
단계 이름이 채워지고 환경 호스트가 Dynamics 도메인으로 설정된 Dynamics 365 레코드 생성 또는 업데이트 드로어
  1. 테이블에 엔터티 세트 이름(복수형)을 입력합니다(예: contacts, leads 또는 사용자 지정 테이블의 세트 이름).
테이블 필드가 contacts 로 설정됨
  1. 대체 키 열에 해당 테이블의 대체 키가 적용되는 열을 입력합니다(예: pw_hwid).
대체 키 열 필드가 pw_hwid 로 설정됨
  1. 대체 키 값에 일치시킬 값을 입력합니다. 보통 {{device:hwid}}와 같은 매크로를 사용합니다. 값은 요청 URL 에 포함되므로 따옴표가 있는 값은 피하세요.
대체 키 값 필드가 장치 hwid 매크로로 설정됨
  1. 열에 쓸 Dataverse 열마다 하나의 행을 추가합니다. 열 이름과 값을 입력합니다. 이름은 비어 있지 않고 고유해야 합니다. 값은 고정된 텍스트이거나 Webhook 본문에서와 같은 {{device:hwid}}와 같은 여정 참여자 매크로일 수 있습니다. 또는 동적 값 삽입을 클릭하여 이 여정의 이전 단계에서 생성된 속성(예: LLM 응답 또는 매핑된 Webhook 값)을 선택합니다.
emailaddress1 이 태그 매크로에 매핑된 열 이름 및 값 테이블
  1. 저장을 클릭합니다.

여정 참여자는 캔버스에서 다음에 연결하는 단계로 계속 진행합니다.

단계 실행 후 속성

Anchor link to

Salesforce: 레코드 생성 또는 업데이트와 달리, 이 지점은 행의 ID 를 여정 참여자 속성으로 반환하지 않습니다. 이후 단계에서 ID 가 필요한 경우, 동일한 대체 키 값으로 행을 다시 조회해야 합니다.

실패 및 예기치 않은 응답

Anchor link to

지점의 드로어에서 호출 로그를 열고 응답을 확인합니다:

  • 401 — 연결의 클라이언트 시크릿이 거부되었거나 만료되었습니다. 설정 > 타사 통합에서 다시 연결하세요.
  • 403 — 애플리케이션 사용자의 보안 역할이 해당 테이블에 대한 생성 또는 업데이트 액세스 권한을 부여하지 않습니다.
  • 404 — 환경 호스트 또는 테이블이 해당 환경의 어떤 것과도 일치하지 않습니다.
  • 400 — 대체 키 열이 해당 테이블의 대체 키로 정의되지 않았거나, 열의 이름이 실제 열이 아닙니다.

요청이 실패하면 여정 참여자는 여정에서 제외됩니다. 오류 및 실패한 요청을 참조하세요.

예시 시나리오: 기업 요금제 요청을 Dynamics 365 에 동기화하기

Anchor link to

B2B SaaS 앱에서 사용자가 인앱 기업 요금제 요청을 탭할 수 있습니다. 팀은 이 요청을 Dynamics 365 에 업서트(upsert)하여, 반복적인 탭이 중복을 생성하는 대신 동일한 행을 업데이트하도록 일치시키기를 원합니다.

  1. 트리거 기반 진입 요소를 추가하고 EnterprisePricingRequested 이벤트에서 실행되도록 설정합니다.
  2. 바로 뒤에 Dynamics 365: 레코드 생성 또는 업데이트를 추가합니다. 테이블을 contacts로, 대체 키 열을 pw_hwid로, 대체 키 값을 {{device:hwid}}로 설정합니다. 열에서 emailaddress1을 {{tag:Email}}로 설정합니다.
  3. 저장을 클릭합니다.

이것이 실행되면, 요청은 장치별로 일치하는 Dynamics 365 연락처로 존재하게 되어, 영업팀이 앱 자체 데이터 대신 CRM 에서 작업할 수 있게 됩니다.