Platform Subscription API

<back to all web services

SaveCustomContentFWECM

Saves Framework ECM data into EROS for linked objects.

Requires Authentication
The following routes are available for this service:
All Verbs/api/rmsdataexchange/bulk/project
All Verbs/api/rmsdataexchange/bulk/contact
All Verbs/api/rmsdataexchange/bulk/lead
All Verbs/api/rmsdataexchange/bulk/opportunity
All Verbs/api/rmsdataexchange/bulk/prospect
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class SubscriptionCustomContentModel implements IConvertible
{
    /**
    * Guid representing the external systems datasource information.
    */
    // @ApiMember(DataType="Guid", Description="Guid representing the external systems datasource information.", IsRequired=true, Name="SuiteDataSourceInstanceId")
    String? SuiteDataSourceInstanceId;

    /**
    * 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")
    String? RmsTableCtxId;

    /**
    * 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")
    String? AlternateKey;

    /**
    * 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")
    String? ObjectId;

    bool? IgnoreValidation;
    /**
    * 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")
    int? RmsFieldCtxId;

    /**
    * Value to be saved for the object.
    */
    // @ApiMember(DataType="string", Description="Value to be saved for the object.", Name="Value")
    String? Value;

    String? LicenseeId;
    String? SessionId;

    SubscriptionCustomContentModel({this.SuiteDataSourceInstanceId,this.RmsTableCtxId,this.AlternateKey,this.ObjectId,this.IgnoreValidation,this.RmsFieldCtxId,this.Value,this.LicenseeId,this.SessionId});
    SubscriptionCustomContentModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SuiteDataSourceInstanceId = json['SuiteDataSourceInstanceId'];
        RmsTableCtxId = json['RmsTableCtxId'];
        AlternateKey = json['AlternateKey'];
        ObjectId = json['ObjectId'];
        IgnoreValidation = json['IgnoreValidation'];
        RmsFieldCtxId = json['RmsFieldCtxId'];
        Value = json['Value'];
        LicenseeId = json['LicenseeId'];
        SessionId = json['SessionId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SuiteDataSourceInstanceId': SuiteDataSourceInstanceId,
        'RmsTableCtxId': RmsTableCtxId,
        'AlternateKey': AlternateKey,
        'ObjectId': ObjectId,
        'IgnoreValidation': IgnoreValidation,
        'RmsFieldCtxId': RmsFieldCtxId,
        'Value': Value,
        'LicenseeId': LicenseeId,
        'SessionId': SessionId
    };

    getTypeName() => "SubscriptionCustomContentModel";
    TypeContext? context = _ctx;
}

/**
* Saves Framework ECM data into EROS for linked objects.
*/
// @Api(Description="Saves Framework ECM data into EROS for linked objects.")
class SaveCustomContentFWECM implements IConvertible
{
    /**
    * To pass bulk upload of data to save for objects.
    */
    // @ApiMember(DataType="List<SubscriptionCustomContentModel>", Description="To pass bulk upload of data to save for objects.", IsRequired=true, Name="CustomContents")
    List<SubscriptionCustomContentModel>? CustomContents = [];

    SaveCustomContentFWECM({this.CustomContents});
    SaveCustomContentFWECM.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CustomContents = JsonConverters.fromJson(json['CustomContents'],'List<SubscriptionCustomContentModel>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CustomContents': JsonConverters.toJson(CustomContents,'List<SubscriptionCustomContentModel>',context!)
    };

    getTypeName() => "SaveCustomContentFWECM";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'production_eros_platform_apisubscription.azurewebsites.net', types: <String, TypeInfo> {
    'SubscriptionCustomContentModel': TypeInfo(TypeOf.Class, create:() => SubscriptionCustomContentModel()),
    'SaveCustomContentFWECM': TypeInfo(TypeOf.Class, create:() => SaveCustomContentFWECM()),
    'List<SubscriptionCustomContentModel>': TypeInfo(TypeOf.Class, create:() => <SubscriptionCustomContentModel>[]),
});

Dart SaveCustomContentFWECM DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/rmsdataexchange/bulk/project HTTP/1.1 
Host: production-eros-platform-apisubscription.azurewebsites.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SaveCustomContentFWECM xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription">
  <CustomContents xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
    <d2p1:SubscriptionCustomContentModel>
      <d2p1:_x003C_AlternateKey_x003E_k__BackingField>String</d2p1:_x003C_AlternateKey_x003E_k__BackingField>
      <d2p1:_x003C_LicenseeId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_LicenseeId_x003E_k__BackingField>
      <d2p1:_x003C_ObjectId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ObjectId_x003E_k__BackingField>
      <d2p1:_x003C_RmsFieldCtxId_x003E_k__BackingField>0</d2p1:_x003C_RmsFieldCtxId_x003E_k__BackingField>
      <d2p1:_x003C_RmsTableCtxId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_RmsTableCtxId_x003E_k__BackingField>
      <d2p1:_x003C_SessionId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_SessionId_x003E_k__BackingField>
      <d2p1:_x003C_SuiteDataSourceInstanceId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_SuiteDataSourceInstanceId_x003E_k__BackingField>
      <d2p1:_x003C_Value_x003E_k__BackingField>String</d2p1:_x003C_Value_x003E_k__BackingField>
    </d2p1:SubscriptionCustomContentModel>
  </CustomContents>
</SaveCustomContentFWECM>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ResponseStatus xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <ErrorCode>String</ErrorCode>
  <Message>String</Message>
  <StackTrace>String</StackTrace>
  <Errors>
    <ResponseError>
      <ErrorCode>String</ErrorCode>
      <FieldName>String</FieldName>
      <Message>String</Message>
      <Meta xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringstring>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>String</d4p1:Value>
        </d4p1:KeyValueOfstringstring>
      </Meta>
    </ResponseError>
  </Errors>
  <Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </Meta>
</ResponseStatus>