Since I updated n8n to [email protected] I accure following problems:
Workflow with notion’s node with at least two filter ruler generate following error:
ERROR: 400 - {
"object": "error",
"status": 400,
"code": "validation_error",
"message": "body failed validation. Fix one: body.filter.and[1].text.equals should be a string, instead was `0`. body.filter.and[1].text.does_not_equal should be defined, instead was `undefined`. body.filter.and[1].text.contains should be defined, instead was `undefined`. body.filter.and[1].text.does_not_contain should be defined, instead was `undefined`. body.filter.and[1].text.starts_with should be defined, instead was `undefined`. body.filter.and[1].text.ends_with should be defined, instead was `undefined`. body.filter.and[1].text.is_empty should be defined, instead was `undefined`. body.filter.and[1].text.is_not_empty should be defined, instead was `undefined`."
}
As I remember @RicardoE105 informed me about this new feature (filter as JSON and filtering formula props) so you may know how to help with this,
Hi @Shirobachi, I gave this a quick go on my end (upgrading my private n8n instance with an active Notion flow) but similar to Jon did not run into the problem described.
So I am still struggling to understand how your Notion nodes might have become corrupted in the first place. This is a long shot, but are you possibly running a custom build of n8n? And do you also encounter the problem when building a new workflow from scratch?
The error screenshot suggests the comparison using your filters might have failed (e.g. because n8n is sending a number where a string is expected). Did you by any chance update your database in Notion (changing data types for example)?
I did not change those dbs (as I remember) + now I set node via clicking in n8n with refreshing list so n8n had the newest infos about props.
You can have a look here to see that those props are correct.
I am sorry for my delay and that I am not helpful much, I am currently during examination time at college and have no much time. I’ll try downgrade and upgrade one more time n8n maybe it will help, also I am using since not much time docker compose and maybe I did something wrong with that (config or/and updating)
Is there a way to somehow see what JSON n8n generate?
I think that there is some mistake (what now explain why workflow made in the past not working), I assume this because it happened that workflow cause error when I config node from scratch by clicking, I think that n8n cannot make mistakes since it take props, values etc. from notion API and error say I wanted string, but you have me 0 (what make me feel that somehow JSON is no right generating), does it have make sense?
error
ERROR: 400 - {"object":"error","status":400,"code":"validation_error","message":"body failed validation. Fix one: body.filter.and[2].text.equals should be a string, instead was `0`. body.filter.and[2].text.does_not_equal should be defined, instead was `undefined`. body.filter.and[2].text.contains should be defined, instead was `undefined`. body.filter.and[2].text.does_not_contain should be defined, instead was `undefined`. body.filter.and[2].text.starts_with should be defined, instead was `undefined`. body.filter.and[2].text.ends_with should be defined, instead was `undefined`. body.filter.and[2].text.is_empty should be defined, instead was `undefined`. body.filter.and[2].text.is_not_empty should be defined, instead was `undefined`."}
Oddly enough I did hit an issue with Notion last week where it was unhappy with what I was using for the Title Field, Previously I was just using a number but notion is now expecting that to always be a string so I had to tweak my workflow to allow for this change.
I have a feeling Notion may have tweaked something in their API and that has tripped up some search cases, Out of interest if you go back to an older version of n8n do you get the same issue?
Something what I feel I should mention is that I think that notion made some changes on API I so that they treat checkbox on their frontend differently (what of course may mean nothing to API)
After downgrade to image: n8nio/n8n:0.156.0 all checked workflows with notion nodes work properly.
BTW. I tried update to n8nio/n8n:0.156.0-debian and my micro editor setting file and docker-compose.yaml file was truncated. Are you maybe familiar with this? I mean I am new with docker-compose is ..-debian not to use or sth, it is also possible that it’s not related to n8n so DW if you do not know or sth
Also, kinda cool to know that more ppl have this problem because I was gone crazy and think that I am doing sth wrong
That sounds like we may have broken something for some cases with the update in 157 then, I have not used the debian version of the docker image but in theory n8n will be the same on it as comes from the same code. Not sure why the compose file would be truncated though.
I would say for now run with 156, Weirdly I still can’t reproduce it in the same way as you but I will keep trying.
Hi @Shirobachi, just wanted to drop a quick note to confirm I could reproduce this, even with a brand new setup. I have documented this in our internal bug tracker and we will, of course, confirm once this has been resolved.
I was able to avoid running into this error when defining a JSON filter though instead of using the manual filters like so:
If downgrading is not an option as suggested by @Shirobachi, you can also use the JSON approach shared earlier as a workaround @ZXS. It actually uses a date field, so all you’d need to change is the name of your field.