Platform Subscription API

<back to all web services

SaveContactRole

Requires Authentication
SaveContactRole Parameters:
NameParameterData TypeRequiredDescription
SuiteDataSourceInstanceIdqueryGuidYesGuid representing the external systems data source information.
AlternateKeyquerystringYesThe unique key that represents the contact role on the external system.
ObjectIdqueryGuidNoGuid of the contact role object within Eros. If ObjectId is known, the external system may pass this instead of the alternate key.
ContactRolequerySubscriptionContactRoleModelYesObject containing all details of the contact role to be inserted or updated.
IgnoreValidationqueryboolNo
ValidationErrorList Parameters:
NameParameterData TypeRequiredDescription
ValidationErrorsformList<RuleValidationResult>No
RuleValidationResult Parameters:
NameParameterData TypeRequiredDescription
RuleCodeformstringNo
MessageformstringNo
KeyformstringNo
TagformstringNo
ErrorCodeformstringNo
SubscriptionContactRoleModel Parameters:
NameParameterData TypeRequiredDescription
RoleNamequerystringNoName of the role.
RoleShortNamequerystringNoShort version of the role name.
RoleDescriptionquerystringNoDescription of the role purpose.
RequireContactsToAcceptqueryboolNoIf true, the role will be pending for a contact until they accept it.
ContactTypesqueryList<Guid>NoContact Types that may have this role.
ListItemFiltersqueryList<Guid>NoRole Filters this role should be added to.

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
	}
}