Skip to content

Entitlements

Introduction

An Entitlement integration is responsible for providing information about logged in end-users subscriptions and entitlements.

Accedo One will perform entitlement checks every time user attempts to playback content from the video catalog. Additionally, upon successful login, client applications will load end-users profile, including a list of subscriptions currently active for the given user. This information is used by client applications to augment the state of the UI and present appropriate actions to the user.

Entitlements may be granted as part of the purchase flow, or as part of a 3rd party business logic (gift cards, granted as part of another subscription - such as bundle with broadband purchase, etc). Accedo One is agnostic to how the entitlements were granted to the user, and only is concerned with what entitlements are present.

Playback

Standard playback flow is describes here. During this flow, entitlement check is performed and EntitlementService.GetEntitlementsForUser is called with full object metadata available to Accedo One.

User Profile

When user is logged in (and on certain events) client application is requesting user profile, subscriber status and more. When an entitlement system is configured in Accedo One, during this flow an EntitlementService.GetSubscriptionsForUser is called with end-user specific information.

Development with IDK

To start IDK in Entitlements / IAP mode, simply run idk up entitlement-purchase

$ idk up entitlement-purchase

grpc-mock Done!  
purchase-amazon Done!  
purchase-gateway Done!  
purchase-apple Done!  
router Done!  
entitlement-purchase-api Done!  
ui Done!  
Creating network "default-entiapidk" with the default driver
Creating entitlement-purchase_default_entitlement-purchase-api_1 ... 
Creating entitlement-purchase_default_purchase-amazon_1          ... 
Creating entitlement-purchase_default_grpc-mock_1                ... 
Creating entitlement-purchase_default_purchase-apple_1           ... 
Creating entitlement-purchase_default_ui_1                       ... 
Creating entitlement-purchase_default_purchase-gateway_1         ... 
Creating entitlement-purchase_default_router_1                   ... 
Creating entitlement-purchase_default_ui_1                       ... done
Creating entitlement-purchase_default_router_1                   ... done
Creating entitlement-purchase_default_grpc-mock_1                ... done
Creating entitlement-purchase_default_entitlement-purchase-api_1 ... done
Creating entitlement-purchase_default_purchase-apple_1           ... done
Creating entitlement-purchase_default_purchase-amazon_1          ... done
Creating entitlement-purchase_default_purchase-gateway_1         ... done
### IDK environment URLs ###

    - IDK - Admin UI: http://localhost:49154/

APIs

Following APIs must be fulfilled by the integration:

  • EntitlementService - as defined in entitlement/entitlements.proto