Skip to content

Dynamic Monetization APIs (1.0)

APIs to perform Dynamic Monetization activity.

Download OpenAPI description
Languages
Servers
Dynamic Monetization API URL

https://{siteID}.flexnetoperations.{domainExtension}/dynamicmonetization/api/

Dynamic Monetization API URL

https://{siteID}.flexnetoperations.{domainExtension}/dynamicmonetization/floating/api/

Authorization

APIs to manage authorization keys.

Operations

Instances

APIs to manage Dynamic Monetization instances, which host the line items belonging to customers.

Operations

Line Items

APIs to manage line items mapped to an instance.

Operations

Rules of Access

APIs to manage rules of access for Dynamic Monetization instances. Rules of access are used to control the way the counts of an elastic line item are used in an access request.

Operations

Create a list of actions and allocations for a line item

Request

Creates an ordered list of actions to be taken when a condition is met.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

lineItemIdstringrequired

Line item ID. Note: This is also known as the activation ID.

Bodyapplication/jsonArray [
namestring

A human readable name to help a user identify the action. The same name may be re-used in other line items.

conditionIdstring(uuid)

The unique identifier of the condition that triggers this action.

Required, unless defining a default action. Only one default action may be defined per line item.

actionstringrequired

The action to take when the condition is met.

Enum"ALLOW""DENY"
allocationnumber(number)

The maximum number of tokens that may be consumed from the stated line item by requests satisfying the condition.

Required for ALLOW, but may be omitted at most once per line item to create a default ALLOW action. Not used for DENY.

Example: 1000
]
curl -i -X POST \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/line-items/{lineItemId}/actions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "name": "string",
      "conditionId": "1e06e0eb-07f6-4fcd-8750-870cbafd1693",
      "action": "ALLOW",
      "allocation": 1000
    }
  ]'

Responses

A list of actions that were created.

Bodyapplication/jsonArray [
idstring(uuid)read-only

A generated identifier to uniquely identify the action.

namestring

A human readable name to help a user identify the action. The same name may be re-used in other line items.

conditionIdstring(uuid)

The unique identifier of the condition that triggers this action.

Required, unless defining a default action. Only one default action may be defined per line item.

actionstringrequired

The action to take when the condition is met.

Enum"ALLOW""DENY"
allocationnumber(number)

The maximum number of tokens that may be consumed from the stated line item by requests satisfying the condition.

Required for ALLOW, but may be omitted at most once per line item to create a default ALLOW action. Not used for DENY.

Example: 1000
usednumber(double)read-only

The total count that has been consumed from the allocation by access requests.

This field is only present for actions which have an allocation.

]
Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "conditionId": "1e06e0eb-07f6-4fcd-8750-870cbafd1693", "action": "ALLOW", "allocation": 1000, "used": 0.1 } ]

Request

Deletes all actions on a line item.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

lineItemIdstringrequired

Line item ID. Note: This is also known as the activation ID.

curl -i -X DELETE \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/line-items/{lineItemId}/actions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Actions for the requested line item were successfully deleted.

Get actions and allocations for a line item

Request

Returns a list of actions to be taken when condition is met.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

lineItemIdstringrequired

Line item ID. Note: This is also known as the activation ID.

curl -i -X GET \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/line-items/{lineItemId}/actions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

A list of actions was returned successfully.

Bodyapplication/jsonArray [
idstring(uuid)read-only

A generated identifier to uniquely identify the action.

namestring

A human readable name to help a user identify the action. The same name may be re-used in other line items.

conditionIdstring(uuid)

The unique identifier of the condition that triggers this action.

Required, unless defining a default action. Only one default action may be defined per line item.

actionstringrequired

The action to take when the condition is met.

Enum"ALLOW""DENY"
allocationnumber(number)

The maximum number of tokens that may be consumed from the stated line item by requests satisfying the condition.

Required for ALLOW, but may be omitted at most once per line item to create a default ALLOW action. Not used for DENY.

Example: 1000
usednumber(double)read-only

The total count that has been consumed from the allocation by access requests.

This field is only present for actions which have an allocation.

]
Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "conditionId": "1e06e0eb-07f6-4fcd-8750-870cbafd1693", "action": "ALLOW", "allocation": 1000, "used": 0.1 } ]

Request

