We are observing an apparently inconsistent behaviour in licenses webhook events and data.
Context: we have created a license using one of our license templates. Validity = 365 days, 1 max activation, Expiration strategy DELAYED, Node Locked.
We do the following: (we keep detailed logs of the payloads etc. if you find them useful)
- Create the license => triggers
license.createdwebhook - Activate the license => triggers
license.updated+license.first-activatedwebhooks (in this order) - Extend the license to 365+ days =>
license.updated
We do not understand why:
- After (1: creation), the license webhook payload data has
{ ... "perpetual": "true" ... }. We would expect it to befalse. At this point,expiresAt=nullwhich is expected as perDELAYEDstrategy and not activated yet. Also,totalActivations=0,activatedAt=nullwhich is expected too. - After (2: activation),
license.updatedwebhook payload data changes nothing other than themetatada. Still,perpetual=true,expiresAt=null,totalActivations=0,activatedAt=null. - After (2: activation),
license.first-activatedwebhook payload data only changesactivatedAt=<timestamp>. Still,perpetual=true,expiresAt=nullandtotalActivations=0. This unexpected at this point because the license has indeed been activated. I would expectperpetual=false,expiresAt=<timestamp>andtotalActivations=1. - After (3: extension), it is only when these change as we expected from step (2):
perpetual=false,expiresAt=<timestap>,totalActivations=1. - We never get a
license.expiresAt.updatedwebhook as a consequence of any of these interactions. We have ensured we do subscribe to this webhook event. We would expect to receive it at some point.
Our typical use case only does (1) license creation + (2) license activation, not license extension. We are expecting perpetual, expiresAt and totalActivations to get meaningful values when (1) → (2).
Are we missing anything here? Could this be a problem with webhooks?
Thanks