I have found some inconsistencies in the Endpoint Provider using the Odata API endpoint type. All items below have been reproduced on the latest version of the endpoint provider in nuget (0.2.29).
1. Sometimes the integration activity runs with a valid request URL, but no data is committed to the database and no paging occurs. Here is a screen shot of a log from a customer import that is set to run a max page size of 250 records and run 50 pages per interval where there are over 250,000 records in BC:
I have tested the url requested in postman and attached the reponse that shows the URL is valid and the reponse ends with a nextlink which indicates more pages should have been requested by the provider. Also no new records were added to the dw database.
2. When using a data integration job that has the Endpoint Provider as the source and the User Provider for the destination, if a change is made to the source provider settings a User provider error is created until the destination provider setttings are opened and saved in the job.
Error: Object reference not set to an instance of an object. The failed input row is:.... System.NullReferenceException: Object reference not set to an instance of an object. at
Dynamicweb.DataIntegration.Providers.UserProvider.UserDestinationWriter.<>c__DisplayClass66_0.<Write>b__1(ColumnMapping cm) at System.Linq.Enumerable.WhereListIterator`1.MoveNext() at System.Linq.Enumerable.Count[TSource](IEnumerable`1 source) at
Dynamicweb.DataIntegration.Providers.UserProvider.UserDestinationWriter.Write(Dictionary`2 row, Mapping mapping, Boolean discardDuplicates) at Dynamicweb.DataIntegration.Providers.UserProvider.UserProvider.RunJob(Job job)
3. It is not 100% of the time, but often changes made in the source provider settings are not honored when the job is run. Most frequently I see this issue when changing the 'Mode' between 'Full Replication' and 'Delta Replication'. I have also had this occur when changing the 'Run request in intervals (paging)' setting or trying to add or a remove a filter.