Platform API

<back to all web services

AddOrUpdateUserProfile

Updates a Users Profile information'

Requires Authentication
The following routes are available for this service:
PUT/api/profiles/{UserProfileId}
POST/api/profiles
import 'package:servicestack/servicestack.dart';

class UserProfileSummaryModel implements IConvertible
{
    /**
    * User Profile Id
    */
    // @ApiMember(DataType="Guid", Description="User Profile Id", Name="UserProfileId")
    String? UserProfileId;

    /**
    * User linked to the profile
    */
    // @ApiMember(DataType="Guid", Description="User linked to the profile", Name="UserId")
    String? UserId;

    /**
    * Contact linked to the profile
    */
    // @ApiMember(DataType="Guid", Description="Contact linked to the profile", Name="ContactId")
    String? ContactId;

    /**
    * User linked to the profile
    */
    // @ApiMember(DataType="string", Description="User linked to the profile", Name="UserName")
    String? UserName;

    /**
    * User Profile Name
    */
    // @ApiMember(DataType="string", Description="User Profile Name", Name="ProfileName")
    String? ProfileName;

    /**
    * Full name of the contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Full name of the contact linked to the profile", Name="ContactFullName")
    String? ContactFullName;

    /**
    * Email Address of the contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Email Address of the contact linked to the profile", Name="EmailAddress")
    String? EmailAddress;

    /**
    * Email signature of the contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Email signature of the contact linked to the profile", Name="EmailSignature")
    String? EmailSignature;

    /**
    * Mobile number of the contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Mobile number of the contact linked to the profile", Name="MobileNumber")
    String? MobileNumber;

    /**
    * Phone number of the contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Phone number of the contact linked to the profile", Name="PhoneNumber")
    String? PhoneNumber;

    /**
    * Type of contact (person, organisation etc.) linked to the profile
    */
    // @ApiMember(DataType="string", Description="Type of contact (person, organisation etc.) linked to the profile", Name="ContactTypeId")
    String? ContactTypeId;

    /**
    * Type of contact (person, organisation etc.) linked to the profile
    */
    // @ApiMember(DataType="string", Description="Type of contact (person, organisation etc.) linked to the profile", Name="ContactTypeName")
    String? ContactTypeName;

    /**
    * First name of the contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="First name of the contact linked to the profile", Name="FirstName")
    String? FirstName;

    /**
    * Surname of the contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Surname of the contact linked to the profile", Name="Surname")
    String? Surname;

    /**
    * Title of contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Title of contact linked to the profile", Name="Title")
    String? Title;

    /**
    * Legal name of contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Legal name of contact linked to the profile", Name="LegalName")
    String? LegalName;

    /**
    * Trading name of contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Trading name of contact linked to the profile", Name="TradingName")
    String? TradingName;

    /**
    * Australian Business Number
    */
    // @ApiMember(DataType="string", Description="Australian Business Number", Name="Abn", ParameterType="query")
    String? Abn;

    /**
    * Australian Company Number
    */
    // @ApiMember(DataType="string", Description="Australian Company Number", Name="Acn", ParameterType="query")
    String? Acn;

    /**
    * Australian Registered Body Number
    */
    // @ApiMember(DataType="string", Description="Australian Registered Body Number", Name="Arbn", ParameterType="query")
    String? Arbn;

    /**
    * Indicates if the Contact is registered for GST.
    */
    // @ApiMember(DataType="bool", Description="Indicates if the Contact is registered for GST.", Name="GstRegistered", ParameterType="query")
    bool? GstRegistered;

    /**
    * True if english is a secondary language for the contact.
    */
    // @ApiMember(DataType="bool", Description="True if english is a secondary language for the contact.", Name="ESL", ParameterType="query")
    bool? ESL;

    /**
    * Language that is the primary language for the contact.
    */
    // @ApiMember(DataType="string", Description="Language that is the primary language for the contact.", Name="Language", ParameterType="query")
    String? Language;

    /**
    * True if an interpreter is required.
    */
    // @ApiMember(DataType="bool", Description="True if an interpreter is required.", Name="InterpreterRequired", ParameterType="query")
    bool? InterpreterRequired;

    /**
    * Licensee specific notes about the contact.
    */
    // @ApiMember(DataType="string", Description="Licensee specific notes about the contact.", Name="LicenseeNotes", ParameterType="query")
    String? LicenseeNotes;

    /**
    * Profile photo of contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Profile photo of contact linked to the profile", Name="ProfilePhotoUrl")
    String? ProfilePhotoUrl;

    /**
    * Thumbnail photo of contact linked to the profile
    */
    // @ApiMember(DataType="string", Description="Thumbnail photo of contact linked to the profile", Name="ProfilePhotoThumbnailUrl")
    String? ProfilePhotoThumbnailUrl;

    /**
    * Profile photo id of contact linked to the profile
    */
    // @ApiMember(DataType="Guid", Description="Profile photo id of contact linked to the profile", Name="ProfileImageId")
    String? ProfileImageId;

    /**
    * Profile description
    */
    // @ApiMember(DataType="string", Description="Profile description", Name="Description")
    String? Description;

    /**
    * Employment Industry
    */
    // @ApiMember(DataType="string", Description="Employment Industry", Name="EmploymentIndustry")
    String? EmploymentIndustry;

    /**
    * Employment Role
    */
    // @ApiMember(DataType="string", Description="Employment Role", Name="EmploymentRole")
    String? EmploymentRole;

    /**
    * Areas of Work
    */
    // @ApiMember(DataType="string", Description="Areas of Work", Name="EmploymentGeographicArea")
    String? EmploymentGeographicArea;

    /**
    * The contacts timezone.
    */
    // @ApiMember(DataType="Guid", Description="The contacts timezone.", Name="Timezone", ParameterType="query")
    String? Timezone;

    /**
    * Timezone Name
    */
    // @ApiMember(DataType="string", Description="Timezone Name", Name="TimezoneName", ParameterType="query")
    String? TimezoneName;

    /**
    * The primary address of the contact
    */
    // @ApiMember(DataType="string", Description="The primary address of the contact", Name="PrimaryAddress", ParameterType="query")
    String? PrimaryAddress;

    /**
    * Is this an active contact? Or an inactive contact (deleted account)?
    */
    // @ApiMember(DataType="bool", Description="Is this an active contact? Or an inactive contact (deleted account)?", Name="IsActiveContact")
    bool? IsActiveContact;

