Skip to main content

Signature

Subscription resolution

When subscription_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 NozleAPIError and require an explicit ID.
Supply the subscription explicitly for customers with multiple subscriptions and latency-sensitive paths.

Idempotency

Use a deterministic transaction ID and stable event timestamp for each logical event. Reuse both on retries.

FastAPI worker pattern

For high-volume workloads, enqueue your business event and call track() from a durable worker. Use usage.track() instead when the operation must atomically enforce product credits.