/* Options: Date: 2026-04-04 04:51:13 Version: 8.52 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://pfapi.pstpf.com.au/api //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetProjectContacts.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class ContactDetailModel { /** @description Id of the Contact Method */ // @ApiMember(DataType="Guid", Description="Id of the Contact Method", Name="ContactMethodId", ParameterType="body") public ContactMethodId: string; /** @description Contact Method Name */ // @ApiMember(DataType="string", Description="Contact Method Name", Name="ContactMethodName", ParameterType="body") public ContactMethodName: string; /** @description If the contact method is an address, this will contain the address details. */ // @ApiMember(DataType="ContactAddressModel", Description="If the contact method is an address, this will contain the address details.", Name="ContactAddress", ParameterType="body") public ContactAddress: ContactAddressModel; /** @description If the contact method is a phone, this will contain the phone details */ // @ApiMember(DataType="PhoneModel", Description="If the contact method is a phone, this will contain the phone details", Name="ContactPhone", ParameterType="body") public ContactPhone: PhoneModel; /** @description Id of the country */ // @ApiMember(DataType="Guid?", Description="Id of the country", Name="CountryId", ParameterType="body") public CountryId?: string; /** @description A summary string representing the contact details */ // @ApiMember(DataType="string", Description="A summary string representing the contact details", Name="ContactDetails", ParameterType="body") public ContactDetails: string; /** @description Notes about the contact details */ // @ApiMember(DataType="string", Description="Notes about the contact details", Name="Notes", ParameterType="body") public Notes: string; /** @description Area Code if contact details are a phone number */ // @ApiMember(DataType="string", Description="Area Code if contact details are a phone number", Name="ContactDetailsCode", ParameterType="body") public ContactDetailsCode: string; /** @description Order number of the contact method */ // @ApiMember(DataType="int", Description="Order number of the contact method", Name="OrderContactMethod", ParameterType="body") public OrderContactMethod: number; /** @description True if this is the primary contact method */ // @ApiMember(DataType="bool", Description="True if this is the primary contact method", Name="IsPrimaryContactMethod", ParameterType="body") public IsPrimaryContactMethod: boolean; /** @description True if this contact method is an address */ // @ApiMember(DataType="bool", Description="True if this contact method is an address", Name="IsAddress", ParameterType="body") public IsAddress: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ContactRole { /** @description Guid of the Role List Item object within PSTPF. */ // @ApiMember(DataType="Guid", Description="Guid of the Role List Item object within PSTPF.", Name="RoleId", ParameterType="body") public RoleId: string; /** @description The unique key that represents the role type on the external system. */ // @ApiMember(DataType="string", Description="The unique key that represents the role type on the external system.", Name="AlternateKey", ParameterType="body") public AlternateKey: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SubscriptionContactModel { /** @description Guid of the contact object within PSTPF. */ // @ApiMember(DataType="Guid", Description="Guid of the contact object within PSTPF.", Name="ContactId", ParameterType="body") public ContactId: string; /** @description Guid of the Contact Type List Item object within PSTPF. */ // @ApiMember(DataType="Guid", Description="Guid of the Contact Type List Item object within PSTPF.", Name="ContactType", ParameterType="body") public ContactType: string; /** @description Guid of the Marital Status List Item object within PSTPF. */ // @ApiMember(DataType="Guid?", Description="Guid of the Marital Status List Item object within PSTPF.", Name="MaritalStatus", ParameterType="body") public MaritalStatus?: string; /** @description Guid of the Gender List Item object within PSTPF. */ // @ApiMember(DataType="Guid?", Description="Guid of the Gender List Item object within PSTPF.", Name="Gender", ParameterType="body") public Gender?: string; /** @description The first given name for the contact. Applies to a person contact type. */ // @ApiMember(DataType="string", Description="The first given name for the contact. Applies to a person contact type.", Name="FirstName", ParameterType="body") public FirstName: string; /** @description The middle name(s) for the contact. Applies to a person contact type. */ // @ApiMember(DataType="string", Description="The middle name(s) for the contact. Applies to a person contact type.", Name="MiddleName", ParameterType="body") public MiddleName: string; /** @description The surname for the contact. Applies to a person contact type. */ // @ApiMember(DataType="string", Description="The surname for the contact. Applies to a person contact type.", Name="Surname", ParameterType="body") public Surname: string; /** @description The full name for the contact. */ // @ApiMember(DataType="string", Description="The full name for the contact.", Name="FullName", ParameterType="body") public FullName: string; /** @description A short name for the contact. */ // @ApiMember(DataType="string", Description="A short name for the contact.", Name="ShortName", ParameterType="body") public ShortName: string; /** @description The birth date for the contact. Applies to a person contact type. */ // @ApiMember(DataType="DateTime?", Description="The birth date for the contact. Applies to a person contact type.", Name="BirthDate", ParameterType="body") public BirthDate?: string; /** @description The title for the contact. Applies to a person contact type. */ // @ApiMember(DataType="string", Description="The title for the contact. Applies to a person contact type.", Name="Title", ParameterType="body") public Title: string; /** @description A salutation for the contact. */ // @ApiMember(DataType="string", Description="A salutation for the contact.", Name="Salutation", ParameterType="body") public Salutation: string; /** @description The A.B.N for the contact. */ // @ApiMember(DataType="string", Description="The A.B.N for the contact.", Name="Abn", ParameterType="body") public Abn: string; /** @description The A.C.N for the contact. */ // @ApiMember(DataType="string", Description="The A.C.N for the contact.", Name="Acn", ParameterType="body") public Acn: string; /** @description The A.R.B.N for the contact. */ // @ApiMember(DataType="string", Description="The A.R.B.N for the contact.", Name="Arbn", ParameterType="body") public Arbn: string; /** @description A trading name for the contact. */ // @ApiMember(DataType="string", Description="A trading name for the contact.", Name="TradingName", ParameterType="body") public TradingName: string; /** @description A legal name for the contact. */ // @ApiMember(DataType="string", Description="A legal name for the contact.", Name="LegalName", ParameterType="body") public LegalName: string; /** @description Any notes/description for the contact. */ // @ApiMember(DataType="string", Description="Any notes/description for the contact.", Name="Notes", ParameterType="body") public Notes: string; /** @description Contact Employment Industry. */ // @ApiMember(DataType="string", Description="Contact Employment Industry.", Name="EmploymentIndustry", ParameterType="body") public EmploymentIndustry: string; /** @description Contact Employment Role. */ // @ApiMember(DataType="string", Description="Contact Employment Role.", Name="EmploymentRole", ParameterType="body") public EmploymentRole: string; /** @description Contact Employment Geographic Area. */ // @ApiMember(DataType="string", Description="Contact Employment Geographic Area.", Name="EmploymentGeographicArea", ParameterType="body") public EmploymentGeographicArea: string; /** @description The Contacts Drivers Licence Number */ // @ApiMember(DataType="string", Description="The Contacts Drivers Licence Number", Name="DriversLicence", ParameterType="body") public DriversLicence: string; /** @description Indicates if the Contact is registered for GST */ // @ApiMember(DataType="bool", Description="Indicates if the Contact is registered for GST", Name="GstRegistered", ParameterType="body") public GstRegistered: boolean; /** @description The status of the contact in PSTPF */ // @ApiMember(DataType="string", Description="The status of the contact in PSTPF", Name="RecordStatus", ParameterType="body") public RecordStatus: string; /** @description A list of roles this contact has. */ // @ApiMember(DataType="List", Description="A list of roles this contact has.", Name="ContactRoles", ParameterType="body") public ContactRoles: ContactRole[]; /** @description A list of the contact details for the contact. */ // @ApiMember(DataType="List", Description="A list of the contact details for the contact.", Name="ContactDetails", ParameterType="body") public ContactDetails: ContactDetailModel[]; /** @description Custom Content XML for the contact. */ // @ApiMember(DataType="string", Description="Custom Content XML for the contact.", Name="CustomContentXML", ParameterType="body") public CustomContentXML: string; /** @description URL to the Primary Image. */ // @ApiMember(DataType="string", Description="URL to the Primary Image.", Name="BlobImageURLPrimary", ParameterType="body") public BlobImageURLPrimary: string; /** @description URL to the Primary Image thumbnail. */ // @ApiMember(DataType="string", Description="URL to the Primary Image thumbnail.", Name="BlobImageURLPrimaryThumbnail", ParameterType="body") public BlobImageURLPrimaryThumbnail: string; /** @description The primary mobile for the contact. */ // @ApiMember(DataType="string", Description="The primary mobile for the contact.", Name="PrimaryMobile", ParameterType="body") public PrimaryMobile: string; /** @description The primary email for the contact. */ // @ApiMember(DataType="string", Description="The primary email for the contact.", Name="PrimaryEmail", ParameterType="body") public PrimaryEmail: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ProjectContact { /** @description Guid of the contact object within Eros. */ // @ApiMember(DataType="Guid", Description="Guid of the contact object within Eros.", Name="ContactId", ParameterType="query") public ContactId: string; /** @description The unique key that represents the contact on the external system. */ // @ApiMember(DataType="string", Description="The unique key that represents the contact on the external system.", IsRequired=true, Name="ContactAlternateKey", ParameterType="query") public ContactAlternateKey: string; /** @description Guid of the Role List Item object within Eros. */ // @ApiMember(DataType="Guid", Description="Guid of the Role List Item object within Eros.", IsRequired=true, Name="RoleId", ParameterType="query") public RoleId: string; /** @description Role Name. */ // @ApiMember(DataType="string", Description="Role Name.", Name="RoleName", ParameterType="query") public RoleName: string; /** @description The unique key that represents the role type on the external system. Note: Use of this is not currently implemented */ // @ApiMember(DataType="string", Description="The unique key that represents the role type on the external system. Note: Use of this is not currently implemented", Name="RoleAlternateKey", ParameterType="query") public RoleAlternateKey: string; /** @description The object that contains details of the contact */ // @ApiMember(DataType="ContactModel", Description="The object that contains details of the contact", Name="Contact", ParameterType="query") public Contact: SubscriptionContactModel; /** @description The order this contact is in priority. 1 would be the primary contact, 2 the secondary and so forth. */ // @ApiMember(DataType="int", Description="The order this contact is in priority. 1 would be the primary contact, 2 the secondary and so forth.", Name="Index", ParameterType="query") public Index: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ContactDetailModel { /** @description Contact Method Id */ // @ApiMember(DataType="Guid", Description="Contact Method Id", Name="ContactMethodId", ParameterType="query") public ContactMethodId: string; /** @description Contact Method Name */ // @ApiMember(DataType="string", Description="Contact Method Name", Name="ContactMethodName", ParameterType="query") public ContactMethodName: string; /** @description Contact Address Details */ // @ApiMember(DataType="ContactAddressModel", Description="Contact Address Details", Name="ContactAddress", ParameterType="query") public ContactAddress: ContactAddressModel; /** @description Contact Phone Details */ // @ApiMember(DataType="PhoneModel", Description="Contact Phone Details", Name="ContactPhone", ParameterType="query") public ContactPhone: PhoneModel; /** @description Country id */ // @ApiMember(DataType="Guid", Description="Country id", Name="CountryId", ParameterType="query") public CountryId?: string; /** @description Contact Details */ // @ApiMember(DataType="string", Description="Contact Details", Name="ContactDetails", ParameterType="query") public ContactDetails: string; /** @description Notes */ // @ApiMember(DataType="string", Description="Notes", Name="Notes", ParameterType="query") public Notes: string; /** @description Contact Details Code */ // @ApiMember(DataType="string", Description="Contact Details Code", Name="ContactDetailsCode", ParameterType="query") public ContactDetailsCode: string; /** @description Order of Contact Method Id */ // @ApiMember(DataType="int", Description="Order of Contact Method Id", Name="OrderContactMethod", ParameterType="query") public OrderContactMethod: number; /** @description Contact Method Id */ // @ApiMember(DataType="bool", Description="Contact Method Id", Name="IsPrimaryContactMethod", ParameterType="query") public IsPrimaryContactMethod: boolean; /** @description Is contact details an address */ // @ApiMember(DataType="bool", Description="Is contact details an address", Name="IsAddress", ParameterType="query") public IsAddress: boolean; /** @description Contact Contact Detail Id */ // @ApiMember(DataType="Guid", Description="Contact Contact Detail Id", Name="ContactContactDetailId", ParameterType="query") public ContactContactDetailId: string; /** @description Contact Id */ // @ApiMember(DataType="Guid", Description="Contact Id", Name="ContactId", ParameterType="query") public ContactId: string; /** @description Contact Details Id */ // @ApiMember(DataType="Guid", Description="Contact Details Id", Name="ContactDetailId", ParameterType="query") public ContactDetailId: string; /** @description Is contact details a primary location */ // @ApiMember(DataType="bool", Description="Is contact details a primary location", Name="IsPrimaryLocation", ParameterType="query") public IsPrimaryLocation: boolean; /** @description Is contact details a registered location */ // @ApiMember(DataType="bool", Description="Is contact details a registered location", Name="IsRegisteredLocation", ParameterType="query") public IsRegisteredLocation: boolean; /** @description Is contact details a postal address */ // @ApiMember(DataType="bool", Description="Is contact details a postal address", Name="IsPostal", ParameterType="query") public IsPostal: boolean; /** @description Is contact details a phone number */ // @ApiMember(DataType="bool", Description="Is contact details a phone number", Name="IsPhone", ParameterType="query") public IsPhone: boolean; /** @description Email Signature Id */ // @ApiMember(DataType="Guid", Description="Email Signature Id", Name="EmailSignatureId", ParameterType="query") public EmailSignatureId: string; /** @description Email Signature HTML */ // @ApiMember(DataType="string", Description="Email Signature HTML", Name="EmailSignatureHTML", ParameterType="query") public EmailSignatureHTML: string; /** @description Email Signature Text */ // @ApiMember(DataType="string", Description="Email Signature Text", Name="EmailSignatureText", ParameterType="query") public EmailSignatureText: string; /** @description API Key from Framework */ // @ApiMember(DataType="string", Description="API Key from Framework", Name="ApiFrameworkAlternateKey", ParameterType="query") public ApiFrameworkAlternateKey: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @ApiResponse(Description="List of project contacts and customer contacts.") export class ProjectContactModel { /** @description Object containing all details of the project to be inserted or updated. */ // @ApiMember(DataType=" List", Description="Object containing all details of the project to be inserted or updated.", Name="ProjectContacts", ParameterType="query") public ProjectContacts: ProjectContact[]; /** @description Object containing all details of the project to be inserted or updated. */ // @ApiMember(DataType=" List", Description="Object containing all details of the project to be inserted or updated.", Name="CustomerContacts", ParameterType="query") public CustomerContacts: ProjectContact[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Returns a projects contacts (customer and project connected). */ // @Route("/project/{ProjectId}/contacts") // @Api(Description="Returns a projects contacts (customer and project connected).") export class GetProjectContacts implements IReturn { /** @description Guid representing the object that is the project in Eros. */ // @ApiMember(DataType="Guid", Description="Guid representing the object that is the project in Eros.", Name="ProjectId", ParameterType="query") public ProjectId: string; /** @description Guid representing the projects contact customer group Id. */ // @ApiMember(DataType="Guid", Description="Guid representing the projects contact customer group Id.", Name="CustomerGroupId", ParameterType="query") public CustomerGroupId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'GetProjectContacts'; } public getMethod() { return 'GET'; } public createResponse() { return new ProjectContactModel(); } }