Create a release rule
/products/{product_id}/access-schedules/{access_schedule_id}/rulesCreates the release rule for a node of the product tree that does not yet have its own rule. The node is identified by level (product, section, or lesson) and target_id.
If the node already has its own rule, the request returns the already_exists error code; use the update operation to change it instead.
The hidden type is not accepted at the product level, and the percentage type is read-only and cannot be set.
Autonomous mode: the API credential secret, sent as a bearer token. Credential secrets are identified by a fixed prefix.
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/products/string/access-schedules/string/rules" \ -H "Content-Type: application/json" \ -d '{ "level": "product", "params": {}, "target_id": "string", "type": "free" }'{ "data": { "effective": { "inherited_from": "string", "params": [], "type": "free" }, "explicit": true, "id": "string", "level": "product", "object": "release_rule", "params": null, "target_id": "string", "type": "free" }}List release rules GET
Lists the release rule of each node in the product tree for the access schedule. Returns all nodes in a single response while preserving the standard collection response format.
Retrieve a release rule GET
Retrieves the release rule of a single node. Release rule IDs have the format `rul_<level>_<node>`. Nodes without their own rule also return a result, with `explicit` set to `false` and `effective` containing the inherited rule.