Platform API

<back to all web services

InsertNotification

Inserts a new notification

Requires Authentication
The following routes are available for this service:
POST/api/notification/insert
import 'package:servicestack/servicestack.dart';

class NotificationRole implements IConvertible
{
    String? RoleId;
    String? RoleName;

    NotificationRole({this.RoleId,this.RoleName});
    NotificationRole.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        RoleId = json['RoleId'];
        RoleName = json['RoleName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'RoleId': RoleId,
        'RoleName': RoleName
    };

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

class Notification implements IConvertible
{
    String? NotificationId;
    String? NotificationGroupId;
    String? NotificationGroupName;
    String? SuiteId;
    String? SuiteName;
    String? NotificationValueId;
    List<NotificationRole>? Roles;
    String? RolesToDisplay;
    String? Name;
    String? Description;
    bool? IsMandatory;
    bool? IsCardinality;
    bool? IsSystem;
    bool? IsAudit;
    bool? IsVisibleToRecipients;
    bool? IsSingleUse;
    bool? Email;
    bool? EmailDefault;
    String? EmailTemplateId;
    String? EmailTemplateBody;
    String? EmailSubject;
    bool? SMS;
    bool? SMSDefault;
    String? SMSTemplateId;
    String? SMSTemplateBody;
    bool? UpdateNotification;
    bool? UpdateNotificationDefault;
    String? UpdateTemplateId;
    String? UpdateTemplateBody;
    String? UpdateSubject;
    bool? Push;
    bool? PushDefault;
    bool? Phone;
    bool? PhoneDefault;
    String? ContactIdOwner;
    String? RecordStatus;
    String? EmailTemplateDefinitionId;
    String? SMSTemplateDefinitionId;
    String? UpdateTemplateDefinitionId;
    int? Index;

