Paywall
Richie Paywall JavaScript API
Communication with the native client
JavaScript API
Paywall HTML files can communicate with the native apps using Paywall JavaScript API which is provided by the richiePaywall.js file. You must include this JS file as part of your Paywall HTML implementation.
In addition to the functions listed below, all functions of Richie JavaScript API are directly usable in Paywall HTML pages.
isIOS
window.isIOS()
Returns true
if current paywall is running inside an iOS app, false
if it's running on Android.
didSignIn
richie.paywall.didSignIn(email, userID, userToken)
This function must be called from the sign-in.html
page after user has successfully received the user token from publisher's authentication backend. Native apps will store the userToken
and use it to authenticate subsequent requests. userToken
will be refreshed using publisher's authentication backend by the native apps directly (without use of the paywall HTML flow) each time when the application is brought to the foreground.
Parameters
email
: The e-mail address which was used for the login. This value will be displayed to the user in settings view.userID
: Publisher-specific user ID. This value may be used for analytics purposes.userToken
: User token which is generated by the publisher's authentication backend. For more details about supported user token types, contact Richie directly.
setContextListener
richie.paywall.setContextListener( function (context) { … } )
Paywall provides a generic context listener API which is used to pass status information from native app to the paywall HTML files. The context object provides the following fields (availability of the fields depends on the context in which context object is received and how current app is configured):
context.paywall.free_articles_left
: How many unused metered accesses current user has leftcontext.iap_products.subscription_products
: Array of objects describing IAP products which may be purchasedcontext.user
: If user is logged in, contains a user object.