Platform Subscription API

<back to all web services

SaveContactRole

Requires Authentication
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class SaveContactRole extends ValidationErrorList implements ISubscription
    {
        /**
        * Guid representing the external systems data source information.
        */
        @ApiMember(DataType="Guid", Description="Guid representing the external systems data source information.", IsRequired=true, Name="SuiteDataSourceInstanceId", ParameterType="query")
        public UUID SuiteDataSourceInstanceId = null;

        /**
        * The unique key that represents the contact role on the external system.
        */
        @ApiMember(DataType="string", Description="The unique key that represents the contact role on the external system.", IsRequired=true, Name="AlternateKey", ParameterType="query")
        public String AlternateKey = null;

        /**
        * Guid of the contact role 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 contact role object within Eros.  If ObjectId is known, the external system may pass this instead of the alternate key.", Name="ObjectId", ParameterType="query")
        public UUID ObjectId = null;

        /**
        * Object containing all details of the contact role to be inserted or updated.
        */
        @ApiMember(DataType="SubscriptionContactRoleModel", Description="Object containing all details of the contact role to be inserted or updated.", IsRequired=true, Name="ContactRole", ParameterType="query")
        public SubscriptionContactRoleModel ContactRole = null;

        public Boolean IgnoreValidation = null;
        
        public UUID getSuiteDataSourceInstanceId() { return SuiteDataSourceInstanceId; }
        public SaveContactRole setSuiteDataSourceInstanceId(UUID value) { this.SuiteDataSourceInstanceId = value; return this; }
        public String getAlternateKey() { return AlternateKey; }
        public SaveContactRole setAlternateKey(String value) { this.AlternateKey = value; return this; }
        public UUID getObjectId() { return ObjectId; }
        public SaveContactRole setObjectId(UUID value) { this.ObjectId = value; return this; }
        public SubscriptionContactRoleModel getContactRole() { return ContactRole; }
        public SaveContactRole setContactRole(SubscriptionContactRoleModel value) { this.ContactRole = value; return this; }
        public Boolean isIgnoreValidation() { return IgnoreValidation; }
        public SaveContactRole setIgnoreValidation(Boolean value) { this.IgnoreValidation = value; return this; }
    }

    public static class ValidationErrorList
    {
        public ArrayList<RuleValidationResult> ValidationErrors = null;
        
        public ArrayList<RuleValidationResult> getValidationErrors() { return ValidationErrors; }
        public ValidationErrorList setValidationErrors(ArrayList<RuleValidationResult> value) { this.ValidationErrors = value; return this; }
    }

    public static class RuleValidationResult
    {
        public String RuleCode = null;
        public String Message = null;
        public String Key = null;
        public String Tag = null;
        public String ErrorCode = null;
        
        public String getRuleCode() { return RuleCode; }
        public RuleValidationResult setRuleCode(String value) { this.RuleCode = value; return this; }
        public String getMessage() { return Message; }
        public RuleValidationResult setMessage(String value) { this.Message = value; return this; }
        public String getKey() { return Key; }
        public RuleValidationResult setKey(String value) { this.Key = value; return this; }
        public String getTag() { return Tag; }
        public RuleValidationResult setTag(String value) { this.Tag = value; return this; }
        public String getErrorCode() { return ErrorCode; }
        public RuleValidationResult setErrorCode(String value) { this.ErrorCode = value; return this; }
    }

    public static class SubscriptionContactRoleModel
    {
        /**
        * Name of the role.
        */
        @ApiMember(DataType="string", Description="Name of the role.", Name="RoleName", ParameterType="query")
        public String RoleName = null;

        /**
        * Short version of the role name.
        */
        @ApiMember(DataType="string", Description="Short version of the role name.", Name="RoleShortName", ParameterType="query")
        public String RoleShortName = null;

        /**
        * Description of the role purpose.
        */
        @ApiMember(DataType="string", Description="Description of the role purpose.", Name="RoleDescription", ParameterType="query")
        public String RoleDescription = null;

        /**
        * If true, the role will be pending for a contact until they accept it.
        */
        @ApiMember(DataType="bool", Description="If true, the role will be pending for a contact until they accept it.", Name="RequireContactsToAccept", ParameterType="query")
        public Boolean RequireContactsToAccept = null;

        /**
        * Contact Types that may have this role.
        */
        @ApiMember(DataType="List<Guid>", Description="Contact Types that may have this role.", Name="ContactTypes", ParameterType="query")
        public ArrayList<UUID> ContactTypes = null;

        /**
        * Role Filters this role should be added to.
        */
        @ApiMember(DataType="List<Guid>", Description="Role Filters this role should be added to.", Name="ListItemFilters", ParameterType="query")
        public ArrayList<UUID> ListItemFilters = null;
        
        public String getRoleName() { return RoleName; }
        public SubscriptionContactRoleModel setRoleName(String value) { this.RoleName = value; return this; }
        public String getRoleShortName() { return RoleShortName; }
        public SubscriptionContactRoleModel setRoleShortName(String value) { this.RoleShortName = value; return this; }
        public String getRoleDescription() { return RoleDescription; }
        public SubscriptionContactRoleModel setRoleDescription(String value) { this.RoleDescription = value; return this; }
        public Boolean isRequireContactsToAccept() { return RequireContactsToAccept; }
        public SubscriptionContactRoleModel setRequireContactsToAccept(Boolean value) { this.RequireContactsToAccept = value; return this; }
        public ArrayList<UUID> getContactTypes() { return ContactTypes; }
        public SubscriptionContactRoleModel setContactTypes(ArrayList<UUID> value) { this.ContactTypes = value; return this; }
        public ArrayList<UUID> getListItemFilters() { return ListItemFilters; }
        public SubscriptionContactRoleModel setListItemFilters(ArrayList<UUID> value) { this.ListItemFilters = value; return this; }
    }

}

Java SaveContactRole DTOs

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

HTTP + JSV

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

POST /jsv/reply/SaveContactRole HTTP/1.1 
Host: production-eros-platform-apisubscription.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	AlternateKey: String,
	ContactRole: 
	{
		RoleName: String,
		RoleShortName: String,
		RoleDescription: String,
		RequireContactsToAccept: False,
		ContactTypes: 
		[
			00000000-0000-0000-0000-000000000000
		],
		ListItemFilters: 
		[
			00000000-0000-0000-0000-000000000000
		]
	},
	IgnoreValidation: False,
	ValidationErrors: 
	[
		{
			RuleCode: String,
			Message: String,
			Key: String,
			Tag: String,
			ErrorCode: String
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ErrorCode: String,
	Message: String,
	StackTrace: String,
	Errors: 
	[
		{
			ErrorCode: String,
			FieldName: String,
			Message: String,
			Meta: 
			{
				String: String
			}
		}
	],
	Meta: 
	{
		String: String
	}
}