I have a Data Page API that works as both a GET and a PUT (AllowPUT = True
). One value was not saved to the database when sent as part of the request payload. This is a list of things to check when such an issue happens:
- check the spelling
- check that the field is really part of the API data structure, it can be set in the entity as
ExcludeFromAllFields = True
- check that the
XmlMappingType
of the entity field matches to what you receive in the payload - check if there is a transformation selected for the data page, it might change / rename the fields
- check row level security rules, there can be a rule on either the field or the entity that can deny modifications, check in the top level packages as the rules can be placed in different packages
- check state workflows, some change in the data can trigger a state workflow that might be responsible for the data loss
The last was my case - there was a state workflow that ran a sequential workflow with a transformation. As the field with the value loss was added in recent time, it was not added to the transformation with OutputMethod = FullMerge
and therefore the value was not saved.