Skip to content
Infinite-Growth-Inboundsys
Case studies /

From fragmented reservation data to a unified HubSpot customer view

How Inboundsys connected Flybook, Snowflake, and HubSpot Enterprise through a scalable custom middleware architecture

Measurement window

1–3 months

Engagement

Completed

Platform

HubSpot Enterprise

Market

Project Client profile Delivery
Flybook → Snowflake → HubSpot Integration Outdoor adventure and art activities Completed in 1–3 months
Platform Business areas Project owner
HubSpot Enterprise Marketing • Operations • Finance • IT Puja Damani

THE STORY IN ONE LINE

Inboundsys overcame the absence of suitable Flybook APIs by engineering a Node.js middleware layer that transformed interconnected Snowflake data into reliable, associated HubSpot CRM records.

Solution architecture at a glance

Solution architecture at a glance

Executive summary

The client operates in the outdoor adventure and art activity industry, using Flybook as its reservation management platform. Customer bookings and activity information were available through Snowflake, but sales and customer success teams did not have a dependable, centralized view inside HubSpot. The resulting fragmentation created manual effort, weak visibility, reporting constraints, and the risk of inconsistent customer records.

Inboundsys designed and delivered a custom integration that synchronized client, reservation, and activity data from Snowflake into HubSpot Enterprise. The solution combined a purpose-built CRM data model, custom objects, custom properties, automated associations, data transformation, duplicate prevention, scheduled synchronization, logging, and error handling. The result was a scalable foundation for more informed customer engagement and future growth.

Client context and strategic objective

Dimension What mattered
Business model Reservations for outdoor adventures and art activities are managed in Flybook.
Operational reality Critical reservation data was distributed across Flybook and multiple interconnected Snowflake tables.
Primary users Sales and customer success needed accurate booking context; Marketing, Operations, Finance, and IT were covered by the implementation.
Strategic objective Centralize customer data, improve lead management and service, reduce manual work, and support business growth.
HubSpot scope Marketing Hub and Content Hub, Enterprise edition, with CRM configuration supporting the integration.

The challenge: complex data without a direct API path

The project was not a conventional connector implementation. Flybook did not provide the APIs required to retrieve the reservation and activity data needed by the client. Snowflake therefore became the usable source, but its structure introduced a second layer of complexity.

Reservation and activity information lived across multiple interconnected Snowflake tables and required significant mapping and transformation.

Relationships had to be maintained between customers, reservations, art activities, and outdoor adventures.

The source initially exposed only the current state of records, making removed activities difficult to detect and associations difficult to keep accurate.

Teams lacked real-time visibility into reservation and activity changes and relied on fragmented systems.

Manual transfers increased operational overhead and created potential data inconsistencies.

Limited CRM visibility weakened reporting, marketing automation, sales productivity, and adoption.

CORE PROBLEM

The client could not reliably connect customer identity with reservation and activity context in one CRM view, yet no standard source-system API could provide the required dataset.

Solution strategy

Inboundsys treated the engagement as both a data-architecture project and a HubSpot implementation. The team first mapped the business entities and their relationships, then built the CRM model and synchronization services needed to keep those entities accurate over time.

Solution layer Inboundsys implementation Business purpose
Data model Custom objects for Reservations, Art Activities, and Outdoor Adventures, supported by custom properties. Represent the client’s real operating model inside HubSpot.
Integration layer Custom Node.js middleware connected directly to Snowflake and HubSpot CRM APIs. Create a reliable path where a standard Flybook API route was unavailable.
Transformation Complex SQL-driven mapping and JavaScript transformation logic. Convert interconnected warehouse tables into CRM-ready records.
Record integrity Automated create/update logic, duplicate prevention, and JWT-authenticated access. Protect data consistency and prevent unnecessary duplicate records.
Relationships Automated associations between Contacts, Reservations, and Activity records. Give teams a connected customer and booking view.
Operations Daily scheduled synchronization with logging and error handling. Make the flow repeatable, observable, and maintainable.

HubSpot configuration and data model

The HubSpot configuration centered on a unified CRM structure rather than a flat contact import. Contacts were linked to reservation records, and reservations were associated with the relevant art or outdoor activity records. This preserved the relationship context that sales, customer success, and reporting teams needed.

Custom properties captured attributes required for segmentation, visibility, and operational use.

Custom objects modeled Reservations, Art Activities, and Outdoor Adventures as distinct, reusable CRM entities.

Automated associations connected customers with the reservations and experiences related to them.

A limited import seeded contacts and custom-object information where required before ongoing synchronization.

Enterprise HubSpot capabilities provided the foundation for scalable data modeling across the covered departments.

Integration workflow

Step What happens Control built in
1. Extract The middleware reads the required current reservation and activity information from Snowflake. Authenticated access and scheduled execution
2. Map SQL and JavaScript logic translate source tables, identifiers, and relationships. Defined mapping rules
3. Match Incoming entities are checked against HubSpot records. Duplicate prevention
4. Create or update Contacts and custom-object records are created or refreshed. Consistent identifiers and update logic
5. Associate Contacts, Reservations, and Activities are linked automatically. Relationship validation
6. Monitor Synchronization events and exceptions are recorded. Logging and error handling

MOST VALUABLE INTEGRATION CAPABILITY

Reliable automated daily synchronization of client, reservation, and activity data complete with transformations, duplicate controls, associations, and operational safeguards.

Delivery approach

The engagement was completed through a structured implementation lifecycle designed to reduce risk in both the CRM configuration and the custom integration.