    UserProfileSummaryModel({this.UserProfileId,this.UserId,this.ContactId,this.UserName,this.ProfileName,this.ContactFullName,this.EmailAddress,this.EmailSignature,this.MobileNumber,this.PhoneNumber,this.ContactTypeId,this.ContactTypeName,this.FirstName,this.Surname,this.Title,this.LegalName,this.TradingName,this.Abn,this.Acn,this.Arbn,this.GstRegistered,this.ESL,this.Language,this.InterpreterRequired,this.LicenseeNotes,this.ProfilePhotoUrl,this.ProfilePhotoThumbnailUrl,this.ProfileImageId,this.Description,this.EmploymentIndustry,this.EmploymentRole,this.EmploymentGeographicArea,this.Timezone,this.TimezoneName,this.PrimaryAddress,this.IsActiveContact});
    UserProfileSummaryModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        UserProfileId = json['UserProfileId'];
        UserId = json['UserId'];
        ContactId = json['ContactId'];
        UserName = json['UserName'];
        ProfileName = json['ProfileName'];
        ContactFullName = json['ContactFullName'];
        EmailAddress = json['EmailAddress'];
        EmailSignature = json['EmailSignature'];
        MobileNumber = json['MobileNumber'];
        PhoneNumber = json['PhoneNumber'];
        ContactTypeId = json['ContactTypeId'];
        ContactTypeName = json['ContactTypeName'];
        FirstName = json['FirstName'];
        Surname = json['Surname'];
        Title = json['Title'];
        LegalName = json['LegalName'];
        TradingName = json['TradingName'];
        Abn = json['Abn'];
        Acn = json['Acn'];
        Arbn = json['Arbn'];
        GstRegistered = json['GstRegistered'];
        ESL = json['ESL'];
        Language = json['Language'];
        InterpreterRequired = json['InterpreterRequired'];
        LicenseeNotes = json['LicenseeNotes'];
        ProfilePhotoUrl = json['ProfilePhotoUrl'];
        ProfilePhotoThumbnailUrl = json['ProfilePhotoThumbnailUrl'];
        ProfileImageId = json['ProfileImageId'];
        Description = json['Description'];
        EmploymentIndustry = json['EmploymentIndustry'];
        EmploymentRole = json['EmploymentRole'];
        EmploymentGeographicArea = json['EmploymentGeographicArea'];
        Timezone = json['Timezone'];
        TimezoneName = json['TimezoneName'];
        PrimaryAddress = json['PrimaryAddress'];
        IsActiveContact = json['IsActiveContact'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'UserProfileId': UserProfileId,
        'UserId': UserId,
        'ContactId': ContactId,
        'UserName': UserName,
        'ProfileName': ProfileName,
        'ContactFullName': ContactFullName,
        'EmailAddress': EmailAddress,
        'EmailSignature': EmailSignature,
        'MobileNumber': MobileNumber,
        'PhoneNumber': PhoneNumber,
        'ContactTypeId': ContactTypeId,
        'ContactTypeName': ContactTypeName,
        'FirstName': FirstName,
        'Surname': Surname,
        'Title': Title,
        'LegalName': LegalName,
        'TradingName': TradingName,
        'Abn': Abn,
        'Acn': Acn,
        'Arbn': Arbn,
        'GstRegistered': GstRegistered,
        'ESL': ESL,
        'Language': Language,
        'InterpreterRequired': InterpreterRequired,
        'LicenseeNotes': LicenseeNotes,
        'ProfilePhotoUrl': ProfilePhotoUrl,
        'ProfilePhotoThumbnailUrl': ProfilePhotoThumbnailUrl,
        'ProfileImageId': ProfileImageId,
        'Description': Description,
        'EmploymentIndustry': EmploymentIndustry,
        'EmploymentRole': EmploymentRole,
        'EmploymentGeographicArea': EmploymentGeographicArea,
        'Timezone': Timezone,
        'TimezoneName': TimezoneName,
        'PrimaryAddress': PrimaryAddress,
        'IsActiveContact': IsActiveContact
    };

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

class LocationCoordinatesModel implements IConvertible
{
    /**
    * The latitude of an address - geographic coordinates specifying the north-south position of a point on the Earth's surface.
    */
    // @ApiMember(Description="The latitude of an address - geographic coordinates specifying the north-south position of a point on the Earth's surface.", ParameterType="query")
    double? Latitude;

    /**
    * The longitude of an address - geographic coordinates specifying the east-west position of a point on the Earth's surface.
    */
    // @ApiMember(Description="The longitude of an address - geographic coordinates specifying the east-west position of a point on the Earth's surface.", ParameterType="query")
    double? Longitude;

    /**
    * The altitude of an address - the altitude above sea level."
    */
    // @ApiMember(Description="The altitude of an address - the altitude above sea level.\"", ParameterType="query")
    double? Altitude;

    /**
    * Accuracy of the latitude and longitude.
    */
    // @ApiMember(Description="Accuracy of the latitude and longitude.", ParameterType="query")
    double? Accuracy;

    /**
    * Accurancy of the Altitude.
    */
    // @ApiMember(Description="Accurancy of the Altitude.", ParameterType="query")
    double? AltitudeAccuracy;

    /**
    * Direction you are heading.
    */
    // @ApiMember(Description="Direction you are heading.", ParameterType="query")
    double? Heading;

    /**
    * Speed you are going.
    */
    // @ApiMember(Description="Speed you are going.", ParameterType="query")
    double? Speed;

    /**
    * Speed your altitude is ascending/descending at.
    */
    // @ApiMember(Description="Speed your altitude is ascending/descending at.", ParameterType="query")
    double? VerticalSpeed;

    LocationCoordinatesModel({this.Latitude,this.Longitude,this.Altitude,this.Accuracy,this.AltitudeAccuracy,this.Heading,this.Speed,this.VerticalSpeed});
    LocationCoordinatesModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Latitude = JsonConverters.toDouble(json['Latitude']);
        Longitude = JsonConverters.toDouble(json['Longitude']);
        Altitude = JsonConverters.toDouble(json['Altitude']);
        Accuracy = JsonConverters.toDouble(json['Accuracy']);
        AltitudeAccuracy = JsonConverters.toDouble(json['AltitudeAccuracy']);
        Heading = JsonConverters.toDouble(json['Heading']);
        Speed = JsonConverters.toDouble(json['Speed']);
        VerticalSpeed = JsonConverters.toDouble(json['VerticalSpeed']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Latitude': Latitude,
        'Longitude': Longitude,
        'Altitude': Altitude,
        'Accuracy': Accuracy,
        'AltitudeAccuracy': AltitudeAccuracy,
        'Heading': Heading,
        'Speed': Speed,
        'VerticalSpeed': VerticalSpeed
    };

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

class AddressModel implements IConvertible
{
    /**
    * The distance between this project and another specified set of gps coordinates.
    */
    // @ApiMember(DataType="double", Description="The distance between this project and another specified set of gps coordinates.", Name="DistanceAway", ParameterType="body")
    double? DistanceAway;

    /**
    * The latitude of an address - geographic coordinates specifying the north-south position of a point on the Earth's surface.
    */
    // @ApiMember(DataType="Double?", Description="The latitude of an address - geographic coordinates specifying the north-south position of a point on the Earth's surface.", Name="Latitude", ParameterType="body")
    double? Latitude;

    /**
    * The longitude of an address - geographic coordinates specifying the east-west position of a point on the Earth's surface.
    */
    // @ApiMember(DataType="Double?", Description="The longitude of an address - geographic coordinates specifying the east-west position of a point on the Earth's surface.", Name="Longitude", ParameterType="body")
    double? Longitude;

    /**
    * Address Format Id Guid - this will be determined by the service.
    */
    // @ApiMember(DataType="Guid", Description="Address Format Id Guid - this will be determined by the service.", Name="AddressFormatId", ParameterType="body")
    String? AddressFormatId;

    /**
    * Suburb Id Guid - this will attempt to be determined by the SuburbName, StateShortName and Postcode entered.
    */
    // @ApiMember(DataType="Guid", Description="Suburb Id Guid - this will attempt to be determined by the SuburbName, StateShortName and Postcode entered.", Name="SuburbId", ParameterType="body")
    String? SuburbId;

    /**
    * The suburb name.
    */
    // @ApiMember(DataType="string", Description="The suburb name.", Name="SuburbName", ParameterType="body")
    String? SuburbName;

    /**
    * The shortened State Name e.g Vic for Victoria.
    */
    // @ApiMember(DataType="string", Description="The shortened State Name e.g Vic for Victoria.", Name="StateShortName", ParameterType="body")
    String? StateShortName;

    /**
    * The suburb postcode.
    */
    // @ApiMember(DataType="string", Description="The suburb postcode.", Name="PostCode", ParameterType="body")
    String? PostCode;

    /**
    * Country Id Guid - this will be determined by the CountrName or ISOCountryCode entered.
    */
    // @ApiMember(DataType="Guid", Description="Country Id Guid - this will be determined by the CountrName or ISOCountryCode entered.", Name="CountryId", ParameterType="body")
    String? CountryId;

    /**
    * the name of the country the address is within.
    */
    // @ApiMember(DataType="string", Description="the name of the country the address is within.", Name="CountryName", ParameterType="body")
    String? CountryName;

    /**
    * ISO Country Code.
    */
    // @ApiMember(Description="ISO Country Code.", ParameterType="query")
    String? ISOCountryCode;

    /**
    * The address Lot number.
    */
    // @ApiMember(DataType="string", Description="The address Lot number.", Name="LotNumber", ParameterType="body")
    String? LotNumber;

