We recently updated from v9.0.31.7 on-premises to v9.1.9.8 on-premises and it appears some things have changed.
First of all I noticed that when querying with "&$expand=collection_navigation" the results directly contain the collection elements, whereas previously, the result collection would be empty and the payload would contain a "collection_navigation@odata.nextLink" value with a url to call to get the results. The new results also contain this property and url but it seems like usually the array itself is also populated. For this I am wondering if this is a setting which can be enabled/disabled or if it is something we can rely on happening consistently. Our current system expects to have to use the "nextLink" url if it is present so I would like to know if we need to change this functionality to use the data included in the payload and ignore the "nextLink."
Secondly, I am seeing strange behavior with hierarchical entities where, when I "&$expand=parent,children" I get the correct parent in the results, but the "children" array is populated with a single entity and for some reason it is the same entity as "parent." In other words, the api is returning the parent as the sole child. In addition, when I run this query, there is no "nextLink" property for the "children" collection. If I query "&$expand=children" I get the correct elements in the "children" property and there is also a "nextLink" property. I'm thinking this is a bug.
I dont know if there is a way to revert back to v9.0.31.7.
I also have no way of knowing if this is an issue with just version v9.1.9.8 and not other 9.1 versions since we upgraded directly from v9.0.x