    Notification({this.NotificationId,this.NotificationGroupId,this.NotificationGroupName,this.SuiteId,this.SuiteName,this.NotificationValueId,this.Roles,this.RolesToDisplay,this.Name,this.Description,this.IsMandatory,this.IsCardinality,this.IsSystem,this.IsAudit,this.IsVisibleToRecipients,this.IsSingleUse,this.Email,this.EmailDefault,this.EmailTemplateId,this.EmailTemplateBody,this.EmailSubject,this.SMS,this.SMSDefault,this.SMSTemplateId,this.SMSTemplateBody,this.UpdateNotification,this.UpdateNotificationDefault,this.UpdateTemplateId,this.UpdateTemplateBody,this.UpdateSubject,this.Push,this.PushDefault,this.Phone,this.PhoneDefault,this.ContactIdOwner,this.RecordStatus,this.EmailTemplateDefinitionId,this.SMSTemplateDefinitionId,this.UpdateTemplateDefinitionId,this.Index});
    Notification.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        NotificationId = json['NotificationId'];
        NotificationGroupId = json['NotificationGroupId'];
        NotificationGroupName = json['NotificationGroupName'];
        SuiteId = json['SuiteId'];
        SuiteName = json['SuiteName'];
        NotificationValueId = json['NotificationValueId'];
        Roles = JsonConverters.fromJson(json['Roles'],'List<NotificationRole>',context!);
        RolesToDisplay = json['RolesToDisplay'];
        Name = json['Name'];
        Description = json['Description'];
        IsMandatory = json['IsMandatory'];
        IsCardinality = json['IsCardinality'];
        IsSystem = json['IsSystem'];
        IsAudit = json['IsAudit'];
        IsVisibleToRecipients = json['IsVisibleToRecipients'];
        IsSingleUse = json['IsSingleUse'];
        Email = json['Email'];
        EmailDefault = json['EmailDefault'];
        EmailTemplateId = json['EmailTemplateId'];
        EmailTemplateBody = json['EmailTemplateBody'];
        EmailSubject = json['EmailSubject'];
        SMS = json['SMS'];
        SMSDefault = json['SMSDefault'];
        SMSTemplateId = json['SMSTemplateId'];
        SMSTemplateBody = json['SMSTemplateBody'];
        UpdateNotification = json['UpdateNotification'];
        UpdateNotificationDefault = json['UpdateNotificationDefault'];
        UpdateTemplateId = json['UpdateTemplateId'];
        UpdateTemplateBody = json['UpdateTemplateBody'];
        UpdateSubject = json['UpdateSubject'];
        Push = json['Push'];
        PushDefault = json['PushDefault'];
        Phone = json['Phone'];
        PhoneDefault = json['PhoneDefault'];
        ContactIdOwner = json['ContactIdOwner'];
        RecordStatus = json['RecordStatus'];
        EmailTemplateDefinitionId = json['EmailTemplateDefinitionId'];
        SMSTemplateDefinitionId = json['SMSTemplateDefinitionId'];
        UpdateTemplateDefinitionId = json['UpdateTemplateDefinitionId'];
        Index = json['Index'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'NotificationId': NotificationId,
        'NotificationGroupId': NotificationGroupId,
        'NotificationGroupName': NotificationGroupName,
        'SuiteId': SuiteId,
        'SuiteName': SuiteName,
        'NotificationValueId': NotificationValueId,
        'Roles': JsonConverters.toJson(Roles,'List<NotificationRole>',context!),
        'RolesToDisplay': RolesToDisplay,
        'Name': Name,
        'Description': Description,
        'IsMandatory': IsMandatory,
        'IsCardinality': IsCardinality,
        'IsSystem': IsSystem,
        'IsAudit': IsAudit,
        'IsVisibleToRecipients': IsVisibleToRecipients,
        'IsSingleUse': IsSingleUse,
        'Email': Email,
        'EmailDefault': EmailDefault,
        'EmailTemplateId': EmailTemplateId,
        'EmailTemplateBody': EmailTemplateBody,
        'EmailSubject': EmailSubject,
        'SMS': SMS,
        'SMSDefault': SMSDefault,
        'SMSTemplateId': SMSTemplateId,
        'SMSTemplateBody': SMSTemplateBody,
        'UpdateNotification': UpdateNotification,
        'UpdateNotificationDefault': UpdateNotificationDefault,
        'UpdateTemplateId': UpdateTemplateId,
        'UpdateTemplateBody': UpdateTemplateBody,
        'UpdateSubject': UpdateSubject,
        'Push': Push,
        'PushDefault': PushDefault,
        'Phone': Phone,
        'PhoneDefault': PhoneDefault,
        'ContactIdOwner': ContactIdOwner,
        'RecordStatus': RecordStatus,
        'EmailTemplateDefinitionId': EmailTemplateDefinitionId,
        'SMSTemplateDefinitionId': SMSTemplateDefinitionId,
        'UpdateTemplateDefinitionId': UpdateTemplateDefinitionId,
        'Index': Index
    };

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

/**
* Inserts a new notification
*/
// @Api(Description="Inserts a new notification")
class InsertNotification implements IConvertible
{
    Notification? Notification;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
    'NotificationRole': TypeInfo(TypeOf.Class, create:() => NotificationRole()),
    'Notification': TypeInfo(TypeOf.Class, create:() => Notification()),
    'List<NotificationRole>': TypeInfo(TypeOf.Class, create:() => <NotificationRole>[]),
    'InsertNotification': TypeInfo(TypeOf.Class, create:() => InsertNotification()),
});

Dart InsertNotification 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/notification/insert HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<InsertNotification xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
  <Notification xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Causal.Common.Entity">
    <d2p1:ContactIdOwner>00000000-0000-0000-0000-000000000000</d2p1:ContactIdOwner>
    <d2p1:Description>String</d2p1:Description>
    <d2p1:Email>false</d2p1:Email>
    <d2p1:EmailDefault>false</d2p1:EmailDefault>
    <d2p1:EmailSubject>String</d2p1:EmailSubject>
    <d2p1:EmailTemplateBody>String</d2p1:EmailTemplateBody>
    <d2p1:EmailTemplateDefinitionId>00000000-0000-0000-0000-000000000000</d2p1:EmailTemplateDefinitionId>
    <d2p1:EmailTemplateId>00000000-0000-0000-0000-000000000000</d2p1:EmailTemplateId>
    <d2p1:Index>0</d2p1:Index>
    <d2p1:IsAudit>false</d2p1:IsAudit>
    <d2p1:IsCardinality>false</d2p1:IsCardinality>
    <d2p1:IsMandatory>false</d2p1:IsMandatory>
    <d2p1:IsSingleUse>false</d2p1:IsSingleUse>
    <d2p1:IsSystem>false</d2p1:IsSystem>
    <d2p1:IsVisibleToRecipients>false</d2p1:IsVisibleToRecipients>
    <d2p1:Name>String</d2p1:Name>
    <d2p1:NotificationGroupId>00000000-0000-0000-0000-000000000000</d2p1:NotificationGroupId>
    <d2p1:NotificationGroupName>String</d2p1:NotificationGroupName>
    <d2p1:NotificationId>00000000-0000-0000-0000-000000000000</d2p1:NotificationId>
    <d2p1:NotificationValueId>00000000-0000-0000-0000-000000000000</d2p1:NotificationValueId>
    <d2p1:Phone>false</d2p1:Phone>
    <d2p1:PhoneDefault>false</d2p1:PhoneDefault>
    <d2p1:Push>false</d2p1:Push>
    <d2p1:PushDefault>false</d2p1:PushDefault>
    <d2p1:RecordStatus>String</d2p1:RecordStatus>
    <d2p1:Roles>
      <d2p1:NotificationRole>
        <d2p1:RoleId>00000000-0000-0000-0000-000000000000</d2p1:RoleId>
        <d2p1:RoleName>String</d2p1:RoleName>
      </d2p1:NotificationRole>
    </d2p1:Roles>
    <d2p1:SMS>false</d2p1:SMS>
    <d2p1:SMSDefault>false</d2p1:SMSDefault>
    <d2p1:SMSTemplateBody>String</d2p1:SMSTemplateBody>
    <d2p1:SMSTemplateDefinitionId>00000000-0000-0000-0000-000000000000</d2p1:SMSTemplateDefinitionId>
    <d2p1:SMSTemplateId>00000000-0000-0000-0000-000000000000</d2p1:SMSTemplateId>
    <d2p1:SuiteId>00000000-0000-0000-0000-000000000000</d2p1:SuiteId>
    <d2p1:SuiteName>String</d2p1:SuiteName>
    <d2p1:UpdateNotification>false</d2p1:UpdateNotification>
    <d2p1:UpdateNotificationDefault>false</d2p1:UpdateNotificationDefault>
    <d2p1:UpdateSubject>String</d2p1:UpdateSubject>
    <d2p1:UpdateTemplateBody>String</d2p1:UpdateTemplateBody>
    <d2p1:UpdateTemplateDefinitionId>00000000-0000-0000-0000-000000000000</d2p1:UpdateTemplateDefinitionId>
    <d2p1:UpdateTemplateId>00000000-0000-0000-0000-000000000000</d2p1:UpdateTemplateId>
  </Notification>
</InsertNotification>
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>