    /**
    * The address Sub Unit number.
    */
    // @ApiMember(DataType="string", Description="The address Sub Unit number.", Name="SubUnit", ParameterType="body")
    String? SubUnit;

    /**
    * The address building number.
    */
    // @ApiMember(DataType="string", Description="The address building number.", Name="BuildingNumber", ParameterType="body")
    String? BuildingNumber;

    /**
    * The address street number.
    */
    // @ApiMember(DataType="string", Description="The address street number.", Name="StreetNumber", ParameterType="body")
    String? StreetNumber;

    /**
    * The address street name including street type.
    */
    // @ApiMember(DataType="string", Description="The address street name including street type.", Name="StreetName", ParameterType="body")
    String? StreetName;

    /**
    * A formatted address Line 1.
    */
    // @ApiMember(DataType="string", Description="A formatted address Line 1.", Name="AddressLineOne", ParameterType="body")
    String? AddressLineOne;

    /**
    * A formatted address Line 2.
    */
    // @ApiMember(DataType="string", Description="A formatted address Line 2.", Name="AddressLineTwo", ParameterType="body")
    String? AddressLineTwo;

    /**
    * The full address string.
    */
    // @ApiMember(DataType="string", Description="The full address string.", Name="AddressFull", ParameterType="body")
    String? AddressFull;

    /**
    * True if the address is a physical location.
    */
    // @ApiMember(DataType="bool?", Description="True if the address is a physical location.", Name="IsPhysical", ParameterType="body")
    bool? IsPhysical;

    /**
    * Notes about the address.
    */
    // @ApiMember(DataType="string", Description="Notes about the address.", Name="Notes")
    String? Notes;

    /**
    * If true, the address is eligible for having its coordinates calculated/updated.
    */
    // @ApiMember(DataType="bool?", Description="If true, the address is eligible for having its coordinates calculated/updated.", Name="AutoMapCoordinates", ParameterType="body")
    bool? AutoMapCoordinates;

    /**
    * Location Coordinates for the address.
    */
    // @ApiMember(DataType="LocationCoordinates", Description="Location Coordinates for the address.", Name="LocationCoordinates", ParameterType="body")
    LocationCoordinatesModel? LocationCoordinates;

    AddressModel({this.DistanceAway,this.Latitude,this.Longitude,this.AddressFormatId,this.SuburbId,this.SuburbName,this.StateShortName,this.PostCode,this.CountryId,this.CountryName,this.ISOCountryCode,this.LotNumber,this.SubUnit,this.BuildingNumber,this.StreetNumber,this.StreetName,this.AddressLineOne,this.AddressLineTwo,this.AddressFull,this.IsPhysical,this.Notes,this.AutoMapCoordinates,this.LocationCoordinates});
    AddressModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        DistanceAway = JsonConverters.toDouble(json['DistanceAway']);
        Latitude = JsonConverters.toDouble(json['Latitude']);
        Longitude = JsonConverters.toDouble(json['Longitude']);
        AddressFormatId = json['AddressFormatId'];
        SuburbId = json['SuburbId'];
        SuburbName = json['SuburbName'];
        StateShortName = json['StateShortName'];
        PostCode = json['PostCode'];
        CountryId = json['CountryId'];
        CountryName = json['CountryName'];
        ISOCountryCode = json['ISOCountryCode'];
        LotNumber = json['LotNumber'];
        SubUnit = json['SubUnit'];
        BuildingNumber = json['BuildingNumber'];
        StreetNumber = json['StreetNumber'];
        StreetName = json['StreetName'];
        AddressLineOne = json['AddressLineOne'];
        AddressLineTwo = json['AddressLineTwo'];
        AddressFull = json['AddressFull'];
        IsPhysical = json['IsPhysical'];
        Notes = json['Notes'];
        AutoMapCoordinates = json['AutoMapCoordinates'];
        LocationCoordinates = JsonConverters.fromJson(json['LocationCoordinates'],'LocationCoordinatesModel',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'DistanceAway': DistanceAway,
        'Latitude': Latitude,
        'Longitude': Longitude,
        'AddressFormatId': AddressFormatId,
        'SuburbId': SuburbId,
        'SuburbName': SuburbName,
        'StateShortName': StateShortName,
        'PostCode': PostCode,
        'CountryId': CountryId,
        'CountryName': CountryName,
        'ISOCountryCode': ISOCountryCode,
        'LotNumber': LotNumber,
        'SubUnit': SubUnit,
        'BuildingNumber': BuildingNumber,
        'StreetNumber': StreetNumber,
        'StreetName': StreetName,
        'AddressLineOne': AddressLineOne,
        'AddressLineTwo': AddressLineTwo,
        'AddressFull': AddressFull,
        'IsPhysical': IsPhysical,
        'Notes': Notes,
        'AutoMapCoordinates': AutoMapCoordinates,
        'LocationCoordinates': JsonConverters.toJson(LocationCoordinates,'LocationCoordinatesModel',context!)
    };

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

class GeoEstateStageModel implements IConvertible
{
    String? GeoEstateStageId;
    String? GeoEstateId;
    String? Name;
    String? Notes;
    String? RecordStatus;

    GeoEstateStageModel({this.GeoEstateStageId,this.GeoEstateId,this.Name,this.Notes,this.RecordStatus});
    GeoEstateStageModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        GeoEstateStageId = json['GeoEstateStageId'];
        GeoEstateId = json['GeoEstateId'];
        Name = json['Name'];
        Notes = json['Notes'];
        RecordStatus = json['RecordStatus'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'GeoEstateStageId': GeoEstateStageId,
        'GeoEstateId': GeoEstateId,
        'Name': Name,
        'Notes': Notes,
        'RecordStatus': RecordStatus
    };

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

class GeoEstateModel implements IConvertible
{
    String? GeoEstateId;
    String? Name;
    String? Notes;
    String? DeveloperContactId;
    String? DeveloperName;
    String? DeveloperProfilePhotoUrl;
    String? DeveloperProfilePhotoThumbnail;
    String? RecordStatus;
    List<GeoEstateStageModel>? Stages;
    String? CurrentEstateStageId;
    String? CurrentEstateStageName;

    GeoEstateModel({this.GeoEstateId,this.Name,this.Notes,this.DeveloperContactId,this.DeveloperName,this.DeveloperProfilePhotoUrl,this.DeveloperProfilePhotoThumbnail,this.RecordStatus,this.Stages,this.CurrentEstateStageId,this.CurrentEstateStageName});
    GeoEstateModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        GeoEstateId = json['GeoEstateId'];
        Name = json['Name'];
        Notes = json['Notes'];
        DeveloperContactId = json['DeveloperContactId'];
        DeveloperName = json['DeveloperName'];
        DeveloperProfilePhotoUrl = json['DeveloperProfilePhotoUrl'];
        DeveloperProfilePhotoThumbnail = json['DeveloperProfilePhotoThumbnail'];
        RecordStatus = json['RecordStatus'];
        Stages = JsonConverters.fromJson(json['Stages'],'List<GeoEstateStageModel>',context!);
        CurrentEstateStageId = json['CurrentEstateStageId'];
        CurrentEstateStageName = json['CurrentEstateStageName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'GeoEstateId': GeoEstateId,
        'Name': Name,
        'Notes': Notes,
        'DeveloperContactId': DeveloperContactId,
        'DeveloperName': DeveloperName,
        'DeveloperProfilePhotoUrl': DeveloperProfilePhotoUrl,
        'DeveloperProfilePhotoThumbnail': DeveloperProfilePhotoThumbnail,
        'RecordStatus': RecordStatus,
        'Stages': JsonConverters.toJson(Stages,'List<GeoEstateStageModel>',context!),
        'CurrentEstateStageId': CurrentEstateStageId,
        'CurrentEstateStageName': CurrentEstateStageName
    };

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

class GeoLocationModel implements IConvertible
{
    /**
    * The location id
    */
    // @ApiMember(DataType="Guid", Description="The location id", Name="GeoLocationId", ParameterType="query")
    String? GeoLocationId;

