POST
/
streaming
/
video_protection
/
v1
/
rulesets

Authorizations

Authorization
string
headerrequired

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
project_id
string
required

The ID of the project that the VideoProtectionRuleset belongs to.

name
string
required

Name of the Ruleset

geo_restrictions_disallow
object

Viewers are disallowed to consume the video from these countries (and allowed from all others)

geo_restrictions_allow
object

Viewers are allowed to consume the video from these countries (and disallowed from all others)

disallow_vpn_usage
boolean

Disallow viewers from using a VPN to consume the video

disallow_hotlinking
boolean

Disallow viewers from sharing a playlist URL with others (i.e. hotlink protection). This is done by binding the viewer's IP address to the playlist URL.

allowed_domains
string[]

A list of domains that are allowed to playback the video. An empty list implies all domains are valid. This uses the HTTP referrer, which can be spoofed and as such is not a strong protection mechanism.

Note: this uses the HTTP referrer. As native apps do not send any HTTP referrer, any client that does not send a referrer will be allowed.

require_authentication
boolean

Require viewers to be signed in. This requires the viewer to have a valid JWT, signed by the Motto identity service. The JWT should be passed either via the Authorization header or as a Cookie.

disabled
boolean

Disables the ruleset. This is useful for ensuring the ruleset no longer shows up as an option in the UI. It will continue to apply to any videos that already have this ruleseet applied (unlike a deleted ruleset).

require_entitlement
boolean

Instruct the Motto content-delivery API to do an entitlement lookup for the user ID that the viewer is providing in a JWT when trying to access the content. This works in tandem with the Entitlement and Offer types in Motto's monetization section.

Note: This requires require_authentication to be set to true.

Response

200 - application/json
video_protection_ruleset
object