| GET | /api/automation/notification/{ObjectId}/list | ||
|---|---|---|---|
| GET | /api/automation/notification/{ObjectId}/list/standard | ||
| GET | /api/automation/notification/{ObjectId}/list/templated |
"use strict";
export class AutomationModel {
/** @param {{AutomationId?:string,AutomationTypeId?:string,AutomationType?:string,ObjectId?:string,ObjectName?:string,RmsTableCtxIdObject?:string,RmsTableCtxName?:string,ActionList?:string[],Actions?:string,Name?:string,Description?:string,OwnerContactId?:string,RecordStatus?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The unique automation Id */
AutomationId;
/**
* @type {string}
* @description The automation type Id */
AutomationTypeId;
/**
* @type {string}
* @description The automation type */
AutomationType;
/**
* @type {string}
* @description The object this automation applies to */
ObjectId;
/**
* @type {string}
* @description The object name this automation applies to */
ObjectName;
/**
* @type {string}
* @description The Id of the object type that this automation applies to. */
RmsTableCtxIdObject;
/**
* @type {string}
* @description The name of the object type that this automation applies to. */
RmsTableCtxName;
/**
* @type {string[]}
* @description A guid list containing the selected system action Id's that trigger this automation. */
ActionList;
/**
* @type {string}
* @description A comma separated string of the selected system action names that trigger this automation. */
Actions;
/**
* @type {string}
* @description Name of the automation. */
Name;
/**
* @type {string}
* @description Description of the automation */
Description;
/**
* @type {string}
* @description Owner Contact Id */
OwnerContactId;
/**
* @type {string}
* @description Record Status of the automation. */
RecordStatus;
}
export class AutoNotificationModel extends AutomationModel {
/** @param {{ContactIdLicensee?:string,ContactRoleGroupId?:string,ContactRoleId?:string,ContactRoleName?:string,ContactId?:string,ObjectContactConnectionRequired?:boolean,AllowDirectAccess?:boolean,SendImmediately?:boolean,Batched?:boolean,DraftStatus?:boolean,FinalStatus?:boolean,IncludeReport?:boolean,IsTemplateNotification?:boolean,Roles?:string[],CommunicationTypeId?:string,CommunicationType?:string,Subject?:string,Body?:string,IncludeURL?:boolean,NotificationId?:string,NotificationName?:string,SuiteId?:string,SuiteName?:string,AutomationId?:string,AutomationTypeId?:string,AutomationType?:string,ObjectId?:string,ObjectName?:string,RmsTableCtxIdObject?:string,RmsTableCtxName?:string,ActionList?:string[],Actions?:string,Name?:string,Description?:string,OwnerContactId?:string,RecordStatus?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description Contact Id of the licensee this notification has been created for. */
ContactIdLicensee;
/**
* @type {string}
* @description Contact Role Group Id. If the notification is setup for people in a specified contact role group. */
ContactRoleGroupId;
/**
* @type {string}
* @description Contact Role Id. If the notification is setup for people in a specified role. */
ContactRoleId;
/**
* @type {string}
* @description Contact Role Name. If the notification is setup for people in a specified role. */
ContactRoleName;
/**
* @type {string}
* @description Contact Id. If the notification is setup for a specific person. */
ContactId;
/**
* @type {boolean}
* @description If true, then only contacts who are connected to the relevant object are notified. */
ObjectContactConnectionRequired;
/**
* @type {boolean}
* @description Document Notification: If true, then the notification will include a link to download the document. */
AllowDirectAccess;
/**
* @type {boolean}
* @description If true, the notification is sent as soon as it can be processed */
SendImmediately;
/**
* @type {boolean}
* @description If true, the notification is flagged and sent out when subscription/batch emails are next sent. */
Batched;
/**
* @type {boolean}
* @description Document Notification: If true, the notification is sent when a document has a status of draft. */
DraftStatus;
/**
* @type {boolean}
* @description Document Notification: If true, the notification is sent when a document has a status of final. */
FinalStatus;
/**
* @type {boolean}
* @description True if we want to include a report on an email notification. */
IncludeReport;
/**
* @type {boolean}
* @description True if this notification is based on a template. */
IsTemplateNotification;
/**
* @type {string[]}
* @description When Inserting a new notification we can have 1+ roles. They should be passed to this field when inserting. */
Roles;
/**
* @type {string}
* @description Communication Type Id. */
CommunicationTypeId;
/**
* @type {string}
* @description Communication Type. */
CommunicationType;
/**
* @type {string}
* @description If communication type is email, this is the subject of the email to be sent. */
Subject;
/**
* @type {string}
* @description This is the notification details to be sent. */
Body;
/**
* @type {boolean}
* @description If true, we will include the relevant project URL in the notification. */
IncludeURL;
/**
* @type {string}
* @description The notification Id of a notification setup in Workflow Notification Management to use for the notification. */
NotificationId;
/**
* @type {string}
* @description The notification nameof a notification setup in Workflow Notification Management to use for the notification. */
NotificationName;
/**
* @type {string}
* @description The suite id the notification is setup for */
SuiteId;
/**
* @type {string}
* @description The suite name the notification is setup for */
SuiteName;
}
export class GetAutomationNotificationsForObjectResponse {
/** @param {{Notifications?:AutoNotificationModel[],ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {AutoNotificationModel[]}
* @description List of (automation) notifications. */
Notifications;
/** @type {ResponseStatus} */
ResponseStatus;
}
export class GetAutomationNotificationsForObject {
/** @param {{ObjectId?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Object to retrieve (automation) notifications for. */
ObjectId;
}
JavaScript GetAutomationNotificationsForObject DTOs
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.
GET /api/automation/notification/{ObjectId}/list HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Notifications:
[
{
ContactRoleName: String,
ObjectContactConnectionRequired: False,
AllowDirectAccess: False,
SendImmediately: False,
Batched: False,
DraftStatus: False,
FinalStatus: False,
IncludeReport: False,
IsTemplateNotification: False,
Roles:
[
00000000-0000-0000-0000-000000000000
],
CommunicationType: String,
Subject: String,
Body: String,
IncludeURL: False,
NotificationName: String,
SuiteName: String,
AutomationType: String,
ObjectName: String,
RmsTableCtxName: String,
ActionList:
[
00000000-0000-0000-0000-000000000000
],
Actions: String,
Name: String,
Description: String,
RecordStatus: String
}
],
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}