    /**
    * The state id
    */
    // @ApiMember(DataType="Guid", Description="The state id", Name="StateId", ParameterType="query")
    String? StateId;

    /**
    * The state name
    */
    // @ApiMember(DataType="string", Description="The state name", Name="StateName", ParameterType="query")
    String? StateName;

    /**
    * The suburb id
    */
    // @ApiMember(DataType="Guid", Description="The suburb id", Name="SuburbId", ParameterType="query")
    String? SuburbId;

    /**
    * The suburb name
    */
    // @ApiMember(DataType="string", Description="The suburb name", Name="SuburbName", ParameterType="query")
    String? SuburbName;

    /**
    * The country id
    */
    // @ApiMember(DataType="Guid", Description="The country id", Name="CountryId", ParameterType="query")
    String? CountryId;

    /**
    * The country name
    */
    // @ApiMember(DataType="string", Description="The country name", Name="CountryName", ParameterType="query")
    String? CountryName;

    /**
    * The lot number
    */
    // @ApiMember(DataType="string", Description="The lot number", Name="LotNumber", ParameterType="query")
    String? LotNumber;

    /**
    * The unit number
    */
    // @ApiMember(DataType="string", Description="The unit number", Name="SubUnit", ParameterType="query")
    String? SubUnit;

    /**
    * The building number
    */
    // @ApiMember(DataType="string", Description="The building number", Name="BuildingNumber", ParameterType="query")
    String? BuildingNumber;

    /**
    * PO Box Number
    */
    // @ApiMember(DataType="string", Description="PO Box Number", Name="PostalDeliveryNumber", ParameterType="query")
    String? PostalDeliveryNumber;

    /**
    * The Street Number
    */
    // @ApiMember(DataType="string", Description="The Street Number", Name="StreetNumber", ParameterType="query")
    String? StreetNumber;

    /**
    * The Street name
    */
    // @ApiMember(DataType="string", Description="The Street name", Name="StreetName", ParameterType="query")
    String? StreetName;

    /**
    * Address Line ONe
    */
    // @ApiMember(DataType="string", Description="Address Line ONe", Name="AddressLineOne", ParameterType="query")
    String? AddressLineOne;

    /**
    * Address Line Two
    */
    // @ApiMember(DataType="string", Description="Address Line Two", Name="AddressLineTwo", ParameterType="query")
    String? AddressLineTwo;

    /**
    * Post code
    */
    // @ApiMember(DataType="string", Description="Post code", Name="PostCode", ParameterType="query")
    String? PostCode;

    /**
    * Is location physical
    */
    // @ApiMember(DataType="bool", Description="Is location physical", Name="IsPhysical", ParameterType="query")
    bool? IsPhysical;

    /**
    * Notes about the location
    */
    // @ApiMember(DataType="string", Description="Notes about the location", Name="Notes", ParameterType="query")
    String? Notes;

    /**
    * The address in full
    */
    // @ApiMember(DataType="string", Description="The address in full", Name="AddressFull", ParameterType="query")
    String? AddressFull;

    /**
    * Address format id.
    */
    // @ApiMember(DataType="Guid", Description="Address format id.", Name="AddressFormatId", ParameterType="query")
    String? AddressFormatId;

    /**
    * Latitude
    */
    // @ApiMember(DataType="double", Description="Latitude", Name="Latitude", ParameterType="query")
    double? Latitude;

    /**
    * Longitude
    */
    // @ApiMember(DataType="double", Description="Longitude", Name="Longitude", ParameterType="query")
    double? Longitude;

    /**
    * Timezone Id
    */
    // @ApiMember(DataType="Guid?", Description="Timezone Id", Name="Timezone", ParameterType="query")
    String? Timezone;

    GeoEstateModel? Estate;
    String? GeoEstateId;
    String? GeoEstateStageId;
    String? GeoEstateStageName;
    bool? IgnoreValidation;

    GeoLocationModel({this.GeoLocationId,this.StateId,this.StateName,this.SuburbId,this.SuburbName,this.CountryId,this.CountryName,this.LotNumber,this.SubUnit,this.BuildingNumber,this.PostalDeliveryNumber,this.StreetNumber,this.StreetName,this.AddressLineOne,this.AddressLineTwo,this.PostCode,this.IsPhysical,this.Notes,this.AddressFull,this.AddressFormatId,this.Latitude,this.Longitude,this.Timezone,this.Estate,this.GeoEstateId,this.GeoEstateStageId,this.GeoEstateStageName,this.IgnoreValidation});
    GeoLocationModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        GeoLocationId = json['GeoLocationId'];
        StateId = json['StateId'];
        StateName = json['StateName'];
        SuburbId = json['SuburbId'];
        SuburbName = json['SuburbName'];
        CountryId = json['CountryId'];
        CountryName = json['CountryName'];
        LotNumber = json['LotNumber'];
        SubUnit = json['SubUnit'];
        BuildingNumber = json['BuildingNumber'];
        PostalDeliveryNumber = json['PostalDeliveryNumber'];
        StreetNumber = json['StreetNumber'];
        StreetName = json['StreetName'];
        AddressLineOne = json['AddressLineOne'];
        AddressLineTwo = json['AddressLineTwo'];
        PostCode = json['PostCode'];
        IsPhysical = json['IsPhysical'];
        Notes = json['Notes'];
        AddressFull = json['AddressFull'];
        AddressFormatId = json['AddressFormatId'];
        Latitude = JsonConverters.toDouble(json['Latitude']);
        Longitude = JsonConverters.toDouble(json['Longitude']);
        Timezone = json['Timezone'];
        Estate = JsonConverters.fromJson(json['Estate'],'GeoEstateModel',context!);
        GeoEstateId = json['GeoEstateId'];
        GeoEstateStageId = json['GeoEstateStageId'];
        GeoEstateStageName = json['GeoEstateStageName'];
        IgnoreValidation = json['IgnoreValidation'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'GeoLocationId': GeoLocationId,
        'StateId': StateId,
        'StateName': StateName,
        'SuburbId': SuburbId,
        'SuburbName': SuburbName,
        'CountryId': CountryId,
        'CountryName': CountryName,
        'LotNumber': LotNumber,
        'SubUnit': SubUnit,
        'BuildingNumber': BuildingNumber,
        'PostalDeliveryNumber': PostalDeliveryNumber,
        'StreetNumber': StreetNumber,
        'StreetName': StreetName,
        'AddressLineOne': AddressLineOne,
        'AddressLineTwo': AddressLineTwo,
        'PostCode': PostCode,
        'IsPhysical': IsPhysical,
        'Notes': Notes,
        'AddressFull': AddressFull,
        'AddressFormatId': AddressFormatId,
        'Latitude': Latitude,
        'Longitude': Longitude,
        'Timezone': Timezone,
        'Estate': JsonConverters.toJson(Estate,'GeoEstateModel',context!),
        'GeoEstateId': GeoEstateId,
        'GeoEstateStageId': GeoEstateStageId,
        'GeoEstateStageName': GeoEstateStageName,
        'IgnoreValidation': IgnoreValidation
    };

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

class ContactAddressModel implements IConvertible
{
    /**
    * Location Details.
    */
    // @ApiMember(DataType="GeoLocationModel", Description="Location Details.", Name="Location", ParameterType="query")
    GeoLocationModel? Location;

    /**
    * Is address postal.
    */
    // @ApiMember(DataType="bool", Description="Is address postal.", Name="IsPostal", ParameterType="query")
    bool? IsPostal;

    /**
    * Is address primary.
    */
    // @ApiMember(DataType="bool", Description="Is address primary.", Name="IsPrimaryLocation", ParameterType="query")
    bool? IsPrimaryLocation;

    /**
    * Is address registered.
    */
    // @ApiMember(DataType="bool", Description="Is address registered.", Name="IsRegisteredLocation", ParameterType="query")
    bool? IsRegisteredLocation;

    /**
    * Contact Address Id.
    */
    // @ApiMember(DataType="Guid", Description="Contact Address Id.", Name="ContactAddressId", ParameterType="query")
    String? ContactAddressId;

