Hello,
Please find my responses below:
1. The FIELDS_UNCHANGED only refers to the field of the entity itself, and not its children. That said, if you get FIELDS_UNCHANGED status for the campaign, that campaign is not changed but there may still be changes to its children like AdGroup, keyword. For more information, please refer to
this document.
2. The last change timestamp is not the time when you changed the entity (Campaign, AdGroup, Keyword), but the
timestamp for the last changed processed for this customer. The last change timestamp indicates what time you should specify as the start time in your next request. This is a safety feature in case changes are made during your request, so that you can be sure that you never miss a change on consecutive calls to the service. This is true even if there were no changes. Even if you ran the customerSyncService against an inactive account, the lastChange will return value something like below:
<ns2:lastChangeTimestamp>20190201 084914 PST8PDT</ns2:lastChangeTimestamp>
Let me know if you have any further questions.
Thanks,
Milind, AdWords API Team