Modifies the list of actions for a line item. The existing actions can be re-ordered, modified or omitted, and new actions can be added to the list. If an action is omitted, it will be completely removed and the current counts for a related allocation will be lost; therefore, care should be taken when making any changes.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

lineItemIdstringrequired

Line item ID. Note: This is also known as the activation ID.

Bodyapplication/jsonArray [
idstring(uuid)

A generated identifier to uniquely identify the action.

namestring

A human readable name to help a user identify the action. The same name may be re-used in other line items.

conditionIdstring(uuid)

The unique identifier of the condition that triggers this action.

Required, unless defining a default action. Only one default action may be defined per line item.

actionstringrequired

The action to take when the condition is met.

Enum"ALLOW""DENY"
allocationnumber(number)

The maximum number of tokens that may be consumed from the stated line item by requests satisfying the condition.

Required for ALLOW, but may be omitted at most once per line item to create a default ALLOW action. Not used for DENY.

Example: 1000
]
curl -i -X PUT \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/line-items/{lineItemId}/actions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "id": null,
      "name": "string",
      "conditionId": "1e06e0eb-07f6-4fcd-8750-870cbafd1693",
      "action": "ALLOW",
      "allocation": 1000
    }
  ]'

Responses

The replacement list of actions that has been saved.

Bodyapplication/jsonArray [
idstring(uuid)read-only

A generated identifier to uniquely identify the action.

namestring

A human readable name to help a user identify the action. The same name may be re-used in other line items.

conditionIdstring(uuid)

The unique identifier of the condition that triggers this action.

Required, unless defining a default action. Only one default action may be defined per line item.

actionstringrequired

The action to take when the condition is met.

Enum"ALLOW""DENY"
allocationnumber(number)

The maximum number of tokens that may be consumed from the stated line item by requests satisfying the condition.

Required for ALLOW, but may be omitted at most once per line item to create a default ALLOW action. Not used for DENY.

Example: 1000
usednumber(double)read-only

The total count that has been consumed from the allocation by access requests.

This field is only present for actions which have an allocation.

]
Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "conditionId": "1e06e0eb-07f6-4fcd-8750-870cbafd1693", "action": "ALLOW", "allocation": 1000, "used": 0.1 } ]

Request

API to fetch conditions.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

curl -i -X GET \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/conditions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK. The request succeeded in its entirety.

Bodyapplication/jsonArray [
One of:
operatorstringrequired

The logical operator to apply.

Value"IN"
propertystringrequired

The dictionary key.

valuesArray of stringsrequired

The different values to match.

idstring(uuid)read-only

A generated identifier to uniquely identify the condition.

namestring

A human readable name to help a user identify the condition. Not required to be unique.

]
Response
application/json

A sample list of conditions.

[ { "id": "123e4567-e89b-12d3-a456-426614174004", "name": "compositeCondition", "operator": "AND", "conditions": [] }, { "id": "123e4567-e89b-12d3-a456-426614174000", "name": "simpleCondition", "operator": "IN", "property": "category", "values": [] } ]

Request

API to create conditions.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

Bodyapplication/jsonArray [
One of:
operatorstringrequired

The logical operator to apply.

Value"IN"
propertystringrequired

The dictionary key.

valuesArray of stringsrequired

The different values to match.

namestring

A human readable name to help a user identify the condition. Not required to be unique.

]
curl -i -X POST \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/conditions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "name": "compositeCondition",
      "operator": "AND",
      "conditions": [
        {
          "operator": "IN",
          "property": "status",
          "values": [
            "active",
            "pending"
          ]
        },
        {
          "operator": "NOT",
          "condition": {
            "operator": "IN",
            "property": "category",
            "values": [
              "restricted"
            ]
          }
        }
      ]
    },
    {
      "name": "simpleCondition",
      "operator": "IN",
      "property": "category",
      "values": [
        "gold",
        "silver"
      ]
    }
  ]'

Responses

OK. The request succeeded in its entirety. The response body contains a list of the conditions that were created, existing conditions are not returned.

Bodyapplication/jsonArray [
One of:
operatorstringrequired

The logical operator to apply.

Value"IN"
propertystringrequired

The dictionary key.

valuesArray of stringsrequired

The different values to match.

idstring(uuid)read-only

A generated identifier to uniquely identify the condition.

namestring

A human readable name to help a user identify the condition. Not required to be unique.

]
Response
application/json

