PUT | /RestApi/sitefinity/related-data/relations |
---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Telerik.Sitefinity.Services.RelatedData.Messages;
using Telerik.Sitefinity.Web.UI.Fields.Enums;
namespace Telerik.Sitefinity.Services.RelatedData.Messages
{
[DataContract]
public partial class ContentLinkChange
{
[DataMember]
public virtual ContentLinkChangeState State { get; set; }
[DataMember]
public virtual Guid ChildItemId { get; set; }
[DataMember]
public virtual string ChildItemProviderName { get; set; }
[DataMember]
public virtual string ChildItemType { get; set; }
[DataMember]
public virtual string ChildItemAdditionalInfo { get; set; }
[DataMember]
public virtual float? Ordinal { get; set; }
[DataMember]
public virtual string ComponentPropertyName { get; set; }
}
public partial class RelationChangeMessage
{
public RelationChangeMessage()
{
RelationChanges = new ContentLinkChange[]{};
}
public virtual string ItemId { get; set; }
public virtual string ItemType { get; set; }
public virtual string ItemProvider { get; set; }
public virtual ContentLinkChange[] RelationChanges { get; set; }
}
}
namespace Telerik.Sitefinity.Web.UI.Fields.Enums
{
[DataContract]
public enum ContentLinkChangeState
{
Added,
Removed,
Updated,
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /RestApi/sitefinity/related-data/relations HTTP/1.1
Host: www.asg.com.au
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ItemId: String,
ItemType: String,
ItemProvider: String,
RelationChanges:
[
{
State: Added,
ChildItemProviderName: String,
ChildItemType: String,
ChildItemAdditionalInfo: String,
Ordinal: 0,
ComponentPropertyName: String,
IsChildDeleted: False
}
]
}