    /**
    * Contact Address Suburb Name.
    */
    // @ApiMember(DataType="string", Description="Contact Address Suburb Name.", Name="SuburbName", ParameterType="query")
    String? SuburbName;

    /**
    * Contact Address Street Name.
    */
    // @ApiMember(DataType="string", Description="Contact Address Street Name.", Name="StateName", ParameterType="query")
    String? StateName;

    /**
    * Contact Country Name.
    */
    // @ApiMember(DataType="string", Description="Contact Country Name.", Name="CountryName", ParameterType="query")
    String? CountryName;

    ContactAddressModel({this.Location,this.IsPostal,this.IsPrimaryLocation,this.IsRegisteredLocation,this.ContactAddressId,this.SuburbName,this.StateName,this.CountryName});
    ContactAddressModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Location = JsonConverters.fromJson(json['Location'],'GeoLocationModel',context!);
        IsPostal = json['IsPostal'];
        IsPrimaryLocation = json['IsPrimaryLocation'];
        IsRegisteredLocation = json['IsRegisteredLocation'];
        ContactAddressId = json['ContactAddressId'];
        SuburbName = json['SuburbName'];
        StateName = json['StateName'];
        CountryName = json['CountryName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Location': JsonConverters.toJson(Location,'GeoLocationModel',context!),
        'IsPostal': IsPostal,
        'IsPrimaryLocation': IsPrimaryLocation,
        'IsRegisteredLocation': IsRegisteredLocation,
        'ContactAddressId': ContactAddressId,
        'SuburbName': SuburbName,
        'StateName': StateName,
        'CountryName': CountryName
    };

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

class PhoneModel implements IConvertible
{
    /**
    * Phone Country Code.
    */
    // @ApiMember(DataType="string", Description="Phone Country Code.", Name="CountryCode", ParameterType="query")
    String? CountryCode;

    /**
    * Phone Area Code.
    */
    // @ApiMember(DataType="string", Description="Phone Area Code.", Name="AreaCode", ParameterType="query")
    String? AreaCode;

    /**
    * Phone Local Number.
    */
    // @ApiMember(DataType="string", Description="Phone Local Number.", Name="LocalNumber", ParameterType="query")
    String? LocalNumber;

    PhoneModel({this.CountryCode,this.AreaCode,this.LocalNumber});
    PhoneModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CountryCode = json['CountryCode'];
        AreaCode = json['AreaCode'];
        LocalNumber = json['LocalNumber'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CountryCode': CountryCode,
        'AreaCode': AreaCode,
        'LocalNumber': LocalNumber
    };

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

class ContactDetailModel implements IConvertible
{
    /**
    * Contact Method Id
    */
    // @ApiMember(DataType="Guid", Description="Contact Method Id", Name="ContactMethodId", ParameterType="query")
    String? ContactMethodId;

    /**
    * Contact Method Name
    */
    // @ApiMember(DataType="string", Description="Contact Method Name", Name="ContactMethodName", ParameterType="query")
    String? ContactMethodName;

    /**
    * Contact Address Details
    */
    // @ApiMember(DataType="ContactAddressModel", Description="Contact Address Details", Name="ContactAddress", ParameterType="query")
    ContactAddressModel? ContactAddress;

    /**
    * Contact Phone Details
    */
    // @ApiMember(DataType="PhoneModel", Description="Contact Phone Details", Name="ContactPhone", ParameterType="query")
    PhoneModel? ContactPhone;

    /**
    * Country id
    */
    // @ApiMember(DataType="Guid", Description="Country id", Name="CountryId", ParameterType="query")
    String? CountryId;

    /**
    * Contact Details
    */
    // @ApiMember(DataType="string", Description="Contact Details", Name="ContactDetails", ParameterType="query")
    String? ContactDetails;

    /**
    * Notes
    */
    // @ApiMember(DataType="string", Description="Notes", Name="Notes", ParameterType="query")
    String? Notes;

    /**
    * Contact Details Code
    */
    // @ApiMember(DataType="string", Description="Contact Details Code", Name="ContactDetailsCode", ParameterType="query")
    String? ContactDetailsCode;

    /**
    * Order of Contact Method Id
    */
    // @ApiMember(DataType="int", Description="Order of Contact Method Id", Name="OrderContactMethod", ParameterType="query")
    int? OrderContactMethod;

    /**
    * Contact Method Id
    */
    // @ApiMember(DataType="bool", Description="Contact Method Id", Name="IsPrimaryContactMethod", ParameterType="query")
    bool? IsPrimaryContactMethod;

    /**
    * Is contact details an address
    */
    // @ApiMember(DataType="bool", Description="Is contact details an address", Name="IsAddress", ParameterType="query")
    bool? IsAddress;

    /**
    * Contact Contact Detail Id
    */
    // @ApiMember(DataType="Guid", Description="Contact Contact Detail Id", Name="ContactContactDetailId", ParameterType="query")
    String? ContactContactDetailId;

    /**
    * Contact Id
    */
    // @ApiMember(DataType="Guid", Description="Contact Id", Name="ContactId", ParameterType="query")
    String? ContactId;

    /**
    * Contact Details Id
    */
    // @ApiMember(DataType="Guid", Description="Contact Details Id", Name="ContactDetailId", ParameterType="query")
    String? ContactDetailId;

    /**
    * Is contact details a primary location
    */
    // @ApiMember(DataType="bool", Description="Is contact details a primary location", Name="IsPrimaryLocation", ParameterType="query")
    bool? IsPrimaryLocation;

    /**
    * Is contact details a registered location
    */
    // @ApiMember(DataType="bool", Description="Is contact details a registered location", Name="IsRegisteredLocation", ParameterType="query")
    bool? IsRegisteredLocation;

    /**
    * Is contact details a postal address
    */
    // @ApiMember(DataType="bool", Description="Is contact details a postal address", Name="IsPostal", ParameterType="query")
    bool? IsPostal;

    /**
    * Is contact details a phone number
    */
    // @ApiMember(DataType="bool", Description="Is contact details a phone number", Name="IsPhone", ParameterType="query")
    bool? IsPhone;

    /**
    * Email Signature Id
    */
    // @ApiMember(DataType="Guid", Description="Email Signature Id", Name="EmailSignatureId", ParameterType="query")
    String? EmailSignatureId;

    /**
    * Email Signature HTML
    */
    // @ApiMember(DataType="string", Description="Email Signature HTML", Name="EmailSignatureHTML", ParameterType="query")
    String? EmailSignatureHTML;

    /**
    * Email Signature Text
    */
    // @ApiMember(DataType="string", Description="Email Signature Text", Name="EmailSignatureText", ParameterType="query")
    String? EmailSignatureText;

    /**
    * API Key from Framework
    */
    // @ApiMember(DataType="string", Description="API Key from Framework", Name="ApiFrameworkAlternateKey", ParameterType="query")
    String? ApiFrameworkAlternateKey;

