Hi,
Regarding your first question, you are correct -- if the date range includes the date on which a campaign was created,
CustomerSyncService will return that campaign with
campaignChangeStatus NEW. If you want to detect changes made
after the campaign was created, you will need to send a request with a
DateTimeRange.min set to after the campaign's creation date/time.
On your second question, all ad extensions in the AdWords API are managed through feed services, so changes to those objects will appear in the
FeedChangeData objects returned by the sync service. You may want to check out our
Feed Services guide for more details.
In addition,
this post from my colleague describes the common use case for
CustomerSyncService, which may be helpful for you.
Cheers,
Josh, AdWords API Team