{"id":27139,"date":"2026-02-09T15:24:23","date_gmt":"2026-02-09T14:24:23","guid":{"rendered":"https:\/\/docs.reybex.com\/?post_type=manual_documentation&#038;p=27139"},"modified":"2026-02-09T15:26:44","modified_gmt":"2026-02-09T14:26:44","slug":"bas23-dataexportfeed-api-filter-parameters","status":"publish","type":"manual_documentation","link":"https:\/\/docs.reybex.com\/en\/dokumentation\/bas23-dataexportfeed-api-filter-parameters\/","title":{"rendered":"BAS23 DataExportFeed API \u2013 Filter Parameters"},"content":{"rendered":"\n<p>This document describes the filter parameters used by the <code>GET \/api\/dataExportFeed<\/code> endpoint and the two supported filter formats.<\/p>\n\n\n\n<p><strong>Base URL:<\/strong><br><code>\/api\/dataExportFeed?feedToken=&lt;feedToken&gt;<\/code><\/p>\n\n\n\n<p><code>feedToken<\/code> is required. Filters are optional.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">1. Simple Filter Format<\/h2>\n\n\n\n<p>Use this format to apply filters via the standard Kendo filter structure. The <code>filter<\/code> query parameter is parsed on the server and converted into Kendo grid format.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Syntax<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>filter=&lt;field&gt;:&lt;operator&gt;:&lt;value&gt;<\/code><\/pre>\n\n\n\n<p>For multiple conditions, separate with commas. All conditions are combined with <strong>AND<\/strong> logic.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>filter=&lt;field1&gt;:&lt;op1&gt;:&lt;value1&gt;,&lt;field2&gt;:&lt;op2&gt;:&lt;value2&gt;<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Examples<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Purpose<\/th><th>Example URL parameter<\/th><\/tr><\/thead><tbody><tr><td><code>lastModified<\/code> after 01.01.2022<\/td><td><code>filter=lastModified:gt:01.01.2022<\/code><\/td><\/tr><tr><td>Equality<\/td><td><code>filter=status:eq:ACTIVE<\/code><\/td><\/tr><tr><td>Less than or equal<\/td><td><code>filter=amount:lte:100<\/code><\/td><\/tr><tr><td>Text contains<\/td><td><code>filter=name:contains:test<\/code><\/td><\/tr><tr><td>Multiple filters<\/td><td><code>filter=lastModified:gt:01.01.2022,status:eq:ACTIVE<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Field mapping<\/h3>\n\n\n\n<ul>\n<li>In the URL you can use the DataExport column <strong>name<\/strong> (display name).<\/li>\n\n\n\n<li>The server maps <strong>name \u2192 code<\/strong> using the DataExport\u2019s <code>items<\/code> (DataExportItem). The query uses the <strong>code<\/strong>.<\/li>\n\n\n\n<li>If no mapping exists, the value is used as-is (as code).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Supported operators<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Operator<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><code>eq<\/code><\/td><td>Equals<\/td><\/tr><tr><td><code>neq<\/code><\/td><td>Not equal<\/td><\/tr><tr><td><code>gt<\/code><\/td><td>Greater than<\/td><\/tr><tr><td><code>gte<\/code><\/td><td>Greater than or equal<\/td><\/tr><tr><td><code>lt<\/code><\/td><td>Less than<\/td><\/tr><tr><td><code>lte<\/code><\/td><td>Less than or equal<\/td><\/tr><tr><td><code>contains<\/code><\/td><td>Contains (text)<\/td><\/tr><tr><td><code>doesnotcontain<\/code><\/td><td>Does not contain<\/td><\/tr><tr><td><code>startswith<\/code><\/td><td>Starts with<\/td><\/tr><tr><td><code>endswith<\/code><\/td><td>Ends with<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Example request<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>GET \/api\/dataExportFeed?feedToken=...&amp;filter=lastModified:gt:01.01.2022<\/code><\/pre>\n\n\n\n<p>On the server this is converted to standard Kendo filter parameters (field, operator, value, and logic).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">2. Advanced Filter Format (advancedFilter)<\/h2>\n\n\n\n<p>Some DataExport feeds use queries where filters must be applied at the data layer. In those cases use the <strong>advancedFilter<\/strong> format so the server can apply filters correctly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">When to use<\/h3>\n\n\n\n<ul>\n<li>When the feed runs a query where filters need to be applied in the backend.<\/li>\n\n\n\n<li>For date-range filters (startDate\/endDate) or single value filters (value) in that context.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Simple string format (query param <code>advancedFilter<\/code>)<\/h3>\n\n\n\n<p>You can pass a single query parameter <code>advancedFilter<\/code> instead of multiple <code>filter[filters][n][advancedFilter][...]<\/code> params. The server parses it into the same advancedFilter structure.<\/p>\n\n\n\n<p><strong>Format:<\/strong><\/p>\n\n\n\n<ul>\n<li>Single value: <code>field:value<\/code><\/li>\n\n\n\n<li>Date range: <code>field:startDate:endDate<\/code><\/li>\n\n\n\n<li>Multiple filters: comma-separated, e.g. <code>field1:value1,field2:value2<\/code> or <code>field1:start:end,field2:value<\/code><\/li>\n<\/ul>\n\n\n\n<p><strong>Examples:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>URL (relevant part)<\/th><th>Result<\/th><\/tr><\/thead><tbody><tr><td><code>advancedFilter=lastModified:2025-08-01<\/code><\/td><td>One filter: field=lastModified, value=2025-08-01<\/td><\/tr><tr><td><code>advancedFilter=lastModified:2025-01-01:2025-08-01<\/code><\/td><td>One filter: field=lastModified, startDate, endDate<\/td><\/tr><tr><td><code>advancedFilter=lastModified:2025-08-01,status:ACTIVE<\/code><\/td><td>Two filters (index 0 and 1)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><strong>Example request:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>GET \/api\/dataExportFeed?feedToken=...&amp;advancedFilter=lastModified:2025-08-01<\/code><\/pre>\n\n\n\n<p>This is equivalent to passing <code>filter[filters][0][advancedFilter][field]=lastModified&amp;filter[filters][0][advancedFilter][value]=2025-08-01<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Full syntax (explicit params)<\/h3>\n\n\n\n<ul>\n<li><strong>Field:<\/strong><br><code>filter[filters][&lt;index&gt;][advancedFilter][field]=&lt;columnTitle&gt;<\/code><\/li>\n\n\n\n<li><strong>Value (text or single date):<\/strong><br><code>filter[filters][&lt;index&gt;][advancedFilter][value]=&lt;value&gt;<\/code><\/li>\n\n\n\n<li><strong>Date range:<\/strong><br><code>filter[filters][&lt;index&gt;][advancedFilter][startDate]=&lt;date&gt;<\/code><br><code>filter[filters][&lt;index&gt;][advancedFilter][endDate]=&lt;date&gt;<\/code><\/li>\n<\/ul>\n\n\n\n<p><code>&lt;index&gt;<\/code> is a zero-based integer (0, 1, 2, \u2026). Use the same index for all parts of one filter.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Examples<\/h3>\n\n\n\n<p><strong>Single field, single value:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>filter&#91;filters]&#91;0]&#91;advancedFilter]&#91;field]=lastModified\nfilter&#91;filters]&#91;0]&#91;advancedFilter]&#91;value]=2025-08-01<\/code><\/pre>\n\n\n\n<p><strong>Full URL example:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>GET \/api\/dataExportFeed?feedToken=...&amp;filter&#91;filters]&#91;0]&#91;advancedFilter]&#91;field]=lastModified&amp;filter&#91;filters]&#91;0]&#91;advancedFilter]&#91;value]=2025-08-01<\/code><\/pre>\n\n\n\n<p><strong>Date range:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>filter&#91;filters]&#91;0]&#91;advancedFilter]&#91;field]=lastModified\nfilter&#91;filters]&#91;0]&#91;advancedFilter]&#91;startDate]=2025-01-01\nfilter&#91;filters]&#91;0]&#91;advancedFilter]&#91;endDate]=2025-08-01<\/code><\/pre>\n\n\n\n<p><strong>Second filter (different index):<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>filter&#91;filters]&#91;0]&#91;advancedFilter]&#91;field]=lastModified\nfilter&#91;filters]&#91;0]&#91;advancedFilter]&#91;value]=2025-08-01\nfilter&#91;filters]&#91;1]&#91;advancedFilter]&#91;field]=status\nfilter&#91;filters]&#91;1]&#91;advancedFilter]&#91;value]=ACTIVE<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Backend behaviour<\/h3>\n\n\n\n<ul>\n<li><strong><code>field<\/code>:<\/strong> Must match the column title from the feed\u2019s metadata (tableSettings \/ columnTitle). The server maps these to the underlying query.<\/li>\n\n\n\n<li><strong><code>value<\/code>:<\/strong> Used for text or single-date filters. Only columns marked as <strong>isAdvancedSearchable<\/strong> in the feed metadata are applied.<\/li>\n\n\n\n<li><strong><code>startDate<\/code> and <code>endDate<\/code>:<\/strong> For date\/datetime columns, used together to apply a date-range filter.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Parameter summary<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Parameter<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><code>filter[filters][n][advancedFilter][field]<\/code><\/td><td>Column to filter (metadata columnTitle).<\/td><\/tr><tr><td><code>filter[filters][n][advancedFilter][value]<\/code><\/td><td>Filter value (text or single date).<\/td><\/tr><tr><td><code>filter[filters][n][advancedFilter][startDate]<\/code><\/td><td>Start of date range.<\/td><\/tr><tr><td><code>filter[filters][n][advancedFilter][endDate]<\/code><\/td><td>End of date range.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">3. Which format when?<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Scenario<\/th><th>Recommended format<\/th><\/tr><\/thead><tbody><tr><td>Standard Kendo-style filtering (default pipeline)<\/td><td><strong>Simple:<\/strong> <code>filter=field:op:value<\/code><\/td><\/tr><tr><td>Feed where filters are applied in the backend query<\/td><td><strong>advancedFilter<\/strong> with <code>field<\/code>, <code>value<\/code>, and optionally <code>startDate<\/code>\/<code>endDate<\/code><\/td><\/tr><tr><td>Date range filter<\/td><td><strong>advancedFilter<\/strong> with <code>startDate<\/code> and <code>endDate<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n","protected":false},"author":35,"featured_media":0,"parent":0,"menu_order":0,"template":"","manualdocumentationcategory":[8770],"_links":{"self":[{"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/manual_documentation\/27139"}],"collection":[{"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/manual_documentation"}],"about":[{"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/types\/manual_documentation"}],"author":[{"embeddable":true,"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/users\/35"}],"version-history":[{"count":2,"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/manual_documentation\/27139\/revisions"}],"predecessor-version":[{"id":27144,"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/manual_documentation\/27139\/revisions\/27144"}],"wp:attachment":[{"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/media?parent=27139"}],"wp:term":[{"taxonomy":"manualdocumentationcategory","embeddable":true,"href":"https:\/\/docs.reybex.com\/en\/wp-json\/wp\/v2\/manualdocumentationcategory?post=27139"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}