    ContactDetailModel({this.ContactMethodId,this.ContactMethodName,this.ContactAddress,this.ContactPhone,this.CountryId,this.ContactDetails,this.Notes,this.ContactDetailsCode,this.OrderContactMethod,this.IsPrimaryContactMethod,this.IsAddress,this.ContactContactDetailId,this.ContactId,this.ContactDetailId,this.IsPrimaryLocation,this.IsRegisteredLocation,this.IsPostal,this.IsPhone,this.EmailSignatureId,this.EmailSignatureHTML,this.EmailSignatureText,this.ApiFrameworkAlternateKey});
    ContactDetailModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ContactMethodId = json['ContactMethodId'];
        ContactMethodName = json['ContactMethodName'];
        ContactAddress = JsonConverters.fromJson(json['ContactAddress'],'ContactAddressModel',context!);
        ContactPhone = JsonConverters.fromJson(json['ContactPhone'],'PhoneModel',context!);
        CountryId = json['CountryId'];
        ContactDetails = json['ContactDetails'];
        Notes = json['Notes'];
        ContactDetailsCode = json['ContactDetailsCode'];
        OrderContactMethod = json['OrderContactMethod'];
        IsPrimaryContactMethod = json['IsPrimaryContactMethod'];
        IsAddress = json['IsAddress'];
        ContactContactDetailId = json['ContactContactDetailId'];
        ContactId = json['ContactId'];
        ContactDetailId = json['ContactDetailId'];
        IsPrimaryLocation = json['IsPrimaryLocation'];
        IsRegisteredLocation = json['IsRegisteredLocation'];
        IsPostal = json['IsPostal'];
        IsPhone = json['IsPhone'];
        EmailSignatureId = json['EmailSignatureId'];
        EmailSignatureHTML = json['EmailSignatureHTML'];
        EmailSignatureText = json['EmailSignatureText'];
        ApiFrameworkAlternateKey = json['ApiFrameworkAlternateKey'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ContactMethodId': ContactMethodId,
        'ContactMethodName': ContactMethodName,
        'ContactAddress': JsonConverters.toJson(ContactAddress,'ContactAddressModel',context!),
        'ContactPhone': JsonConverters.toJson(ContactPhone,'PhoneModel',context!),
        'CountryId': CountryId,
        'ContactDetails': ContactDetails,
        'Notes': Notes,
        'ContactDetailsCode': ContactDetailsCode,
        'OrderContactMethod': OrderContactMethod,
        'IsPrimaryContactMethod': IsPrimaryContactMethod,
        'IsAddress': IsAddress,
        'ContactContactDetailId': ContactContactDetailId,
        'ContactId': ContactId,
        'ContactDetailId': ContactDetailId,
        'IsPrimaryLocation': IsPrimaryLocation,
        'IsRegisteredLocation': IsRegisteredLocation,
        'IsPostal': IsPostal,
        'IsPhone': IsPhone,
        'EmailSignatureId': EmailSignatureId,
        'EmailSignatureHTML': EmailSignatureHTML,
        'EmailSignatureText': EmailSignatureText,
        'ApiFrameworkAlternateKey': ApiFrameworkAlternateKey
    };

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

class UserProfileModel extends UserProfileSummaryModel implements IConvertible
{
    /**
    * Contact Date of Birth (when person type)
    */
    // @ApiMember(DataType="DateTime?", Description="Contact Date of Birth (when person type)", Name="BirthDate", ParameterType="query")
    DateTime? BirthDate;

    /**
    * Contact marital status (when person type)
    */
    // @ApiMember(DataType="string", Description="Contact marital status (when person type)", Name="MaritalStatusName", ParameterType="query")
    String? MaritalStatusName;

    /**
    * Contact gender (when person type)
    */
    // @ApiMember(DataType="string", Description="Contact gender (when person type)", Name="GenderName", ParameterType="query")
    String? GenderName;

    /**
    * The Gender Guid of the contact.
    */
    // @ApiMember(DataType="Guid", Description="The Gender Guid of the contact.", Name="GenderId", ParameterType="query")
    String? GenderId;

    /**
    * All contact details of the contact
    */
    // @ApiMember(DataType="List<ContactDetailModel>", Description="All contact details of the contact", Name="ContactDetails", ParameterType="query")
    List<ContactDetailModel>? ContactDetails;

    /**
    * Primary Street Address
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Street Address", Name="PrimaryStreetAddress ")
    ContactDetailModel? PrimaryStreetAddress;

    /**
    * Primary Postal Address
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Postal Address", Name="PrimaryPostalAddress ")
    ContactDetailModel? PrimaryPostalAddress;

    /**
    * Primary Registered Address
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Registered Address", Name="PrimaryRegisteredAddress ")
    ContactDetailModel? PrimaryRegisteredAddress;

    /**
    * Primary Email Address
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Email Address", Name="PrimaryEmail ")
    ContactDetailModel? PrimaryEmail;

    /**
    * Primary Mobile Number
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Mobile Number", Name="PrimaryMobile")
    ContactDetailModel? PrimaryMobile;

    /**
    * Primary Non-Mobile Number
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Non-Mobile Number", Name="PrimaryPhone")
    ContactDetailModel? PrimaryPhone;

    /**
    * Primary Fax Number
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Fax Number", Name="PrimaryFax")
    ContactDetailModel? PrimaryFax;

    /**
    * Primary Web Address
    */
    // @ApiMember(DataType="ContactDetail", Description="Primary Web Address", Name="PrimaryWeb")
    ContactDetailModel? PrimaryWeb;

    /**
    * Social Media Twitter
    */
    // @ApiMember(DataType="ContactDetail", Description="Social Media Twitter", Name="SocialMediaTwitter")
    ContactDetailModel? SocialMediaTwitter;

    /**
    * Social Media Facebook
    */
    // @ApiMember(DataType="ContactDetail", Description="Social Media Facebook", Name="SocialMediaFacebook")
    ContactDetailModel? SocialMediaFacebook;

    /**
    * Social Media Instagram
    */
    // @ApiMember(DataType="ContactDetail", Description="Social Media Instagram", Name="SocialMediaInstagram")
    ContactDetailModel? SocialMediaInstagram;

    /**
    * Have all connections to the contact been removed?
    */
    // @ApiMember(DataType="bool", Description="Have all connections to the contact been removed?", Name="IsRemovedContact")
    bool? IsRemovedContact;

    /**
    * True if this is the users default profile.
    */
    // @ApiMember(DataType="bool", Description="True if this is the users default profile.", Name="IsDefault", ParameterType="query")
    bool? IsDefault;

    /**
    * 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")
    bool? IsEmailEditable;

    /**
    * 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")
    String? PrimaryImageContent;

    /**
    * 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")
    String? PrimaryImageContentType;

    /**
    * Primary image file name
    */
    // @ApiMember(DataType="string", Description="Primary image file name", Name="PrimaryImageFileName")
    String? PrimaryImageFileName;

