Hello! I want to parse json, which you send in notifications v2, but have some questions about required and optional fields (actually I may do all the fields, which are non obvious for me optional, but that's not suitable).
It would be really amazing if you will update your docs with this info! And it would be cool if you'll add some examples of the whole notification structure (it would be more convinient) with different types (and refer to example for concrete field like here is "revocationDate", it appears in case of "REVOKE" event and may be found here: <example reference> - it would be perfect!)
Main questions are:
- does
signedRenewalInfoalways appear here or it doesn't if it's consumable notification? - does
bundleIdeither always appear or it may not if it is deleted somewhere somehow? - do i understand right that "empty subtype" doesn't mean empty string but means absence of field in json?
- does
autoRenewStatusalways appear here or it may be absent? - do
purchaseDateandoriginalPurchaseDatefrom here always appear or there are some cases (revocation maybe) when they may be missed? - does
transactionIdfield always appear or there are some exceptions (revocation?)? - does
inAppOwnershipTypefrom here always appear? - is
quantity(from the same struct) required field? - is
webOrderLineItemId(from the same struct) a required field?
Thank you for the feedback, we are continually reviewing our features and opportunities for improvements. Answers to your bullets below:
- correct, RenewalInfo is only provided for transactions of an Auto-renewing Subscription.
- would expected bundleID to always appear
- correct, subtype will not be null but rather absence of the json field
- autoRenewStatus should always appear for auto-renewable subscription transactions
- purchaseDate, originalPurchaseDate, transactionID, inAppOwnershipType always appear
- quantity only applies to consumables in-app purchases
If you have further feedback, please continue submitting them to http://feedbackassistant.apple.com or here on the forums.