Phase Activities completed
Discover Discovery workshops and stakeholder alignment
Design Process mapping and solution architecture
Configure Custom properties, custom objects, and HubSpot configuration
Build Data migration support and custom integration development
Validate Technical testing and user acceptance testing
Launch Go-live support
Stabilize Post-launch support and issue resolution

How the hardest challenge was solved

The biggest challenge combined three constraints: the absence of suitable Flybook APIs, a Snowflake schema with multiple interconnected tables, and source records that initially represented only the current state. A basic import or off-the-shelf connector could not preserve the required relationships or reliably recognize changes.

Inboundsys solved this by making Snowflake the integration source and introducing a controlled middleware layer. The Node.js application encoded the data model, transformation rules, matching logic, and HubSpot API operations. It also automated the associations needed to connect each customer with relevant reservations and activities. Logging and error handling made the daily synchronization supportable, while duplicate prevention protected CRM quality.

Constraint Engineering response Result
No required Flybook APIs Direct Snowflake integration through custom middleware A viable and controllable data route
Complex relational tables SQL mapping plus JavaScript transformation CRM-ready customer, reservation, and activity records
Current-state-only source behavior Purpose-built synchronization and relationship logic More accurate ongoing associations
Risk of duplicates Matching and duplicate-prevention controls Cleaner HubSpot records
Operational failure risk Logging and error handling Better maintainability and troubleshooting

Results and business impact

The completed solution gave the client a centralized and reliable view of customer reservations and activities within HubSpot. By reducing manual data movement and bringing relationship-rich booking context into the CRM, it improved the usefulness of HubSpot for customer-facing and operational teams.

Qualitative comparison only; exact performance metrics were not supplied in the project form.

Qualitative comparison only; exact performance metrics were not supplied in the project form.

Outcome Operational impact
Centralized customer data Teams can access customer, reservation, and activity context in HubSpot rather than navigating fragmented systems.
Reduced manual work Scheduled synchronization replaces repeated manual transfer and reconciliation activities.
Improved data accuracy Transformation, matching, duplicate prevention, and associations increase consistency.
Better sales visibility Customer-facing teams gain clearer booking and engagement context.
Improved reporting Connected CRM objects create a stronger base for cross-object reporting.
Improved productivity Users spend less time assembling customer information from separate systems.
Scalable processes The middleware architecture can support future enhancements and business growth.

MEASUREMENT NOTE

The project information confirms qualitative business improvements, but no exact numerical KPIs were available. Accordingly, this case study does not attribute unverified percentages, record counts, or ROI figures.

Long-term value

The value of the implementation extends beyond the initial synchronization. The custom data model gives HubSpot a durable representation of how the client’s business actually works, while the middleware separates source-system complexity from CRM usage. This creates a platform that can be monitored, extended, and adapted as data structures or business needs evolve.

A unified customer view supports more relevant engagement by sales and customer success.

Connected reservation and activity objects enable richer reporting and future automation.

Daily synchronization lowers ongoing operational overhead and reliance on manual intervention.

A modular middleware layer creates room for new mappings, data fields, or downstream workflows.

Logging and error handling provide a maintainable basis for post-launch support.

The architecture positions the client to scale CRM use across Marketing, Operations, Finance, and IT.

Governance, reliability, and supportability

A custom integration creates value only when it can be trusted after launch. For that reason, the solution was designed as an operational service rather than a one-time data movement exercise. Scheduled execution established a predictable synchronization rhythm, while logging and error handling provided visibility when a source record, mapping, or API operation required attention. Duplicate prevention and controlled create-or-update behavior protected the CRM from avoidable record proliferation.

Governance concern Control in the delivered solution
Data integrity Defined mappings, transformations, matching, and duplicate prevention
Relationship integrity Automated associations across Contacts, Reservations, and Activities
Security JWT-authenticated integration access
Operational visibility Synchronization logging and exception handling
Release confidence Testing, user acceptance testing, go-live support, and post-launch support
Extensibility A middleware layer that can accommodate future fields, rules, and enhancements

Business use cases enabled

With reservation and activity context accessible in HubSpot, the client has a stronger base for practical cross-functional use cases. The project form does not confirm that every scenario below has already been activated; rather, these are the direct capabilities enabled by the delivered data foundation.

Sales visibility: review a customer’s reservation history and associated activities before outreach.

Customer success context: understand bookings and activity changes without manually reconciling separate systems.

Marketing segmentation: use CRM properties and connected records as a basis for more relevant audience selection.

Operational reporting: analyze customers, reservations, and activity relationships through connected CRM data.

Finance and IT support: work from a more consistent source of customer and booking context, backed by a repeatable integration process.

Future automation: trigger additional HubSpot workflows as business rules, lifecycle needs, and available source fields mature.

Technology stack

Technology Role in the solution
HubSpot Enterprise CRM Central customer view, custom objects, custom properties, associations, and workflows
HubSpot CRM APIs Programmatic record creation, updates, and association management
Node.js and JavaScript Custom middleware and transformation logic
Snowflake Data Warehouse Source of reservation and activity datasets
SQL Extraction, joining, and mapping of interconnected source tables
JWT authentication Secure authenticated integration access

Why this project stands out

It solved a real integration barrier where the required standard APIs did not exist.

It translated a complex warehouse schema into an intuitive HubSpot CRM model.

It preserved multi-object relationships between customers, reservations, and activities.

It combined CRM configuration, data migration support, integration development, testing, launch, and post-launch support.

It delivered a scalable architecture that improved visibility, efficiency, accuracy, and reporting readiness.

INBOUNDSYS ADVANTAGE

Deep HubSpot implementation expertise combined with custom integration engineering enabled Inboundsys to solve both the CRM-design challenge and the source-data constraint as one coordinated system.


Share this study