- Breaking change: Entitlements retrieval logic now correctly identifies the underlying cause for missing entitlements — whether due to no active subscription, a missing customer, or no assigned entitlements.
- Note: If using a Persistent Caching Service, it must be updated before upgrading the Sidecar to ensure data integrity.
Migration steps
- Upgrade the Persistent Caching Service image to version
2.40.1or later. - Upgrade the Sidecar SDK to version
4.0.0or later.
- Added:
grantPromotionalEntitlementsGroupor granting a promotional entitlements group - all entitlements that are not already granted to a customer, need to be included in the request. - Added:
revokePromotionalEntitlementsGroupfor revoking all of the entitlements of a group, unless they are a part of a different group. - Added:
unlinkPromotionalEntitlementsGroupfor removing the references of the group from promotional entitlements that are a part of it, while keep granting access to those entitlements.
- Added:
CancelSubscription.awaitSubscriptionCancellationfor controlling whether to wait for confirmation from billing solutions that are integrated with Stigg before marking subscription as canceled in Stigg
- Added:
getEntitlementmethod - a unified way to check any type of feature entitlement (boolean, numeric, or metered) that automatically returns the appropriate entitlement type based on the feature configuration
- Added:
AccessDeniedReason.Revokedfor determining when an entitlement has been explicitly revoked.
Breaking change: The TLS connection method has been deprecated in favor of non-TLS. Please ensure you are running a compatible Sidecar image version
2.494.0 or later. TLS self-signed certificates will expire on January 26, 2026, so upgrading the Sidecar image is strongly recommended.Migration steps
- Upgrade the Sidecar image to version 2.498.0 or later. The new non-TLS port is set using the
GRPC_PORTenvironment variable (default: 80). For backwards compatibility, legacy TLS is still supported and can be configured with thePORTenvironment variable (default: 8443). - Upgrade the Sidecar SDK to version 3.0.0 or later and send requests to the new non-TLS port (same as
GRPC_PORT). This applies to all SDK programming languages.
Backwards compatibility with older Sidecar image versions
For backwards compatibility, you can enable the legacy TLS mode in the SDKs by opt-in the legacy TLS flag.- Added: Support for local evaluation of static entitlements in the Java SDK.
Applications can now evaluate entitlements offline using a static config, without requiring real-time API calls to the Sidecar service.
This is especially useful for air-gapped, on-premise, or secure environments.
- Improved: The Sidecar no longer crashes on startup when encountering initialization issues such as an invalid API key or unreachable Stigg API. It now starts in fallback mode and serves entitlements from Redis or fallback values.
- Added:
/metricsendpoint exposing service-level and Sidecar-specific metrics in Prometheus format, including:sidecar_initialization_errors_totalsidecar_invalid_api_key_errors_totalsidecar_network_request_errors_totalsidecar_redis_client_errors_totalsidecar_cache_hits_totalsidecar_cache_misses_total
- Added: offline mode
- Added: Edge support for
getActiveSubscriptionsList
- Fixed: when access to entitlement was denied due to the reaching of a budget cap,
getMeteredEntitlementsreturnedAccessDeniedReason.UNSPECIFIEDinstead ofAccessDeniedReason.BudgetExceeded.
- Added: ability to more easily determine the usage period of metered entitlements using:
Entitlement.usagePeriodStartEntitlement.usagePeriodEnd
- Added: ability to set sidecar log level using env var (default:
INFO)
- Added: ability to configure the “health” and “ready” endpoints by passing
HEALTH_ENDPOINT_URLandREADY_ENDPOINT_URLenvironment variables