    UserProfileModel({this.BirthDate,this.MaritalStatusName,this.GenderName,this.GenderId,this.ContactDetails,this.PrimaryStreetAddress,this.PrimaryPostalAddress,this.PrimaryRegisteredAddress,this.PrimaryEmail,this.PrimaryMobile,this.PrimaryPhone,this.PrimaryFax,this.PrimaryWeb,this.SocialMediaTwitter,this.SocialMediaFacebook,this.SocialMediaInstagram,this.IsRemovedContact,this.IsDefault,this.IsEmailEditable,this.PrimaryImageContent,this.PrimaryImageContentType,this.PrimaryImageFileName});
    UserProfileModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        BirthDate = JsonConverters.fromJson(json['BirthDate'],'DateTime',context!);
        MaritalStatusName = json['MaritalStatusName'];
        GenderName = json['GenderName'];
        GenderId = json['GenderId'];
        ContactDetails = JsonConverters.fromJson(json['ContactDetails'],'List<ContactDetailModel>',context!);
        PrimaryStreetAddress = JsonConverters.fromJson(json['PrimaryStreetAddress'],'ContactDetailModel',context!);
        PrimaryPostalAddress = JsonConverters.fromJson(json['PrimaryPostalAddress'],'ContactDetailModel',context!);
        PrimaryRegisteredAddress = JsonConverters.fromJson(json['PrimaryRegisteredAddress'],'ContactDetailModel',context!);
        PrimaryEmail = JsonConverters.fromJson(json['PrimaryEmail'],'ContactDetailModel',context!);
        PrimaryMobile = JsonConverters.fromJson(json['PrimaryMobile'],'ContactDetailModel',context!);
        PrimaryPhone = JsonConverters.fromJson(json['PrimaryPhone'],'ContactDetailModel',context!);
        PrimaryFax = JsonConverters.fromJson(json['PrimaryFax'],'ContactDetailModel',context!);
        PrimaryWeb = JsonConverters.fromJson(json['PrimaryWeb'],'ContactDetailModel',context!);
        SocialMediaTwitter = JsonConverters.fromJson(json['SocialMediaTwitter'],'ContactDetailModel',context!);
        SocialMediaFacebook = JsonConverters.fromJson(json['SocialMediaFacebook'],'ContactDetailModel',context!);
        SocialMediaInstagram = JsonConverters.fromJson(json['SocialMediaInstagram'],'ContactDetailModel',context!);
        IsRemovedContact = json['IsRemovedContact'];
        IsDefault = json['IsDefault'];
        IsEmailEditable = json['IsEmailEditable'];
        PrimaryImageContent = json['PrimaryImageContent'];
        PrimaryImageContentType = json['PrimaryImageContentType'];
        PrimaryImageFileName = json['PrimaryImageFileName'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'BirthDate': JsonConverters.toJson(BirthDate,'DateTime',context!),
        'MaritalStatusName': MaritalStatusName,
        'GenderName': GenderName,
        'GenderId': GenderId,
        'ContactDetails': JsonConverters.toJson(ContactDetails,'List<ContactDetailModel>',context!),
        'PrimaryStreetAddress': JsonConverters.toJson(PrimaryStreetAddress,'ContactDetailModel',context!),
        'PrimaryPostalAddress': JsonConverters.toJson(PrimaryPostalAddress,'ContactDetailModel',context!),
        'PrimaryRegisteredAddress': JsonConverters.toJson(PrimaryRegisteredAddress,'ContactDetailModel',context!),
        'PrimaryEmail': JsonConverters.toJson(PrimaryEmail,'ContactDetailModel',context!),
        'PrimaryMobile': JsonConverters.toJson(PrimaryMobile,'ContactDetailModel',context!),
        'PrimaryPhone': JsonConverters.toJson(PrimaryPhone,'ContactDetailModel',context!),
        'PrimaryFax': JsonConverters.toJson(PrimaryFax,'ContactDetailModel',context!),
        'PrimaryWeb': JsonConverters.toJson(PrimaryWeb,'ContactDetailModel',context!),
        'SocialMediaTwitter': JsonConverters.toJson(SocialMediaTwitter,'ContactDetailModel',context!),
        'SocialMediaFacebook': JsonConverters.toJson(SocialMediaFacebook,'ContactDetailModel',context!),
        'SocialMediaInstagram': JsonConverters.toJson(SocialMediaInstagram,'ContactDetailModel',context!),
        'IsRemovedContact': IsRemovedContact,
        'IsDefault': IsDefault,
        'IsEmailEditable': IsEmailEditable,
        'PrimaryImageContent': PrimaryImageContent,
        'PrimaryImageContentType': PrimaryImageContentType,
        'PrimaryImageFileName': PrimaryImageFileName
    });

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

/**
* Updates a Users Profile information'
*/
// @Api(Description="Updates a Users Profile information'")
class AddOrUpdateUserProfile implements IConvertible
{
    String? UserProfileId;
    UserProfileModel? UserProfile;

