OData support
Connect for Analytics supports specific OData types and a subset of the OData protocol.
OData Types
Connect for Analytics supports both XML and JSON formats and uses the following OData types:
* 
When using tools such as PowerBI, we recommend to use JSON format (default for PowerBI).
Edm.Int32
Edm.String
Edm.Decimal
Edm.Boolean
Edm.DateTimeOffset
Edm.Date
Edm.TimeOfDay
Edm.GeographyPoint (only supported for JSON format.)
OData Protocol
In addition, Connect for Analytics supports a subset of the OData protocol:
Only reading data is possible, Not creating or updating.
$filter queries of the form
/BaseOrder?$filter=PropertyRef eq 4
Filtering on navigation properties is Not supported. For example a query of the form will throw an error:
/BaseOrder?$filter=PropertyRef_Property/Name eq 'Columbus Square'
When using $select queries such as:
/BaseOrder?$select=OrderNumber,OrderGroupRef,PropertyRef
Or
/BaseOrder?$select=*
The second query will select all fields of BaseOrder. If no $select option is specified, all fields will be returned.
$expand queries with or without $select. Nested expands are supported, but performance might suffer with increasing number of nested expands. For example a query of the form:
/BaseOrder?$expand=PropertyRef_Property($select=Name)
is supported, as well as:
/BaseOrder?$expand=PropertyRef_Property($select=Name;$expand=ParentRef_Property($select=Name))
* 
Within $expand, we support the system options $select and $expand.
$count which can also be used in combination with $filter. For example, a query of the form
/BaseOrder?$filter=PropertyRef eq 4&$count=true
will return the number of orders where the PropertyRef field has the value 4.
$orderby- by default, results are sorted by Syscode (primary key field) ascendingly. The sorting can be changed by specifying a field name in the $orderby option. When no asc or desc option is specified, ordering is done ascendingly.
/BaseOrder?$orderby=OrderNumber desc
$skip,$skiptoken and $top. For example, queries of the form:
/BaseOrder?$top=1000
/BaseOrder?$skiptoken=1*2000
/BaseOrder?$skip=1000
are all supported. Note that every OData response will contain at most 2000 entries (prior to L54, this was 1000), and, if necessary, a link to the next page of results which will contain a $skiptoken option.
Supported String and Date filter functions are as follows:
String filter functions
DateTimeOffset / Date / TimeOfDay filter functions
contains
year
endswith
month
startswith
hour
length
second
concat
More Information