Hi, I can’t do rows filtering via API. I’m certain in my request - it is like the documentation says.
curl --location --request GET ‘https://cloud.seatable.io/dtable-server/api/v1/dtables/de4e345c-beb6-4262-a112-d0aaa7ad3402/filtered-rows/?table_name=Expenses ’ --header ‘Authorization: Token token’ --data-raw ‘{“filters”:[{“column_name”: “Category”, “filter_predicate”: “contains”, “filter_term”: “Доставка”, “filter_term_modifier”: “”}],“filter_conjunction”: “Or”}’
I got error every time I try:
{“error_msg”:“filters required.”}
Hi, welcome to the SeaTable Forum!
Questions:
Which version of SeaTable are you using?
How did you implement the API: manually or did you import them from api.seatable.io into Postman? As I think you might also need the 'Content-Type: application/json'
header.
Did you see this post?
Hi,
welcome to the SeaTable forum!
I guess you are using the API request “List filtered rows”. This API request has been depricated and will be removed from the documentation soon, as there are already other better solutions as alternatives:
List rows in a view can do the same job and better. In this case, you need to separately create views for each filter condition, then list all rows in each view to get what you want.
The SQL query API can do complex queries as well (but this is problemat…
Anyway, I just tested the filtering and it works.
I added ‘Content-Type: application/json’ header, and curl worked, thanks!
But I work with SeaTable API in ApacheNiFi. I configured processor as in curl:
I set Send Message Body as true and Content-Type as application/json also.
But it still forward {“error_msg”:“filters required.”}. I guess that problem is in GET method.