| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| SuiteDataSourceInstanceId | body | Guid | Yes | Guid representing the external systems data source information. |
| AlternateKey | body | string | Yes | The unique key that represents the contact role on the external system. |
| ObjectId | body | Guid | No | Guid of the contact role object within PSTPF. If ObjectId is known, the external system may pass this instead of the alternate key. |
| ContactRole | body | SubscriptionContactRoleModel | Yes | Object containing all details of the contact role to be inserted or updated. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ValidationErrors | body | List<RuleValidationResult> | No | List of any validation/errors occuring during a method call |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Message | body | Guid | No | Validation/Error message details |
| Key | body | Guid | No | Summary/label of validation/error |
| ErrorCode | body | Guid | No | Key/code representing validation/error |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| RoleName | body | string | No | Name of the role. |
| RoleShortName | body | string | No | Short version of the role name. |
| RoleDescription | body | string | No | Description of the role purpose. |
| RequireContactsToAccept | body | bool | No | If true, the role will be pending for a contact until they accept it. |
| ContactTypes | body | List<Guid> | No | Contact Types that may have this role. |
| ListItemFilters | body | List<Guid> | No | Role 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
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
]
},
ValidationErrors:
[
{
Message: String,
Key: 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
}
}