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; a section is identified by its module ID (mod_).
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
Public ID of the product, prefixed with prd_.
Public ID of the access schedule, prefixed with acs_.
Header Parameters
Client-generated key that makes the request safe to retry. Must be 1 to 128 characters from [A-Za-z0-9._:-]. Optional on this operation; when sent, a malformed key returns idempotency_key_invalid, and repeating the request with the same key and the same body returns the stored result with Idempotent-Replayed: true.
Optional client-generated identifier of the request, up to 64 characters from [A-Za-z0-9._-]. Echoed back in the response and recorded in the request log; it never replaces the server-generated X-Request-Id.
length <= 64Request 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
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": {}, "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.