A sample list of conditions.

[ { "id": "123e4567-e89b-12d3-a456-426614174004", "name": "compositeCondition", "operator": "AND", "conditions": [] }, { "id": "123e4567-e89b-12d3-a456-426614174000", "name": "simpleCondition", "operator": "IN", "property": "category", "values": [] } ]

Request

Update existing and add new conditions to an instance.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

Bodyapplication/jsonArray [
One of:
operatorstringrequired

The logical operator to apply.

Value"IN"
propertystringrequired

The dictionary key.

valuesArray of stringsrequired

The different values to match.

idstring(uuid)

The identifier of a condition to be modified. If an identifier is not provided, a new condition will be created with a generated identifier.

namestring

A human readable name to help a user identify the condition. Not required to be unique.

]
curl -i -X PATCH \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/conditions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "name": "compositeCondition",
      "operator": "AND",
      "conditions": [
        {
          "operator": "IN",
          "property": "status",
          "values": [
            "active",
            "pending"
          ]
        },
        {
          "operator": "NOT",
          "condition": {
            "operator": "IN",
            "property": "category",
            "values": [
              "restricted"
            ]
          }
        }
      ]
    },
    {
      "name": "simpleCondition",
      "operator": "IN",
      "property": "category",
      "values": [
        "gold",
        "silver"
      ]
    }
  ]'

Responses

OK. The request succeeded in its entirety. The response body contains a list of the conditions that were created or updated, but unchanged conditions are not returned.

Bodyapplication/jsonArray [
One of:
operatorstringrequired

The logical operator to apply.

Value"IN"
propertystringrequired

The dictionary key.

valuesArray of stringsrequired

The different values to match.

idstring(uuid)read-only

A generated identifier to uniquely identify the condition.

namestring

A human readable name to help a user identify the condition. Not required to be unique.

]
Response
application/json

A sample list of conditions.

[ { "id": "123e4567-e89b-12d3-a456-426614174004", "name": "compositeCondition", "operator": "AND", "conditions": [] }, { "id": "123e4567-e89b-12d3-a456-426614174000", "name": "simpleCondition", "operator": "IN", "property": "category", "values": [] } ]

Request

Delete all conditions configured on the instance.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

curl -i -X DELETE \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/conditions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Conditions for requested Dynamic Monetization instance were successfully deleted.

Request

API to delete a specific condition configured on the instance.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

conditionIdstring(uuid)required

The unique identifier of the condition. This is a UUID that is generated by Dynamic Monetization.

curl -i -X DELETE \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/conditions/{conditionId}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Specified condition was successfully deleted.

Get all actions for all Elastic Access line items of the instance

Request

API to fetch all actions for all Elastic Access line items of the instance.

Security
AdministrationAccess or ClientAccess
Path
instanceIdstring(uuid)required

The UUID of the Dynamic Monetization instance.

Query
nextinteger

The pagination cursor returned from the previous GET request. Use it to fetch the next set of line items, along with their associated actions. If there are no more line items, the returned cursor value is 0. If not provided in the request, the cursor defaults to 0.

curl -i -X GET \
  'https://{siteid}.flexnetoperations.{domainextension}/dynamicmonetization/api/v1.0/instances/{instanceId}/line-items/actions?next=0' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

A list of actions was returned successfully.

Bodyapplication/jsonArray [
lineItemsArray of objects(ActivationActions)

The list of instances.

nextinteger

If there are more actions to get, this value will be non-zero and can be used in a subsequent GET request to retrieve the next page of actions.

]
Response
application/json
[ { "lineItems": [], "next": 0 } ]

Rate Tables

APIs to manage rate tables. Rate tables are used to define the price of items (how many tokens are charged per item).

Operations

Sessions

APIs for elastic access within the context of a session.

Operations

Non-Session Access Request

APIs for elastic access without a session.

Operations

Configuration

APIs for managing configuration values that control how customers can access and consume line items.

Available values:

  • timezone.tolerant
    • Allows a line item to be used up to 12 hours before its start date (UTC) and up to 12 hours after its end date (UTC), therefore making it tolerant to all time zones.
    • Supported values: true (enabled) and false (disabled).
    • Default: false
Operations