/* Options:
Date: 2026-04-04 04:52:50
Version: 8.52
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://pfapi.pstpf.com.au/api
//GlobalNamespace:
//MakePartial: True
//MakeVirtual: True
//MakeInternal: False
//MakeDataContractsExtensible: False
//AddNullableAnnotations: False
//AddReturnMarker: True
//AddDescriptionAsComments: True
//AddDataContractAttributes: False
//AddIndexesToDataMembers: False
//AddGeneratedCodeAttributes: False
//AddResponseStatus: False
//AddImplicitVersion:
//InitializeCollections: False
//ExportValueTypes: False
IncludeTypes: GetCommunication.*
//ExcludeTypes:
//AddNamespaces:
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Eros.Saguna.Common.WebAPIModel.Models;
using Eros.Subtle.Canvara.WebAPIModel.ServiceModel;
namespace Eros.Saguna.Common.WebAPIModel.Models
{
public partial class CommunicationModel
{
///
///Communication Id
///
[ApiMember(DataType="Guid", Description="Communication Id", IsRequired=true, Name="CommunicationId")]
public virtual Guid CommunicationId { get; set; }
///
///Communication Type Id e.g. SMS, Email, Comment.
///
[ApiMember(DataType="Guid", Description="Communication Type Id e.g. SMS, Email, Comment.", IsRequired=true, Name="CommunicationTypeId")]
public virtual Guid CommunicationTypeId { get; set; }
///
///Communication Type Name e.g. SMS, Email, Comment.
///
[ApiMember(DataType="string", Description="Communication Type Name e.g. SMS, Email, Comment.", Name="CommunicationTypeName")]
public virtual string CommunicationTypeName { get; set; }
///
///Communication Subject
///
[ApiMember(DataType="string", Description="Communication Subject", Name="Subject")]
public virtual string Subject { get; set; }
///
///Communication Body
///
[ApiMember(DataType="string", Description="Communication Body", IsRequired=true, Name="Body")]
public virtual string Body { get; set; }
///
///Date and Time communication record created
///
[ApiMember(DataType="DateTime", Description="Date and Time communication record created", IsRequired=true, Name="CreatedAt")]
public virtual DateTime CreatedAt { get; set; }
///
///Date and Time communication record released (e.g. Email sent date time)
///
[ApiMember(DataType="DateTime", Description="Date and Time communication record released (e.g. Email sent date time)", IsRequired=true, Name="ReleaseAt")]
public virtual DateTime ReleaseAt { get; set; }
///
///Sender or the creater of the communication
///
[ApiMember(Description="Sender or the creater of the communication", IsRequired=true, Name="Sender")]
public virtual UserProfileModel Sender { get; set; }
///
///Primary recipient(s) of the communication (e.g. 'To' contacts of an email).
///
[ApiMember(Description="Primary recipient(s) of the communication (e.g. 'To' contacts of an email).", IsRequired=true, Name="Recipients")]
public virtual List Recipients { get; set; } = [];
///
///Cc recipient(s) of the communication.
///
[ApiMember(Description="Cc recipient(s) of the communication.", IsRequired=true, Name="CcRecipients")]
public virtual List CcRecipients { get; set; } = [];
///
///Bcc recipient(s) of the communication.
///
[ApiMember(Description="Bcc recipient(s) of the communication.", IsRequired=true, Name="BccRecipients")]
public virtual List BccRecipients { get; set; } = [];
///
///Indicates whether the sender is a customer
///
[ApiMember(DataType="Boolean", Description="Indicates whether the sender is a customer", IsRequired=true, Name="SentByCustomer")]
public virtual bool SentByCustomer { get; set; }
///
///Indicates whether the sender is a staff member (Internal contact)
///
[ApiMember(DataType="Boolean", Description="Indicates whether the sender is a staff member (Internal contact)", IsRequired=true, Name="SentByStaff")]
public virtual bool SentByStaff { get; set; }
}
public partial class UserProfileModel
: UserProfileSummaryModel
{
///
///Contact Date of Birth (when person type)
///
[ApiMember(DataType="DateTime?", Description="Contact Date of Birth (when person type)", Name="BirthDate", ParameterType="query")]
public virtual DateTime? BirthDate { get; set; }
///
///Contact marital status (when person type)
///
[ApiMember(DataType="string", Description="Contact marital status (when person type)", Name="MaritalStatusName", ParameterType="query")]
public virtual string MaritalStatusName { get; set; }
///
///Contact gender (when person type)
///
[ApiMember(DataType="string", Description="Contact gender (when person type)", Name="GenderName", ParameterType="query")]
public virtual string GenderName { get; set; }
///
///The Gender Guid of the contact.
///
[ApiMember(DataType="Guid", Description="The Gender Guid of the contact.", Name="GenderId", ParameterType="query")]
public virtual Guid? GenderId { get; set; }
///
///All contact details of the contact
///
[ApiMember(DataType="List", Description="All contact details of the contact", Name="ContactDetails", ParameterType="query")]
public virtual List ContactDetails { get; set; }
///
///Primary Street Address
///
[ApiMember(DataType="ContactDetail", Description="Primary Street Address", Name="PrimaryStreetAddress ")]
public virtual ContactDetailModel PrimaryStreetAddress { get; set; }
///
///Primary Postal Address
///
[ApiMember(DataType="ContactDetail", Description="Primary Postal Address", Name="PrimaryPostalAddress ")]
public virtual ContactDetailModel PrimaryPostalAddress { get; set; }
///
///Primary Registered Address
///
[ApiMember(DataType="ContactDetail", Description="Primary Registered Address", Name="PrimaryRegisteredAddress ")]
public virtual ContactDetailModel PrimaryRegisteredAddress { get; set; }
///
///Primary Email Address
///
[ApiMember(DataType="ContactDetail", Description="Primary Email Address", Name="PrimaryEmail ")]
public virtual ContactDetailModel PrimaryEmail { get; set; }
///
///Primary Mobile Number
///
[ApiMember(DataType="ContactDetail", Description="Primary Mobile Number", Name="PrimaryMobile")]
public virtual ContactDetailModel PrimaryMobile { get; set; }
///
///Primary Non-Mobile Number
///
[ApiMember(DataType="ContactDetail", Description="Primary Non-Mobile Number", Name="PrimaryPhone")]
public virtual ContactDetailModel PrimaryPhone { get; set; }
///
///Primary Fax Number
///
[ApiMember(DataType="ContactDetail", Description="Primary Fax Number", Name="PrimaryFax")]
public virtual ContactDetailModel PrimaryFax { get; set; }
///
///Primary Web Address
///
[ApiMember(DataType="ContactDetail", Description="Primary Web Address", Name="PrimaryWeb")]
public virtual ContactDetailModel PrimaryWeb { get; set; }
///
///Social Media Twitter
///
[ApiMember(DataType="ContactDetail", Description="Social Media Twitter", Name="SocialMediaTwitter")]
public virtual ContactDetailModel SocialMediaTwitter { get; set; }
///
///Social Media Facebook
///
[ApiMember(DataType="ContactDetail", Description="Social Media Facebook", Name="SocialMediaFacebook")]
public virtual ContactDetailModel SocialMediaFacebook { get; set; }
///
///Social Media Instagram
///
[ApiMember(DataType="ContactDetail", Description="Social Media Instagram", Name="SocialMediaInstagram")]
public virtual ContactDetailModel SocialMediaInstagram { get; set; }
///
///Have all connections to the contact been removed?
///
[ApiMember(DataType="bool", Description="Have all connections to the contact been removed?", Name="IsRemovedContact")]
public virtual bool IsRemovedContact { get; set; }
///
///True if this is the users default profile.
///
[ApiMember(DataType="bool", Description="True if this is the users default profile.", Name="IsDefault", ParameterType="query")]
public virtual bool IsDefault { get; set; }
///
///True if the users email on this profile can be edited.
///
[ApiMember(DataType="bool", Description="True if the users email on this profile can be edited.", Name="IsEmailEditable", ParameterType="query")]
public virtual bool IsEmailEditable { get; set; }
///
///Primary image Content sent as a file stream contents (if not attached to the request)
///
[ApiMember(DataType="string", Description="Primary image Content sent as a file stream contents (if not attached to the request)", Name="PrimaryImageContent")]
public virtual string PrimaryImageContent { get; set; }
///
///Primary image Content type sent as a file stream contents (if not attached to the request)
///
[ApiMember(DataType="string", Description="Primary image Content type sent as a file stream contents (if not attached to the request)", Name="PrimaryImageContentType")]
public virtual string PrimaryImageContentType { get; set; }
///
///Primary image file name
///
[ApiMember(DataType="string", Description="Primary image file name", Name="PrimaryImageFileName")]
public virtual string PrimaryImageFileName { get; set; }
}
}
namespace Eros.Subtle.Canvara.WebAPIModel.ServiceModel
{
///
///Get specified communication.
///
[Route("/communication/{CommunicationId}")]
[Api(Description="Get specified communication.")]
public partial class GetCommunication
: IReturn
{
///
///Communication Id to get details for
///
[ApiMember(Description="Communication Id to get details for", IsRequired=true, Name="CommunicationId")]
public virtual Guid CommunicationId { get; set; }
}
[ApiResponse(Description="Details of communication including sender and recipient details.")]
public partial class GetCommunicationResponse
{
public virtual CommunicationModel Communication { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
}
namespace ServiceStack
{
[DataContract]
public partial class ResponseStatus
: IMeta
{
[DataMember(Order=1)]
public virtual string ErrorCode { get; set; }
[DataMember(Order=2)]
public virtual string Message { get; set; }
[DataMember(Order=3)]
public virtual string StackTrace { get; set; }
[DataMember(Order=4)]
public virtual List Errors { get; set; }
[DataMember(Order=5)]
public virtual Dictionary Meta { get; set; }
}
}