Signature
Subscription resolution
Whensubscription_id is omitted, the SDK queries the Events API for active subscriptions:
- one active subscription is cached and used;
- no active subscription raises
NozleAPIError; and - multiple active subscriptions raise
NozleAPIErrorand require an explicit ID.
Idempotency
Use a deterministic transaction ID and stable event timestamp for each logical event. Reuse both on retries.FastAPI worker pattern
track() from a durable worker. Use usage.track() instead when the operation must atomically enforce product credits.