/* Options: Date: 2026-04-04 04:53:07 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: InsertCustomerGroup.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class ContactBanking { public ContactId: string; public BankName: string; public BankLocation: string; public Bsb: string; public AccountNumber: string; public AccountName: string; public TermOfTradeId?: string; public TermOfTradeName: string; public OwnerContactId: string; public RecordStatus: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class UserRole { public ConnectionId: string; public ContactRoleId: string; public ContactId: string; public RoleId: string; public RoleName: string; public StartDate: string; public EndDate?: string; public IsLicenseeRole: boolean; public IsCustomerRole: boolean; public IsPlatformRole: boolean; public IsAdministerContactsRole: boolean; public RolePrimaryImageURL: string; public RolePrimaryImageThumbnailURL: string; public RolePrimaryImageId: string; public ConnectionStatusId: string; public ConnectionStatusName: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class GeoEstateStage { public GeoEstateStageId: string; public GeoEstateId: string; public Name: string; public Notes: string; public RecordStatus: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class GeoEstate { public GeoEstateId: string; public Name: string; public Notes: string; public DeveloperContactId: string; public DeveloperName: string; public DeveloperProfilePhotoUrl: string; public DeveloperProfilePhotoThumbnail: string; public RecordStatus: string; public Stages: GeoEstateStage[]; public CurrentEstateStageId: string; public CurrentEstateStageName: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class GeoLocation { public GeoLocationId: string; public StateId?: string; public StateName: string; public StateNameShort: string; public SuburbId?: string; public SuburbName: string; public CountryId?: string; public CountryName: string; public Timezone?: string; public TimezoneName: string; public LotNumber: string; public SubUnit: string; public BuildingNumber: string; public PostalDeliveryNumber: string; public StreetNumber: string; public StreetName: string; public AddressLineOne: string; public AddressLineTwo: string; public PostCode: string; public IsPhysical: boolean; public Notes: string; public AddressFull: string; public AddressFormatId: string; public PostalDeliveryTypeId?: string; public Latitude: number; public Longitude: number; public Accuracy: number; public DistanceAway: number; public AutoMapCoordinates?: boolean; public IsAddressCleared: boolean; public IsValidated: boolean; public Estate: GeoEstate; public GeoEstateId: string; public GeoEstateStageId: string; public GeoEstateStageName: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ContactAddress { public Location: GeoLocation; public IsPostal: boolean; public IsPrimaryLocation: boolean; public IsRegisteredLocation: boolean; public ContactAddressId: string; public SuburbName: string; public StateName: string; public CountryName: string; public AddressFull: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ContactPhone { public CountryCode: string; public AreaCode: string; public LocalNumber: string; public PhoneNumber: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ContactDetail { public ContactContactDetailId: string; public ContactId: string; public ContactDetailId: string; public ContactMethodId: string; public ContactMethodName: string; public Address: ContactAddress; public Phone: ContactPhone; public CountryId?: string; public ContactDetails: string; public Notes: string; public ContactDetailsCode: string; public OrderContactMethod: number; public IsPrimaryContactMethod: boolean; public IsPrimaryLocation: boolean; public IsRegisteredLocation: boolean; public IsPostal: boolean; public IsAddress: boolean; public IsPhone: boolean; public EmailSignatureId: string; public EmailSignatureHTML: string; public EmailSignatureText: string; public ApiKey: string; public FrameworkAlternateKey: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CustomContentFieldValue { public FieldName: string; public FieldDataTypeId: string; public FieldValue: string; public AlternateKey: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Contact { public ContactId: string; public PrimaryStreetAddressId?: string; public PrimaryPostalAddressId?: string; public PrimaryTaxRegisteredAddressId?: string; public PrimaryNonMobileId?: string; public PrimaryMobileId?: string; public PrimaryEmailId?: string; public Mobile: string; public Phone: string; public PrimaryEmail: string; public PrimaryAddress: string; public PrimaryFaxId?: string; public PrimaryWebId?: string; public PrimarySocialMediaId?: string; public FirstName: string; public MiddleName: string; public Surname: string; public FullName: string; public ShortName: string; public BirthDate?: string; public Title: string; public Salutation: string; public MaritalStatus?: string; public MaritalStatusName: string; public Gender?: string; public GenderName: string; public Abn: string; public Acn: string; public Arbn: string; public ContactBankingDetails: ContactBanking; public LegalName: string; public TradingName: string; public ContactType?: string; public ContactTypeName: string; public ContactTypePhotoUrl: string; public ContactTypePhotoThumbnailUrl: string; public Timezone?: string; public TimezoneName: string; public Description: string; public EmploymentIndustry: string; public EmploymentRole: string; public EmploymentGeographicArea: string; public GstRegistered: boolean; public DriversLicence: string; public ContactGroupIdStaff?: string; public StaffGroupName: string; public ContactGroupIdVendor?: string; public VendorGroupName: string; public ContactGroupIdCustomer?: string; public CustomerGroupName: string; public PrimaryMediaFileId?: string; public ProfilePhotoUrl: string; public ProfilePhotoThumbnailUrl: string; public ProfileImageId: string; public RecordStatus: string; public ConnectionStatusId: string; public SubscriptionAlternateKey: string; public ContactRoles: UserRole[]; public ContactDetails: ContactDetail[]; public CustomContent: CustomContentFieldValue[]; public ConnectedContacts: Contact[]; public CustomContentXML: string; public ContactDetailsXML: string; public ConnectionContactId: string; public ConnectionContactName: string; public UserProfileIdDefault?: string; public UserId: string; public Username: string; public IsRegistered: boolean; public ESL: boolean; public Language: string; public InterpreterRequired: boolean; public LicenseeNotes: string; public Notes: string; public ObjectSubscriptionId: string; public ObjectHash: string; public OwnerContactId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class StringResponse { public Result: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Insert new customer group */ // @Route("/insertcustomergroup") // @Api(Description="Insert new customer group") export class InsertCustomerGroup implements IReturn { public AutoGenerateName: boolean; public CustomerName: string; public Contacts: Contact[]; public ProjectId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'InsertCustomerGroup'; } public getMethod() { return 'POST'; } public createResponse() { return new StringResponse(); } }