SharePoint Asked by Maurizio on January 21, 2021
does SharePoint Online have a rest api to declare an item as a record?
I will use it in MS Flow
Thanks
Maurizio
There is not a REST API to achieve it, as a workaround, we can create a Azure Function with CSOM(Microsoft.SharePoint.Client.RecordsRepository.Records namespace can help to declare/undeclare item as record) to achieve it.
Refer to: How to call SharePoint from Microsoft Flow with the help of an Azure Function
Or we can create a separate library with Automatic Declaration (under Record declaration settings) and copying there the documents, so they are automatically set as record.
Here is a discussion for your reference: SharePoint Action to 'Declare as Record'
Correct answer by LZ_MSFT on January 21, 2021
I know this is old but with SharePoint 2010 workflows going away, I thought someone else may need this. This is the same call that CSOM would make.
When a HTTP Request is received.
Schema:
{
"type": "object",
"properties": {
"web": {
"type": "string"
},
"list": {
"type": "string"
},
"item": {
"type": "integer"
}
}
}
Then Send an HTTP request to SharePoint.
Site Address: @{triggerBody()?['web']}
Method: POST
Uri: _api/contextinfo
Headers:
Accept: application/json; odata=nometadata
Then Send an HTTP request to SharePoint.
Site Address: @{triggerBody()?['web']}
Method: POST
Uri: _vti_bin/client.svc/ProcessQuery
Headers:
Content-Type: application/xml
X-RequestDigest: @{body('Send_an_HTTP_request_to_SharePoint')?['FormDigestValue']}
Body:
<Request AddExpandoFieldTypeSuffix="true" SchemaVersion="15.0.0.0" LibraryVersion="16.0.0.0" ApplicationName=".NET Library" xmlns="http://schemas.microsoft.com/sharepoint/clientquery/2009">
<Actions>
<ObjectPath Id="2" ObjectPathId="1" />
<ObjectPath Id="4" ObjectPathId="3" />
<ObjectPath Id="6" ObjectPathId="5" />
<ObjectPath Id="8" ObjectPathId="7" />
<ObjectIdentityQuery Id="9" ObjectPathId="7" />
<ObjectPath Id="11" ObjectPathId="10" />
<StaticMethod TypeId="{ea8e1356-5910-4e69-bc05-d0c30ed657fc}" Name="DeclareItemAsRecord" Id="12">
<Parameters>
<Parameter ObjectPathId="10" />
</Parameters>
</StaticMethod>
</Actions>
<ObjectPaths>
<StaticProperty Id="1" TypeId="{3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a}" Name="Current" />
<Property Id="3" ParentId="1" Name="Web" />
<Property Id="5" ParentId="3" Name="Lists" />
<Method Id="7" ParentId="5" Name="GetByTitle">
<Parameters>
<Parameter Type="String">@{triggerBody()?['list']}</Parameter>
</Parameters>
</Method>
<Method Id="10" ParentId="7" Name="GetItemById">
<Parameters>
<Parameter Type="Int32">@{triggerBody()?['item']}</Parameter>
</Parameters>
</Method>
</ObjectPaths>
</Request>
Answered by benxford on January 21, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP