/* Options:
Date: 2025-10-31 06:00:45
Version: 8.52
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://production-eros-platform-apisubscription.azurewebsites.net/api
//GlobalNamespace: 
//MakePartial: True
//MakeVirtual: True
//MakeInternal: False
//MakeDataContractsExtensible: False
//AddNullableAnnotations: False
//AddReturnMarker: True
//AddDescriptionAsComments: True
//AddDataContractAttributes: False
//AddIndexesToDataMembers: False
//AddGeneratedCodeAttributes: False
//AddResponseStatus: False
//AddImplicitVersion: 
//InitializeCollections: False
//ExportValueTypes: False
IncludeTypes: SaveCustomContentFWECM.*
//ExcludeTypes: 
//AddNamespaces: 
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Eros.Subtle.Canvara.WebAPIModel.ServiceModel;
using Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription;
namespace Eros.Subtle.Canvara.WebAPIModel.ServiceModel
{
    public partial class SubscriptionCustomContentModel
    {
        ///
        ///Guid representing the external systems datasource information.
        ///
        [ApiMember(DataType="Guid", Description="Guid representing the external systems datasource information.", IsRequired=true, Name="SuiteDataSourceInstanceId")]
        public virtual Guid SuiteDataSourceInstanceId { get; set; }
        ///
        ///Eros RmsTableCtxId of the object we are saving custom content to.
        ///
        [ApiMember(DataType="Guid", Description="Eros RmsTableCtxId of the object we are saving custom content to.", IsRequired=true, Name="RmsTableCtxId")]
        public virtual Guid RmsTableCtxId { get; set; }
        ///
        ///The unique key that represents the object on the external system.
        ///
        [ApiMember(DataType="string", Description="The unique key that represents the object on the external system.", Name="AlternateKey")]
        public virtual string AlternateKey { get; set; }
        ///
        ///Guid of the object within Eros.  If ObjectId is known, the external system may pass this instead of the alternate key.
        ///
        [ApiMember(DataType="Guid", Description="Guid of the object within Eros.  If ObjectId is known, the external system may pass this instead of the alternate key.", Name="ObjectId")]
        public virtual Guid ObjectId { get; set; }
        public virtual bool IgnoreValidation { get; set; }
        ///
        ///RmsFieldCtxId of the external ECM field that is used to link with the Custom Content Field in Eros.
        ///
        [ApiMember(DataType="int", Description="RmsFieldCtxId of the external ECM field that is used to link with the Custom Content Field in Eros.", IsRequired=true, Name="RmsFieldCtxId")]
        public virtual int RmsFieldCtxId { get; set; }
        ///
        ///Value to be saved for the object.
        ///
        [ApiMember(DataType="string", Description="Value to be saved for the object.", Name="Value")]
        public virtual string Value { get; set; }
        public virtual Guid LicenseeId { get; set; }
        public virtual Guid SessionId { get; set; }
    }
}
namespace Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription
{
    ///
    ///Saves Framework ECM data into EROS for linked objects.
    ///
    [Route("/rmsdataexchange/bulk/project")]
    [Route("/rmsdataexchange/bulk/contact")]
    [Route("/rmsdataexchange/bulk/lead")]
    [Route("/rmsdataexchange/bulk/opportunity")]
    [Route("/rmsdataexchange/bulk/prospect")]
    [Api(Description="Saves Framework ECM data into EROS for linked objects.")]
    public partial class SaveCustomContentFWECM
        : IReturn
    {
        ///
        ///To pass bulk upload of data to save for objects.
        ///
        [ApiMember(DataType="List", Description="To pass bulk upload of data to save for objects.", IsRequired=true, Name="CustomContents")]
        public virtual List CustomContents { get; set; } = [];
    }
}