    AddOrUpdateUserProfile({this.UserProfileId,this.UserProfile});
    AddOrUpdateUserProfile.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class ContactDetailModel implements IConvertible
{
    /**
    * Id of the Contact Method
    */
    // @ApiMember(DataType="Guid", Description="Id of the Contact Method", Name="ContactMethodId", ParameterType="body")
    String? ContactMethodId;

    /**
    * Contact Method Name
    */
    // @ApiMember(DataType="string", Description="Contact Method Name", Name="ContactMethodName", ParameterType="body")
    String? ContactMethodName;

    /**
    * 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")
    ContactAddressModel? ContactAddress;

    /**
    * 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")
    PhoneModel? ContactPhone;

    /**
    * Id of the country
    */
    // @ApiMember(DataType="Guid?", Description="Id of the country", Name="CountryId", ParameterType="body")
    String? CountryId;

    /**
    * A summary string representing the contact details
    */
    // @ApiMember(DataType="string", Description="A summary string representing the contact details", Name="ContactDetails", ParameterType="body")
    String? ContactDetails;

    /**
    * Notes about the contact details
    */
    // @ApiMember(DataType="string", Description="Notes about the contact details", Name="Notes", ParameterType="body")
    String? Notes;

    /**
    * 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")
    String? ContactDetailsCode;

    /**
    * Order number of the contact method
    */
    // @ApiMember(DataType="int", Description="Order number of the contact method", Name="OrderContactMethod", ParameterType="body")
    int? OrderContactMethod;

    /**
    * True if this is the primary contact method
    */
    // @ApiMember(DataType="bool", Description="True if this is the primary contact method", Name="IsPrimaryContactMethod", ParameterType="body")
    bool? IsPrimaryContactMethod;

    /**
    * True if this contact method is an address
    */
    // @ApiMember(DataType="bool", Description="True if this contact method is an address", Name="IsAddress", ParameterType="body")
    bool? IsAddress;

    ContactDetailModel({this.ContactMethodId,this.ContactMethodName,this.ContactAddress,this.ContactPhone,this.CountryId,this.ContactDetails,this.Notes,this.ContactDetailsCode,this.OrderContactMethod,this.IsPrimaryContactMethod,this.IsAddress});
    ContactDetailModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ContactMethodId = json['ContactMethodId'];
        ContactMethodName = json['ContactMethodName'];
        ContactAddress = JsonConverters.fromJson(json['ContactAddress'],'ContactAddressModel',context!);
        ContactPhone = JsonConverters.fromJson(json['ContactPhone'],'PhoneModel',context!);
        CountryId = json['CountryId'];
        ContactDetails = json['ContactDetails'];
        Notes = json['Notes'];
        ContactDetailsCode = json['ContactDetailsCode'];
        OrderContactMethod = json['OrderContactMethod'];
        IsPrimaryContactMethod = json['IsPrimaryContactMethod'];
        IsAddress = json['IsAddress'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ContactMethodId': ContactMethodId,
        'ContactMethodName': ContactMethodName,
        'ContactAddress': JsonConverters.toJson(ContactAddress,'ContactAddressModel',context!),
        'ContactPhone': JsonConverters.toJson(ContactPhone,'PhoneModel',context!),
        'CountryId': CountryId,
        'ContactDetails': ContactDetails,
        'Notes': Notes,
        'ContactDetailsCode': ContactDetailsCode,
        'OrderContactMethod': OrderContactMethod,
        'IsPrimaryContactMethod': IsPrimaryContactMethod,
        'IsAddress': IsAddress
    };

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

class ContactAddressModel implements IConvertible
{
    /**
    * Address Details
    */
    // @ApiMember(DataType="AddressModel", Description="Address Details", Name="Address", ParameterType="body")
    AddressModel? Address;

    /**
    * True if this is a postal address.
    */
    // @ApiMember(DataType="bool", Description="True if this is a postal address.", Name="IsPostal", ParameterType="body")
    bool? IsPostal;

    /**
    * True if this is the primary address.
    */
    // @ApiMember(DataType="bool", Description="True if this is the primary address.", Name="IsPrimaryLocation", ParameterType="body")
    bool? IsPrimaryLocation;

    /**
    * True if this address is the registered tax address.
    */
    // @ApiMember(DataType="bool", Description="True if this address is the registered tax address.", Name="IsRegisteredLocation", ParameterType="body")
    bool? IsRegisteredLocation;

    /**
    * Suburb Name
    */
    // @ApiMember(DataType="string", Description="Suburb Name", Name="SuburbName", ParameterType="body")
    String? SuburbName;

    /**
    * State Name
    */
    // @ApiMember(DataType="string", Description="State Name", Name="StateName", ParameterType="body")
    String? StateName;

    /**
    * Country Name
    */
    // @ApiMember(DataType="string", Description="Country Name", Name="CountryName", ParameterType="body")
    String? CountryName;

    ContactAddressModel({this.Address,this.IsPostal,this.IsPrimaryLocation,this.IsRegisteredLocation,this.SuburbName,this.StateName,this.CountryName});
    ContactAddressModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Address = JsonConverters.fromJson(json['Address'],'AddressModel',context!);
        IsPostal = json['IsPostal'];
        IsPrimaryLocation = json['IsPrimaryLocation'];
        IsRegisteredLocation = json['IsRegisteredLocation'];
        SuburbName = json['SuburbName'];
        StateName = json['StateName'];
        CountryName = json['CountryName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Address': JsonConverters.toJson(Address,'AddressModel',context!),
        'IsPostal': IsPostal,
        'IsPrimaryLocation': IsPrimaryLocation,
        'IsRegisteredLocation': IsRegisteredLocation,
        'SuburbName': SuburbName,
        'StateName': StateName,
        'CountryName': CountryName
    };

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

class PhoneModel implements IConvertible
{
    /**
    * Country Code
    */
    // @ApiMember(DataType="string", Description="Country Code", Name="CountryCode", ParameterType="body")
    String? CountryCode;

    /**
    * Area Code
    */
    // @ApiMember(DataType="string", Description="Area Code", Name="AreaCode", ParameterType="body")
    String? AreaCode;

    /**
    * Local Number
    */
    // @ApiMember(DataType="string", Description="Local Number", Name="LocalNumber", ParameterType="body")
    String? LocalNumber;

    PhoneModel({this.CountryCode,this.AreaCode,this.LocalNumber});
    PhoneModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CountryCode = json['CountryCode'];
        AreaCode = json['AreaCode'];
        LocalNumber = json['LocalNumber'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CountryCode': CountryCode,
        'AreaCode': AreaCode,
        'LocalNumber': LocalNumber
    };

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

class AddOrUpdateUserProfileResponse implements IConvertible
{
    List<ResponseError>? Errors;
    /**
    * Guid representing the object that is the User Profile Id in Eros.
    */
    // @ApiMember(DataType="Guid", Description="Guid representing the object that is the User Profile Id in Eros.", Name="UserProfileId", ParameterType="query")
    String? UserProfileId;

    /**
    * Service Stack Response Status.
    */
    // @ApiMember(DataType="ResponseStatus", Description="Service Stack Response Status.", Name="ResponseStatus", ParameterType="query")
    ResponseStatus? ResponseStatus;

    AddOrUpdateUserProfileResponse({this.Errors,this.UserProfileId,this.ResponseStatus});
    AddOrUpdateUserProfileResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'Errors': JsonConverters.toJson(Errors,'List<ResponseError>',context!),
        'UserProfileId': UserProfileId,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
    'UserProfileSummaryModel': TypeInfo(TypeOf.Class, create:() => UserProfileSummaryModel()),
    'LocationCoordinatesModel': TypeInfo(TypeOf.Class, create:() => LocationCoordinatesModel()),
    'AddressModel': TypeInfo(TypeOf.Class, create:() => AddressModel()),
    'GeoEstateStageModel': TypeInfo(TypeOf.Class, create:() => GeoEstateStageModel()),
    'GeoEstateModel': TypeInfo(TypeOf.Class, create:() => GeoEstateModel()),
    'List<GeoEstateStageModel>': TypeInfo(TypeOf.Class, create:() => <GeoEstateStageModel>[]),
    'GeoLocationModel': TypeInfo(TypeOf.Class, create:() => GeoLocationModel()),
    'ContactAddressModel': TypeInfo(TypeOf.Class, create:() => ContactAddressModel()),
    'PhoneModel': TypeInfo(TypeOf.Class, create:() => PhoneModel()),
    'ContactDetailModel': TypeInfo(TypeOf.Class, create:() => ContactDetailModel()),
    'UserProfileModel': TypeInfo(TypeOf.Class, create:() => UserProfileModel()),
    'List<ContactDetailModel>': TypeInfo(TypeOf.Class, create:() => <ContactDetailModel>[]),
    'AddOrUpdateUserProfile': TypeInfo(TypeOf.Class, create:() => AddOrUpdateUserProfile()),
    'AddOrUpdateUserProfileResponse': TypeInfo(TypeOf.Class, create:() => AddOrUpdateUserProfileResponse()),
});

Dart AddOrUpdateUserProfile DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/profiles HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"UserProfileId":"00000000-0000-0000-0000-000000000000","UserProfile":{"BirthDate":"0001-01-01T00:00:00.0000000","MaritalStatusName":"String","GenderName":"String","GenderId":"00000000000000000000000000000000","ContactDetails":[{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"}],"PrimaryStreetAddress":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"PrimaryPostalAddress":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"PrimaryRegisteredAddress":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"PrimaryEmail":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"PrimaryMobile":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"PrimaryPhone":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"PrimaryFax":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"PrimaryWeb":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"SocialMediaTwitter":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"SocialMediaFacebook":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"SocialMediaInstagram":{"ContactMethodId":"00000000-0000-0000-0000-000000000000","ContactMethodName":"String","ContactAddress":{"Location":{"GeoLocationId":"00000000-0000-0000-0000-000000000000","StateId":"00000000000000000000000000000000","StateName":"String","SuburbId":"00000000000000000000000000000000","SuburbName":"String","CountryId":"00000000000000000000000000000000","CountryName":"String","LotNumber":"String","SubUnit":"String","BuildingNumber":"String","PostalDeliveryNumber":"String","StreetNumber":"String","StreetName":"String","AddressLineOne":"String","AddressLineTwo":"String","PostCode":"String","IsPhysical":false,"Notes":"String","AddressFull":"String","AddressFormatId":"4f7bf5b4-d77c-4ac7-99d6-7a575964480d","Latitude":0,"Longitude":0,"Timezone":"00000000000000000000000000000000","Estate":{"GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","DeveloperContactId":"00000000-0000-0000-0000-000000000000","DeveloperName":"String","DeveloperProfilePhotoUrl":"String","DeveloperProfilePhotoThumbnail":"String","RecordStatus":"String","Stages":[{"GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateId":"00000000-0000-0000-0000-000000000000","Name":"String","Notes":"String","RecordStatus":"String"}],"CurrentEstateStageId":"00000000-0000-0000-0000-000000000000","CurrentEstateStageName":"String"},"GeoEstateId":"00000000-0000-0000-0000-000000000000","GeoEstateStageId":"00000000-0000-0000-0000-000000000000","GeoEstateStageName":"String","IgnoreValidation":false},"IsPostal":false,"IsPrimaryLocation":false,"IsRegisteredLocation":false,"ContactAddressId":"00000000-0000-0000-0000-000000000000","SuburbName":"String","StateName":"String","CountryName":"String"},"ContactPhone":{"CountryCode":"String","AreaCode":"String","LocalNumber":"String"},"CountryId":"00000000000000000000000000000000","ContactDetails":"String","Notes":"String","ContactDetailsCode":"String","OrderContactMethod":0,"IsPrimaryContactMethod":false,"IsAddress":true,"ContactContactDetailId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","ContactDetailId":"00000000-0000-0000-0000-000000000000","IsPrimaryLocation":false,"IsRegisteredLocation":false,"IsPostal":false,"IsPhone":false,"EmailSignatureId":"00000000-0000-0000-0000-000000000000","EmailSignatureHTML":"String","EmailSignatureText":"String","ApiFrameworkAlternateKey":"String"},"IsRemovedContact":false,"IsDefault":false,"IsEmailEditable":false,"PrimaryImageContent":"String","PrimaryImageContentType":"String","PrimaryImageFileName":"String","UserProfileId":"00000000-0000-0000-0000-000000000000","UserId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","UserName":"String","ProfileName":"String","ContactFullName":"String","EmailAddress":"String","EmailSignature":"String","MobileNumber":"String","PhoneNumber":"String","ContactTypeId":"00000000-0000-0000-0000-000000000000","ContactTypeName":"String","FirstName":"String","Surname":"String","Title":"String","LegalName":"String","TradingName":"String","Abn":"String","Acn":"String","Arbn":"String","GstRegistered":false,"ESL":false,"Language":"String","InterpreterRequired":false,"LicenseeNotes":"String","ProfilePhotoUrl":"String","ProfilePhotoThumbnailUrl":"String","ProfileImageId":"00000000-0000-0000-0000-000000000000","Description":"String","EmploymentIndustry":"String","EmploymentRole":"String","EmploymentGeographicArea":"String","Timezone":"00000000-0000-0000-0000-000000000000","TimezoneName":"String","PrimaryAddress":"String","IsActiveContact":false}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"UserProfileId":"00000000-0000-0000-0000-000000000000","ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}