Skip to content

Latest commit

 

History

History
132 lines (61 loc) · 5.83 KB

File metadata and controls

132 lines (61 loc) · 5.83 KB

HubSpot Connectivity using Boomi

Introduction

HubSpot’s Customer Relationship Management (CRM) platform has the tools required for marketing, sales, content management, and customer service.  It can store Customer, Engagements, Product, Deals, and various other details related to CRM operations and transactions.

The objective of this document is to show the HubSpot configurations which are required to get it connected with Boomi to synchronize records with various other applications.

HubSpot Authentication Options

Option-1: Fetch HubSpot API Key

Step-1: Go to Settings --> Integrations --> API Key and click “Show”. image

Step-2: Use this API key in Request URL as Query Parameter.

image

Option-2: Create Private App in HubSpot

Step-1: Go to Settings --> Integrations --> Private Apps and click “Create a private app”.

image

Step-2: Fill Basic Info.

image

Step-3: Select CRM Scopes and click “Create app”.

image

Step-4: A pop-up window will now open. Click “Continue creating”.

image

Step-5: Click “Show token” and then “Copy” to save it in a secure location.

image

Step-6: Token can also be viewed by going through Settings --> Private Apps --> Ayan’s API (Private App created in Step-4).

image

image

Step-7: Use this token as “Bearer Token” in the Request Header.

image

Implement Pagination in Boomi to Fetch Records from HubSpot

Overall Boomi process to fetch records from HubSpot using Pagination, and send the records to NetSuite.

image

Step-1: Set Last Successful Run Date

image

Step-2: Set JSON profile for subsequent Map shape.

image

Step-3: Convert normal date value to EPOCH date value. Please refer "Normal Date to EPOCH Date.js" file for the conversion code. This is required because HubSpot accepts only EPOCH date in Search query.

image

Step-4: Set Request JSON to search HubSpot records.

image

Message: Please refer "Message Shape JSON.txt" file.

Example: Please refer "Message Shape JSON Example.json" file. Default Limit is 10 and Maximum Limit is 100. “Properties” key is used to fetch only the required fields from HubSpot.

Step-5: Set HubSpot connection.

image

Step-6: Set HubSpot operation.

image

Step-7: If value of “total” key is greater than 0, then records exist in HubSpot and proceed with next steps in Branch-1. Below is a Sample Response.

image

image

Step-8: If value of “after” key is not null, then more records need to be fetched and pagination is required to be carried out in this Boomi process.

image

image

Step-9: Set value of “after” key in Dynamic Process Property.

image

Step-10: Return to “Set HubSpot Filter Groups” Message shape to form a loop of requests being made to HubSpot. This loop will break once value of “after” key is null.

Implement UPSERT Operation

Below is the sample Postman screenshot.

image

Sample URL: https://api.hubapi.com/contacts/v1/contact/createOrUpdate/email/test@hubspot.com/?hapikey=hubspot_api_key_value

where, test@hubspot.com is the email-id which needs to UPSERT, and “createOrUpdate” value in URL is to implement UPSERT operation.

Sample Request Payload: Please refer "Sample Request Payload.json" file.

Sample Response Payload: Please refer "Sample Response Payload.json" file.

If “isNew” value is “true”, then record is created. If “isNew” value is “false”, then record is updated.