I’m working on a project where my app.js file sends requests to the Notion API to add new entries to a database. Everything was working fine until yesterday. The entries were getting created properly and showing up in my Notion workspace.
I was trying to add a feature that would save user data to Notion even if they close the browser window. While testing this, I ran into some validation issues. After fixing those problems, I started getting this error:
I thought maybe my new code caused the problem, so I used git stash to remove all my recent changes and went back to the version that was working before. I rebuilt everything, restarted my server, and refreshed the page. But the same error keeps happening.
Has anyone seen this before? What could be causing this issue even after reverting to working code?
hey, i’ve had this happen too. sometimes the cache needs to be cleared or there might be a timeout issue with your API calls. try adding some logging to see the exact request being sent and the response you’re getting. good luck!
Sounds like a database state issue on Notion’s end, not your code. I hit something similar a few months ago with their API. That “unsaved transactions” error usually means Notion’s internal database operations got stuck or corrupted. Your code rollback won’t fix the database itself if it’s in a weird state. Create a fresh test database and point your API calls there temporarily. If it works fine, you know it’s your original database that’s the problem. Also check for any pending operations or browser tabs still open with your Notion workspace - those can hold transactions. Sometimes I’ll close all Notion browser instances and wait 10-15 minutes to reset the connection state.
Had the same thing happen last month. Rolling back didn’t fix it because the issue wasn’t my code - it’s how Notion handles concurrent database writes. When you tested that browser close feature, you probably fired off multiple requests at once and created conflicting database locks. Those locks don’t clear just because you reverted your code. Add a unique identifier to each database entry - timestamp or UUID works. Stick it in one of your properties to prevent duplicate transaction conflicts that trigger the unsaved transactions error. Also check if your database has formula properties that might be failing validation from incomplete data when those requests got interrupted during testing.
This happens when you’re hitting rate limits or your requests are clashing with cached operations. Even after reverting your code, the problem sticks around because Notion keeps internal request queues and transaction logs that don’t clear right away. First, check your API integration token permissions - they get corrupted during heavy testing. I’ve seen regenerating the integration token in your Notion workspace fix these phantom transaction errors. Also make sure your request headers have the right content-type and Notion-Version parameters. That “unrecognized error” means malformed requests from earlier failed attempts are still getting processed. Try a simple test request to a different property in your database - that’ll tell you if it’s request-specific or affects the whole database.
check if you’ve got multiple app instances running - i had this exact issue cuz i forgot about a test server still hitting the api in the background. also clear your browser’s local storage. stale auth tokens can cause weird validation errors even after reverting code.
I’ve hit this exact error before - super frustrating because reverting your code doesn’t always fix the API state mess.
The issue is Notion’s API gets stuck in weird states when requests fail or timeout. Your code’s back to working, but the API connection or database operations are still hung up somewhere.
What saved me was automating the error handling and retry logic completely. Instead of manually debugging every API call, I built automated workflows that handle these validation errors without breaking everything.
I use Latenode for robust API workflows that automatically retry failed requests, validate data upfront, and handle transaction errors without killing the whole process. Has built-in error handling specifically for API state issues like this.
The automation catches those “unsaved transaction” errors and either retries with proper delays or switches to fallback operations. Way cleaner than trying to debug Notion’s internal state manually.