Skip to content

Sets the anonymous try policy on an offer.

POST
/api/v1/provision/admin/entitlements/{entitlementId}/policies/anonymous-try
curl --request POST \
--url https://example.com/api/v1/provision/admin/entitlements/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/policies/anonymous-try \
--header 'Content-Type: application/json' \
--data '{ "lifetime": "example", "purgeAfter": "example", "tryCode": "example", "tryPlanName": "example", "issuanceBudget": { "window": "example", "perWindow": 1, "perIpHashPerWindow": 1, "maxLiveClones": 1 } }'
entitlementId
required
string format: uuid

Target offer.

Lifetime, purge grace, try code, plan and issuance budgets.

The terms an offer issues anonymous try licenses under: one license per device, on a fixed clock, deleted once it is spent and nobody signed up.

object
lifetime

How long a try license lasts, measured from the moment it is issued. Never extended by use: a window that moved on every visit would let one visit a day keep a license alive forever. Capped at 7 days — anything longer is an account-based trial.

string
/^-?(\d+\.)?\d{2}:\d{2}:\d{2}(\.\d{1,7})?$/
purgeAfter

How long an expired try license is kept before it is deleted, together with the device identifier it holds. One whose device signed up is deleted at the next sweep instead.

string
/^-?(\d+\.)?\d{2}:\d{2}:\d{2}(\.\d{1,7})?$/
tryCode

The public code an application presents to start a try. Separate from the offer’s own license key, so it can be rotated without disturbing anything else.

string
tryPlanName

The plan try licenses are issued on. Leave empty to use the offer’s own plan.

null | string
issuanceBudget

What this offer will hand out before it stops.

object
window

The period the two counts below are measured over.

string
/^-?(\d+\.)?\d{2}:\d{2}:\d{2}(\.\d{1,7})?$/
perWindow

Try licenses this offer may issue within one window.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
perIpHashPerWindow

Try licenses one caller address may be issued within one window.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
maxLiveClones

Unexpired try licenses this offer may hold at once.

integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
Examplegenerated
{
"lifetime": "example",
"purgeAfter": "example",
"tryCode": "example",
"tryPlanName": "example",
"issuanceBudget": {
"window": "example",
"perWindow": 1,
"perIpHashPerWindow": 1,
"maxLiveClones": 1
}
}

The policy was stored.

The entitlement is not an offer, or the policy is not valid.

object
type
null | string
title
null | string
status
null | integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
detail
null | string
instance
null | string

No such entitlement.

object
type
null | string
title
null | string
status
null | integer | string format: int32
/^-?(?:0|[1-9]\d*)$/
detail
null | string
instance
null | string