User Record Changed webhooks do not fire
Hi all,
I recently set up webhooks for Blackbaud K-12 by creating a subscription for com.blackbaud.education.user.change.v1 and testing it successfully with a couple of com.blackbaud.utility.testpayload.v1 calls. However, I've noticed that no amount of changes, profile creations, or deletions in Blackbaud K-12 actually trigger any webhooks. We don't even see attempts of webhooks in the server logs.
Making GET calls to https://api.sky.blackbaud.com/webhook/v1/subscriptions shows a provisioned subscription, requesting additional test payloads works just as expected.
Anybody having similar issues by any chance? Can anybody from Blackbaud chime in?
Thank you!
Answers
-
Hi @Omer Boratav - I'm tagging in @Stephen Boyle to see if he can offer any assistance here!
1 -
I don't use education webhook, but I do use RE's. Did you check later to make sure? I experienced hours of delay sometime before the webhook is fired.
0 -
Hi @Alex Wong, really appreciate your input as a fellow dev. I haven't experimented with webhooks in RE yet, but it's good to hear that they're working.
I've been waiting for 11 days now—so there's definitely a problem. And if I can be honest, I really do understand and appreciate throttling and debouncing; but if a webhook takes hours to fire, that's not really a webhook.
Blackbaud provides an average timeframe of about 5 minutes in its documentation. 5 minutes is perfectly reasonable. But hours, or days? That'd defeat the whole point of a webhook, I think.
0 -
I totally hear what you are saying. In generally, webhook do fire quickly.
@Ben Wong @Erik Leaver adding 2 from Blackbaud here for some comment.
My experience of when webhook took hours is when I approve a dozen webview batches in RE NXT and that causes hundreds of "when gift is created" webhook to fire. This is usually when I see a delay of a few hours.
0 -
Hi @Omer Boratav, one thing you can try if the environment you have contains Education Management and Raiser's Edge NXT, is to use the Webhook Monitor to see if the webhook event is firing:
The Webhook Monitor is a separate app that will need to be connected. Once connected you'll see an add-in on the RENXT homepage. Even though it's only compatible with RENXT currently, it let's you subscribe to the Education Management webhooks. If you make changes to the user, you should see a log of events that were fired by the change, and received by the Webhook Monitor. If you see the event in the Webhook Monitor log, then you know your environment is firing the webhook event and the issue is with your code receiving it.
Hope that helps!
0 -
Hi @Ben Wong, thank you so much for that tip!
I've connected the Webhook Monitor and subscribed to the webhooks through it, but nothing's showing up there either. So I'm pretty confident that the issue is with the webhooks not firing.
Cheers,
0 -
@Omer Boratav in that case, you should contact Blackbaud Support and file a ticket so that they can look into your specific situation. It will probably need attention from the Education Management product team. Cc: @Stephen Boyle
0 -
I think the release yesterday had the changes to reenable the user changed webhook. If it's not working for you now, let me know.
Stephen
0 -
Hi @Stephen Boyle,
Sorry for not updating this thread. Yes, I put in a ticket (#020844892) on the afternoon of April 20th, and got a reply asking me a bunch of troubleshooting questions at 06:24 Pacific Time on April 21st.
Miraculously, at 09:52 the same morning, we started getting a stream of webhooks for some fairly recent changes; and it appears to have been working fine since then.
One thing I should note for other people who may be working with the Education webhooks: The User ID returned in
data.idis not just the user's User ID as a string. It's apparently prefixed with the environment ID.So instead of something like:
{ "id": "uwz7wi28-67b9-4999-0w5c-zy3m3bzxkqu5", "data": { "id": "1234567" }, "time": "2026-04-21T16:52:59.143731+00:00", "type": "com.blackbaud.education.user.change.v1", "source": "CY93MVX6JDJAY3KKW9EE812J50N1CQQQBZKPU1U", "subject": "/environments/p-yourenvironment-identifier", "specversion": "1.0", "traceparent": "00-0ja7pm0q796kxci6haa9e45kin1xe6d8-4f3mtn0k2hnkw5fw-01" }where 1234567 would be the user ID you'd use in the
GETUser by ID endpoint, Blackbaud sends:{ "id": "uwz7wi28-67b9-4999-0w5c-zy3m3bzxkqu5", "data": { "id": "p-yourenvironment-identifier-1234567" }, "time": "2026-04-21T16:52:59.143731+00:00", "type": "com.blackbaud.education.user.change.v1", "source": "CY93MVX6JDJAY3KKW9EE812J50N1CQQQBZKPU1U", "subject": "/environments/p-yourenvironment-identifier", "specversion": "1.0", "traceparent": "00-0ja7pm0q796kxci6haa9e45kin1xe6d8-4f3mtn0k2hnkw5fw-01" }This is not documented in the webhook event documentation, and is also not reflected in the test webhook.
0 -
I don't think that is supposed to be happening. Let me check with the team.
0
Categories
- All Categories
- 1 Blackbaud Agents for Good™
- Raiser's Edge NXT test
- 6 Blackbaud Community Help
- 211 bbcon®
- 1.4K Blackbaud Altru®
- 403 Blackbaud Award Management™ and Blackbaud Stewardship Management™
- 1.2K Blackbaud CRM™ and Blackbaud Internet Solutions™
- 16 donorCentrics®
- 360 Blackbaud eTapestry®
- 2.6K Blackbaud Financial Edge NXT®
- 661 Blackbaud Grantmaking™
- 583 Blackbaud Education Management Solutions for Higher Education
- 3.3K Blackbaud Education Management Solutions for K-12 Schools
- 947 Blackbaud Luminate Online® and Blackbaud TeamRaiser®
- 84 JustGiving® from Blackbaud®
- 6.8K Blackbaud Raiser's Edge NXT®
- 3.8K SKY Developer
- 251 ResearchPoint™
- 120 Blackbaud Tuition Management™
- 165 Organizational Best Practices
- 243 Member Lounge (Just for Fun)
- 37 Blackbaud Community Challenges
- 37 PowerUp Challenges
- 3 (Closed) PowerUp Challenge: Grid View Batch
- 3 (Closed) PowerUp Challenge: Chat for Blackbaud AI
- 3 (Closed) PowerUp Challenge: Data Health
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Product Update Briefing
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Standard Reports+
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Email Marketing
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Gift Management
- 4 (Closed) Raiser's Edge NXT PowerUp Challenge: Event Management
- 3 (Closed) Raiser's Edge NXT PowerUp Challenge: Home Page
- 4 (Closed) Raiser's Edge NXT PowerUp Challenge: Standard Reports
- 4 (Closed) Raiser's Edge NXT PowerUp Challenge: Query
- 804 Community News
- 3K Jobs Board
- 57 Blackbaud SKY® Reporting Announcements
- 47 Blackbaud CRM Higher Ed Product Advisory Group (HE PAG)
- 19 Blackbaud CRM Product Advisory Group (BBCRM PAG)



