Delete a product
/products/{product_id}Moves the product to the trash, together with its modules, its lessons, and its copies in replicated accounts. The product is no longer available to users in the student area until it is restored with the update operation by setting deleted to false. Users' access and reports related to the product are preserved.
Restoring the product does not restore its copies in replicated accounts.
Replicated products are read-only and cannot be deleted; these requests return the replica_readonly error code.
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_.
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 <= 64Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X DELETE "https://example.com/products/string"Update a product PATCH
Updates a product. Only the fields included in the request are changed. Setting `deleted` to `false` restores the product from the trash. Changing `status` also requires the `products.publish` permission. Changing `showcase_id` or `position` also requires the `showcases.update` permission on the target showcase. `position` is 1-based within the showcase, in the destination showcase when `showcase_id` changes; a value greater than the number of products places the product at the end. A product moved to another showcase without `position` is placed at the end. Replicated products accept only `status`; any other field returns the `replica_readonly` error code. Send the current `ETag` value in the `If-Match` header to avoid overwriting a newer version.
List access schedules GET
Lists the access schedules of a product. Results are paginated with a cursor.