LINQ syntax differences: Devo APIs vs search window
Due to architectural differences, the LINQ syntax presents some particularities in the Devo APIs and the search window of the Devo app.
Therefore, keep in mind that copying a LINQ query from the search window and pasting it into an API request, or vice versa, might not work. Before examining the differences explained below, you can visit Build a query using LINQÂ to know the standard procedures when working with LINQ.
Alerts API
Note that due to technical reasons, the Alerts API is the only API that uses the LINQ syntax used in the search window of the Devo app. This is indicated in the different sections below.
Aggregation operations
Maximum (max) operations
When you use this operation in the Data Search to create a new field, you can add as many arguments as needed, however, the number of arguments is limited to two when used in APIs.
As a workaround, you can perform subsequent maximum operations until you have obtained the maximum of all the arguments you need.
Search window + Alerts API | Other Devo APIs |
---|---|
Syntax: Create field: Â Query example: from demo.ecommerce.data
select max(bytesTransferred, timeTaken, statusCode) as `maxField` | Syntax: Create field: Query example: from demo.ecommerce.data
select max(bytesTransferred, timeTaken) as maxFieldA, max(maxFieldA, statusCode) as maxFieldTotal |
Related articles:Â Maximum (max)
Minimum (min) operations
When you use this operation in the Data Search to create a new field, you can add as many arguments as needed, however, the number of arguments is limited to two when used in APIs.
As a workaround, you can perform subsequent minimum operations until you have obtained the minimum of all the arguments you need.
Search window + Alerts API | Other Devo APIs |
---|---|
Syntax: Create field: Â from demo.ecommerce.data
select min(bytesTransferred, timeTaken, statusCode) as `minField` | Syntax: Create field: Query example: |
Related articles:Â Minimum (min)
Arithmetic operations
Addition, sum, plus / Concatenation (add, +) operations
When you use this operation in the Data Search, you can add as many arguments as needed (where applicable), however, the number of arguments is limited to two when used in APIs.
As a workaround, you can perform subsequent adding operations until you have added all the arguments you need.
Search window + Alerts API | Other Devo APIs |
---|---|
Syntax: Create field: Â | Syntax: Create field: Query example: |
Related articles:Â Addition, sum, plus / Concatenation (add, +)
Multiplication, product (mul, *) operations
When you use this operation in the Data Search, you can add as many arguments as needed, however, the number of arguments is limited to two when used in APIs.
As a workaround, you can perform subsequent multiplication operations until you have multiplied all the arguments you need.
Search window + Alerts API | Other Devo APIs |
---|---|
Syntax: Create field: Â | Syntax: Create field: Query example: |
Related articles:Â Multiplication, product (mul, *)
Array operation
When you have fields that contain sets of values as opposed to single values, this operation transforms its data type into an array to be later used to invoke one of the values inside the set. This operation can be used both to create columns and as a filter. When used to create a column, the value invoked will be inserted in the new column while as a filter it will be used as filtering criteria.
This operation is not supported in the search window so you will not be able to bring queries from one area to the other. To use this operation, you need to use the Query API.
Search window + Alerts API | Other Devo APIs |
---|---|
| Syntax: Create column: Filter: Query example: |
Related articles:Â Query API
Collect distinct operation
This operation will return the set of distinct values for the specified field when grouping events. This operation is not supported in the search window so you need to be careful when using queries from one area to the other. If you want to use it, you can do so with the Query API.
Search window + Alerts API | Other Devo APIs |
---|---|
| Syntax:
Query example: |
Related articles:Â Query API
Lookup operations
Regular operations
Queries that use lookup operations present some particularities that make them incompatible when used from the search window to APIs or vice versa. The use of symbols is different and the domain name is required in one of them.
Search window + Alerts API | Other Devo APIs |
---|---|
Syntax:
| Syntax:
Query example: |
Related article: Data enrichment
JSON operations
Queries that use lookup operations with JSON present some particularities that make them incompatible when used from the search window to APIs or vice versa. The use of symbols is different and a specific json command is required in one of them.
Search window + Alerts API | Other Devo APIs |
---|---|
Syntax:
Query example: | Syntax:
Query example: |
Related article: Data enrichment
Mlevalmodel operation
Mlevalmodel operation is not supported in search window. Use this operation in APIs when you want to work with models you uploaded in Model Management.
Search window | Devo APIs |
---|---|
| Query examples: Example: |
Refer article: Model Management
Subqueries
Subqueries are not supported in the search window yet so you need to be careful when using queries from one area to the other because you will not be able to reproduce subqueries. If you want to use subqueries, your only option so far is to use the Devo APIs.
Search window | Devo APIs |
---|---|
| Syntax: Create column: Filter: Query examples: |
Related articles: Subqueries, Query API