지난번에는 Xplenty: Hubspot의 데이터를 API로 가져오는 방법에 대해 소개했지만, 이번에는 Hubspot의 API를 사용하여 Xplenty에서 Hubspot의 Contact 데이터를 갱신하는 방법에 대해 설명합니다.
이번에 사용하는 API에 관한 참고 문서:
https://legacydocs.hubspot.com/docs/methods/contacts/create_or_update
데이터 쓰기
여기서는 S3에 저장된 연락처 목록의 CSV 파일을 Hubspot으로 갱신하는 방법을 보여줍니다.
스토리지 컴포넌트(Source)를 통해, S3에서 Hubspot에 갱신 할 데이터를 가져옵니다.
Select 컴포넌트에서 Curl 함수를 사용하여 리퀘스트를 정의합니다.
Select 컴포넌트 설정 화면
리퀘스트 예:
https://api.hubapi.com/contacts/v1/contact/createOrUpdate/email/메일주소_필드이름/?hapikey=<API_키값>
리퀘스트 Body 예:
{
"properties": [
{
"property": "firstname",
"value": "firstname_필드이름"
},
{
"property": "lastname",
"value": "lastname_필드이름"
},
{
"property": "company",
"value": "기업명_필드이름"
}
]
}
위의 바디 구조를 참고하여 Xplenty의 Curl 함수를 사용한 갱신용 함수식을 만든다.
Curl(CONCAT('https://api.hubapi.com/contacts/v1/contact/createOrUpdate/email/', mail, '/?hapikey=API-키값'), 'POST', '{"content-type":"application/json"}', CONCAT('{ "properties": [{"property": "firstname","value": "',FirstName ,'" }, {"property": "lastname","value": "' ,LastName,'" },{"property": "company","value": "',Company,'" }]}') )#'status'
작성된 패키지는 다음과 같습니다.
Xplenty에서 작업 실행 결과 확인
작업이 올바르게 실행되고 각 이메일 주소에 대한 요청이 성공(상태: 200)하였음을 알 수 있습니다.
Hubspot쪽의 화면에서 확인하면, 작업 실행 전에 대해 데이터가 올바르게 추가/갱신되었다는 것을 확인할 수 있습니다.
작업 실행 전:
작업 실행 후:
변수사용이 편리
이번에는 빠른 이해를 위해 API Key나 URL을 고정값으로 세트하여 소개 했지만, 운영 편의성 측면에서는 변수사용을 추천합니다.