API Notification for Stopped Integration

BRegan
Contributor

We have a custom API that is built to pass data from our outside system into HubSpot.  There have been two different occassions where the the data has encountered an error and stopped flowing.  This was only discovered from a manual check.  Is there a way to create a notification that if data isn't flowing through after X days then there is a notification sent out?

 

Please note that the records that flow through go to a custom object, and not to contacts.

2 Accepted solutions
GRajput
Solution
Recognized Expert | Platinum Partner
Recognized Expert | Platinum Partner

Hi @BRegan 

"I can take two approaches here -

First approach :

1. Add a property in your custom object, e.g., last_data_received_date.

2. Update this property via your API every time a new record is successfully created.

3. Create a workflow that checks if last_data_received_date is older than X days.

4. Trigger an internal notification (email/task) to your team if the threshold is exceeded.

Second Approach :

1. Create an achedular that runs every day on your backend code.

2. Every day, query your custom object usingthe  HubSpot API to check for 3. records created/updated in the last X days.

If no records are found, trigger an alert.

I hope this will help you out. Please mark it as Solution Accepted and upvote to help another Community member.

Thanks!




Gaurav Rajput
Director, MarTech( Growth Natives)

Book a meeting


View solution in original post

0 Upvotes
RubenBurdin
Solution
Guide

Hi @BRegan , you’re thinking about the right problem. HubSpot doesn’t have a native concept of “integration health” or “data stopped flowing”, so you have to infer it indirectly from data activity.

 

Gaurav’s first approach is usually the most HubSpot-native and scalable: add a datetime property on the custom object like last_ingested_at, update it on every successful API write, and then use a scheduled workflow to check whether that date is older than X days. Scheduled workflows work on custom objects now, which makes this pattern much easier than it was a few years ago.

 

When the condition is met, you can send an internal email, Slack notification, or even create a task. HubSpot documents the scheduled workflow behavior here (https://knowledge.hubspot.com/workflows/use-based-on-a-schedule-workflow-enrollment-triggers )

 

If you want a bit more confidence, a backend-side check is also solid: run a daily job that queries the CRM Search API for custom object records updated in the last X days, and alert if the count is zero. That catches cases where your integration code is running but failing before writes. The search endpoint works well for this kind of “heartbeat” check (https://developers.hubspot.com/docs/api-reference/search/guide )

 

Small clarifying question: is your integration pushing records continuously, or in batches (for example nightly)? That affects whether “no data in X days” is a real failure or just expected quiet time.

Just to be transparent, I work at Stacksync. In setups where teams want this kind of monitoring without building it themselves, we’ve seen value in having sync-level health signals and alerts when writes stop for custom objects, which removes the need for custom watchdog logic. Hope this helps.

Did my answer help? Please mark it as a solution to help others find it too.

Ruben Burdin Ruben Burdin
HubSpot Advisor
Founder @ Stacksync
Real-Time Data Sync between any CRM and Database
Stacksync Banner

View solution in original post

0 Upvotes
5 Replies 5
RubenBurdin
Solution
Guide

Hi @BRegan , you’re thinking about the right problem. HubSpot doesn’t have a native concept of “integration health” or “data stopped flowing”, so you have to infer it indirectly from data activity.

 

Gaurav’s first approach is usually the most HubSpot-native and scalable: add a datetime property on the custom object like last_ingested_at, update it on every successful API write, and then use a scheduled workflow to check whether that date is older than X days. Scheduled workflows work on custom objects now, which makes this pattern much easier than it was a few years ago.

 

When the condition is met, you can send an internal email, Slack notification, or even create a task. HubSpot documents the scheduled workflow behavior here (https://knowledge.hubspot.com/workflows/use-based-on-a-schedule-workflow-enrollment-triggers )

 

If you want a bit more confidence, a backend-side check is also solid: run a daily job that queries the CRM Search API for custom object records updated in the last X days, and alert if the count is zero. That catches cases where your integration code is running but failing before writes. The search endpoint works well for this kind of “heartbeat” check (https://developers.hubspot.com/docs/api-reference/search/guide )

 

Small clarifying question: is your integration pushing records continuously, or in batches (for example nightly)? That affects whether “no data in X days” is a real failure or just expected quiet time.

Just to be transparent, I work at Stacksync. In setups where teams want this kind of monitoring without building it themselves, we’ve seen value in having sync-level health signals and alerts when writes stop for custom objects, which removes the need for custom watchdog logic. Hope this helps.

Did my answer help? Please mark it as a solution to help others find it too.

Ruben Burdin Ruben Burdin
HubSpot Advisor
Founder @ Stacksync
Real-Time Data Sync between any CRM and Database
Stacksync Banner
0 Upvotes
GRajput
Solution
Recognized Expert | Platinum Partner
Recognized Expert | Platinum Partner

Hi @BRegan 

"I can take two approaches here -

First approach :

1. Add a property in your custom object, e.g., last_data_received_date.

2. Update this property via your API every time a new record is successfully created.

3. Create a workflow that checks if last_data_received_date is older than X days.

4. Trigger an internal notification (email/task) to your team if the threshold is exceeded.

Second Approach :

1. Create an achedular that runs every day on your backend code.

2. Every day, query your custom object usingthe  HubSpot API to check for 3. records created/updated in the last X days.

If no records are found, trigger an alert.

I hope this will help you out. Please mark it as Solution Accepted and upvote to help another Community member.

Thanks!




Gaurav Rajput
Director, MarTech( Growth Natives)

Book a meeting


0 Upvotes
BRegan
Contributor

Thank you Gaurav!  I am trying to do the first approach, but I am a little confused on to how to trigger a workflow based on a property value overall, and not just a property associated with a record.  I have the following screenshot as an enrollment trigger, but I am worried that instead of triggering when an overall property has not been updated, it will just trigger when any record with this property has a date older than 3 days ago

BRegan_0-1766498860789.png

 

0 Upvotes
STierney
Community Manager
Community Manager

Hey @BRegan - thanks for following up here!

I'd like to re-tag in @GRajput to see what follow up they may have!

Shane, Senior Community Moderator





loop


Loop Marketing is a new four-stage approach that combines AI efficiency and human authenticity to drive growth.

Learn More




0 Upvotes
SealaB
Community Manager
Community Manager

Hi @BRegan,
 

Thank you for posting in the Community! It sounds like you are looking for a safety net to ensure your integration is running smoothly, which is a great idea for maintaining data integrity.

Since this involves custom API architecture and creative uses of automation, I want to tag in a few of our Community Champions to see if they have specific recommendations for setting up "dormancy" alerts:

@Mike_Eastwood, @Bortami, @ChristinaKay - have you encountered a good method for alerting when a custom object integration stops creating records?


While we await their expert advice, here are a few resources you might explore as a potential fit:

- HubSpot API Usage Guidelines & Response Codes

- Create a scheduled workflow

- Email a dashboard

 

Also, are you running this script on your own server, or using a middleware tool?

Seala, Community Manager
0 Upvotes