Workflow operations
Overview
OData services are using the standard configuration for workflow.
PREREQUISITES: To make requests for workflow-related actions, you must have configured workflow in Sitefinity CMS.
For more information, see Define workflows.
Lock an item
It is important to lock an item before modifying it, because this way other users can see that this item is being edited by someone else and they will see a message that it is currently not available for modifications on their end.
To lock an item, execute a POST request to the following endpoint:
{baseurl}/api/default/{entity}({itemId})/Default.SaveTemp()
Where:
{entity}is the entity of the module that you are working with.{itemId}is the ID of the item.
Sample request
POST
http://mysite.com/api/default/newsitems(3b177186-8b09-497c-8def-58613183d670)/ Default.SaveTemp()
Request body
{
"model": {}
}
When you send an empty model, if the item is not already locked, it is locked.
Sample response
Status code: 204 No Content
No response body
Unlock an item
After you have finished editing an item, you must unlock it.
To do this, execute a POST request to the following endpoint
{baseurl}/api/default/{entity}({itemId})/operation
Where:
{entity}is the entity of the module that you are working with.{itemId}is the ID of the item.
Sample request
POST
http://mysite.com/api/default/newsitems(3b177186-8b09-497c-8def-58613183d670)/operation
Request body
{
"action": "Unlock"
}
Sample response
Status code: 204 No Content
No response body
Send an item for approval
To do this, execute a POST request to the following endpoint:
{baseurl}/api/default/{entity}({itemId})/operation
Where:
{entity}is the entity of the module that you are working with.{itemId}is the ID of the item.
Sample request
POST
http://mysite.com/api/default/newsitems(3b177186-8b09-497c-8def-58613183d670)/operation
Request body
{
"action": "SendForApproval"
}
Sample response
Status code: 200 OK
{
}
Send an item for publishing
To do this, execute a POST request to the following endpoint:
{baseurl}/api/default/{entity}({itemId})/operation
Where:
{entity}is the entity of the module that you are working with.{itemId}is the ID of the item.
Sample request
POST
http://mysite.com/api/default/newsitems(3b177186-8b09-497c-8def-58613183d670)/operation
Request body
{
"action": "SendForPublishing"
}
Sample response
Status code: 200 OK
{
}
Reject an item
To do this, execute a POST request to the following endpoint:
{baseurl}/api/default/{entity}({itemId})/operation
Where:
{entity}is the entity of the module that you are working with.{itemId}is the ID of the item.
Sample request
POST
http://mysite.com/api/default/newsitems(3b177186-8b09-497c-8def-58613183d670)/operation
Request body
{
"action": "Reject",
"actionParameters": {
"Note": "This item is rejected, because it contains inappropriate words."
}
}
Sample response
Status code: 200 OK
{
}