If the checkbox was (un)checked directly clicking by a user the row should be serialized as a changed.
If the checkbox state was changed by API it won’t be marked as changed. You need to mark it manually:
myGrid.cellById(row_id,col_ind).cell.wasChanged=true
Unfortunately the serialization of the changed child rows in a treegrid is not available.
If the feature is a mandatory for you please, open ticket in the support.dhtmlx.com so the custom fix could be created for your needs.