| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| SuiteDataSourceInstanceId | body | Guid | Yes | Guid representing the external systems datasource information. |
| AlternateKey | body | string | Yes | The unique key that represents the contact on the external system. |
| ObjectId | body | Guid | No | Guid of the contact object within PSTPF. If ObjectId is known, the external system may pass this instead of the alternate key. |
| IgnoreHash | body | bool | No | If set to true, the object will be updated/refreshed. If false, the hash representation of the Contact model and its data will be compared with the current Contact to determine if there are any changes to save. |
| MarkAsDeleted | body | bool | No | Set this to be true if the contact is to be deleted |
| Contact | body | SubscriptionContactModel | Yes | Object containing all details of the contact to be inserted or updated. |
| LicenseeId | query | Guid | No | |
| SessionId | query | Guid | No |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ValidationErrors | body | List<RuleValidationResult> | No | List of any validation/errors occuring during a method call |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Message | body | Guid | No | Validation/Error message details |
| Key | body | Guid | No | Summary/label of validation/error |
| ErrorCode | body | Guid | No | Key/code representing validation/error |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ContactId | body | Guid | No | Guid of the contact object within PSTPF. |
| ContactType | body | Guid | No | Guid of the Contact Type List Item object within PSTPF. |
| MaritalStatus | body | Guid? | No | Guid of the Marital Status List Item object within PSTPF. |
| Gender | body | Guid? | No | Guid of the Gender List Item object within PSTPF. |
| FirstName | body | string | No | The first given name for the contact. Applies to a person contact type. |
| MiddleName | body | string | No | The middle name(s) for the contact. Applies to a person contact type. |
| Surname | body | string | No | The surname for the contact. Applies to a person contact type. |
| FullName | body | string | No | The full name for the contact. |
| ShortName | body | string | No | A short name for the contact. |
| BirthDate | body | DateTime? | No | The birth date for the contact. Applies to a person contact type. |
| Title | body | string | No | The title for the contact. Applies to a person contact type. |
| Salutation | body | string | No | A salutation for the contact. |
| Abn | body | string | No | The A.B.N for the contact. |
| Acn | body | string | No | The A.C.N for the contact. |
| Arbn | body | string | No | The A.R.B.N for the contact. |
| TradingName | body | string | No | A trading name for the contact. |
| LegalName | body | string | No | A legal name for the contact. |
| Notes | body | string | No | Any notes/description for the contact. |
| EmploymentIndustry | body | string | No | Contact Employment Industry. |
| EmploymentRole | body | string | No | Contact Employment Role. |
| EmploymentGeographicArea | body | string | No | Contact Employment Geographic Area. |
| DriversLicence | body | string | No | The Contacts Drivers Licence Number |
| GstRegistered | body | bool | No | Indicates if the Contact is registered for GST |
| RecordStatus | body | string | No | The status of the contact in PSTPF |
| ContactRoles | body | List<ContactRole> | No | A list of roles this contact has. |
| ContactDetails | body | List<ContactDetailModel> | No | A list of the contact details for the contact. |
| CustomContentXML | body | string | No | Custom Content XML for the contact. |
| BlobImageURLPrimary | body | string | No | URL to the Primary Image. |
| BlobImageURLPrimaryThumbnail | body | string | No | URL to the Primary Image thumbnail. |
| PrimaryMobile | body | string | No | The primary mobile for the contact. |
| PrimaryEmail | body | string | No | The primary email for the contact. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| RoleId | body | Guid | No | Guid of the Role List Item object within PSTPF. |
| AlternateKey | body | string | No | The unique key that represents the role type on the external system. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ContactMethodId | body | Guid | No | Id of the Contact Method |
| ContactMethodName | body | string | No | Contact Method Name |
| ContactAddress | body | ContactAddressModel | No | If the contact method is an address, this will contain the address details. |
| ContactPhone | body | PhoneModel | No | If the contact method is a phone, this will contain the phone details |
| CountryId | body | Guid? | No | Id of the country |
| ContactDetails | body | string | No | A summary string representing the contact details |
| Notes | body | string | No | Notes about the contact details |
| ContactDetailsCode | body | string | No | Area Code if contact details are a phone number |
| OrderContactMethod | body | int | No | Order number of the contact method |
| IsPrimaryContactMethod | body | bool | No | True if this is the primary contact method |
| IsAddress | body | bool | No | True if this contact method is an address |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Address | body | AddressModel | No | Address Details |
| IsPostal | body | bool | No | True if this is a postal address. |
| IsPrimaryLocation | body | bool | No | True if this is the primary address. |
| IsRegisteredLocation | body | bool | No | True if this address is the registered tax address. |
| SuburbName | body | string | No | Suburb Name |
| StateName | body | string | No | State Name |
| CountryName | body | string | No | Country Name |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DistanceAway | body | double | No | The distance between this project and another specified set of gps coordinates. |
| Latitude | body | Double? | No | The latitude of an address - geographic coordinates specifying the north-south position of a point on the Earth's surface. |
| Longitude | body | Double? | No | The longitude of an address - geographic coordinates specifying the east-west position of a point on the Earth's surface. |
| AddressFormatId | body | Guid | No | Address Format Id Guid - this will be determined by the service. |
| SuburbId | body | Guid | No | Suburb Id Guid - this will attempt to be determined by the SuburbName, StateShortName and Postcode entered. |
| SuburbName | body | string | No | The suburb name. |
| StateShortName | body | string | No | The shortened State Name e.g Vic for Victoria. |
| PostCode | body | string | No | The suburb postcode. |
| CountryId | body | Guid | No | Country Id Guid - this will be determined by the CountrName or ISOCountryCode entered. |
| CountryName | body | string | No | the name of the country the address is within. |
| ISOCountryCode | query | string | No | ISO Country Code. |
| LotNumber | body | string | No | The address Lot number. |
| SubUnit | body | string | No | The address Sub Unit number. |
| BuildingNumber | body | string | No | The address building number. |
| StreetNumber | body | string | No | The address street number. |
| StreetName | body | string | No | The address street name including street type. |
| AddressLineOne | body | string | No | A formatted address Line 1. |
| AddressLineTwo | body | string | No | A formatted address Line 2. |
| AddressFull | body | string | No | The full address string. |
| IsPhysical | body | bool? | No | True if the address is a physical location. |
| Notes | form | string | No | Notes about the address. |
| AutoMapCoordinates | body | bool? | No | If true, the address is eligible for having its coordinates calculated/updated. |
| LocationCoordinates | body | LocationCoordinates | No | Location Coordinates for the address. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| Latitude | query | double | No | The latitude of an address - geographic coordinates specifying the north-south position of a point on the Earth's surface. |
| Longitude | query | double | No | The longitude of an address - geographic coordinates specifying the east-west position of a point on the Earth's surface. |
| Altitude | query | double? | No | The altitude of an address - the altitude above sea level." |
| Accuracy | query | double? | No | Accuracy of the latitude and longitude. |
| AltitudeAccuracy | query | double? | No | Accurancy of the Altitude. |
| Heading | query | double? | No | Direction you are heading. |
| Speed | query | double? | No | Speed you are going. |
| VerticalSpeed | query | double? | No | Speed your altitude is ascending/descending at. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| CountryCode | body | string | No | Country Code |
| AreaCode | body | string | No | Area Code |
| LocalNumber | body | string | No | Local Number |
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/SaveContact HTTP/1.1
Host: production-eros-platform-apisubscription.azurewebsites.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<SaveContact xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription">
<_x003C_ValidationErrors_x003E_k__BackingField xmlns="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.Library.ValidationEngine">
<RuleValidationResult>
<_x003C_ErrorCode_x003E_k__BackingField>String</_x003C_ErrorCode_x003E_k__BackingField>
<_x003C_Key_x003E_k__BackingField>String</_x003C_Key_x003E_k__BackingField>
<_x003C_Message_x003E_k__BackingField>String</_x003C_Message_x003E_k__BackingField>
<_x003C_RuleCode_x003E_k__BackingField>String</_x003C_RuleCode_x003E_k__BackingField>
<_x003C_Tag_x003E_k__BackingField>String</_x003C_Tag_x003E_k__BackingField>
</RuleValidationResult>
</_x003C_ValidationErrors_x003E_k__BackingField>
<AlternateKey>String</AlternateKey>
<Contact xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPI.ServiceModel">
<d2p1:_x003C_Abn_x003E_k__BackingField>String</d2p1:_x003C_Abn_x003E_k__BackingField>
<d2p1:_x003C_Acn_x003E_k__BackingField>String</d2p1:_x003C_Acn_x003E_k__BackingField>
<d2p1:_x003C_Arbn_x003E_k__BackingField>String</d2p1:_x003C_Arbn_x003E_k__BackingField>
<d2p1:_x003C_BirthDate_x003E_k__BackingField>0001-01-01T00:00:00</d2p1:_x003C_BirthDate_x003E_k__BackingField>
<d2p1:_x003C_BlobImageURLPrimaryThumbnail_x003E_k__BackingField>String</d2p1:_x003C_BlobImageURLPrimaryThumbnail_x003E_k__BackingField>
<d2p1:_x003C_BlobImageURLPrimary_x003E_k__BackingField>String</d2p1:_x003C_BlobImageURLPrimary_x003E_k__BackingField>
<d2p1:_x003C_ContactDetails_x003E_k__BackingField>
<d2p1:ContactDetailModel>
<d2p1:_x003C_ContactAddress_x003E_k__BackingField>
<d2p1:_x003C_Address_x003E_k__BackingField>
<d2p1:_addressFull>String</d2p1:_addressFull>
<d2p1:_x003C_AddressFormatId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_AddressFormatId_x003E_k__BackingField>
<d2p1:_x003C_AddressLineOne_x003E_k__BackingField>String</d2p1:_x003C_AddressLineOne_x003E_k__BackingField>
<d2p1:_x003C_AddressLineTwo_x003E_k__BackingField>String</d2p1:_x003C_AddressLineTwo_x003E_k__BackingField>
<d2p1:_x003C_AutoMapCoordinates_x003E_k__BackingField>false</d2p1:_x003C_AutoMapCoordinates_x003E_k__BackingField>
<d2p1:_x003C_BuildingNumber_x003E_k__BackingField>String</d2p1:_x003C_BuildingNumber_x003E_k__BackingField>
<d2p1:_x003C_CountryId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_CountryId_x003E_k__BackingField>
<d2p1:_x003C_CountryName_x003E_k__BackingField>String</d2p1:_x003C_CountryName_x003E_k__BackingField>
<d2p1:_x003C_DistanceAway_x003E_k__BackingField>0</d2p1:_x003C_DistanceAway_x003E_k__BackingField>
<d2p1:_x003C_ISOCountryCode_x003E_k__BackingField>String</d2p1:_x003C_ISOCountryCode_x003E_k__BackingField>
<d2p1:_x003C_IsPhysical_x003E_k__BackingField>false</d2p1:_x003C_IsPhysical_x003E_k__BackingField>
<d2p1:_x003C_Latitude_x003E_k__BackingField>0</d2p1:_x003C_Latitude_x003E_k__BackingField>
<d2p1:_x003C_LocationCoordinates_x003E_k__BackingField>
<d2p1:_x003C_Accuracy_x003E_k__BackingField>0</d2p1:_x003C_Accuracy_x003E_k__BackingField>
<d2p1:_x003C_AltitudeAccuracy_x003E_k__BackingField>0</d2p1:_x003C_AltitudeAccuracy_x003E_k__BackingField>
<d2p1:_x003C_Altitude_x003E_k__BackingField>0</d2p1:_x003C_Altitude_x003E_k__BackingField>
<d2p1:_x003C_Heading_x003E_k__BackingField>0</d2p1:_x003C_Heading_x003E_k__BackingField>
<d2p1:_x003C_Latitude_x003E_k__BackingField>0</d2p1:_x003C_Latitude_x003E_k__BackingField>
<d2p1:_x003C_Longitude_x003E_k__BackingField>0</d2p1:_x003C_Longitude_x003E_k__BackingField>
<d2p1:_x003C_Speed_x003E_k__BackingField>0</d2p1:_x003C_Speed_x003E_k__BackingField>
<d2p1:_x003C_VerticalSpeed_x003E_k__BackingField>0</d2p1:_x003C_VerticalSpeed_x003E_k__BackingField>
</d2p1:_x003C_LocationCoordinates_x003E_k__BackingField>
<d2p1:_x003C_Longitude_x003E_k__BackingField>0</d2p1:_x003C_Longitude_x003E_k__BackingField>
<d2p1:_x003C_LotNumber_x003E_k__BackingField>String</d2p1:_x003C_LotNumber_x003E_k__BackingField>
<d2p1:_x003C_Notes_x003E_k__BackingField>String</d2p1:_x003C_Notes_x003E_k__BackingField>
<d2p1:_x003C_PostCode_x003E_k__BackingField>String</d2p1:_x003C_PostCode_x003E_k__BackingField>
<d2p1:_x003C_StateShortName_x003E_k__BackingField>String</d2p1:_x003C_StateShortName_x003E_k__BackingField>
<d2p1:_x003C_StreetName_x003E_k__BackingField>String</d2p1:_x003C_StreetName_x003E_k__BackingField>
<d2p1:_x003C_StreetNumber_x003E_k__BackingField>String</d2p1:_x003C_StreetNumber_x003E_k__BackingField>
<d2p1:_x003C_SubUnit_x003E_k__BackingField>String</d2p1:_x003C_SubUnit_x003E_k__BackingField>
<d2p1:_x003C_SuburbId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_SuburbId_x003E_k__BackingField>
<d2p1:_x003C_SuburbName_x003E_k__BackingField>String</d2p1:_x003C_SuburbName_x003E_k__BackingField>
</d2p1:_x003C_Address_x003E_k__BackingField>
<d2p1:_x003C_CountryName_x003E_k__BackingField>String</d2p1:_x003C_CountryName_x003E_k__BackingField>
<d2p1:_x003C_IsPostal_x003E_k__BackingField>false</d2p1:_x003C_IsPostal_x003E_k__BackingField>
<d2p1:_x003C_IsPrimaryLocation_x003E_k__BackingField>false</d2p1:_x003C_IsPrimaryLocation_x003E_k__BackingField>
<d2p1:_x003C_IsRegisteredLocation_x003E_k__BackingField>false</d2p1:_x003C_IsRegisteredLocation_x003E_k__BackingField>
<d2p1:_x003C_StateName_x003E_k__BackingField>String</d2p1:_x003C_StateName_x003E_k__BackingField>
<d2p1:_x003C_SuburbName_x003E_k__BackingField>String</d2p1:_x003C_SuburbName_x003E_k__BackingField>
</d2p1:_x003C_ContactAddress_x003E_k__BackingField>
<d2p1:_x003C_ContactDetailsCode_x003E_k__BackingField>String</d2p1:_x003C_ContactDetailsCode_x003E_k__BackingField>
<d2p1:_x003C_ContactDetails_x003E_k__BackingField>String</d2p1:_x003C_ContactDetails_x003E_k__BackingField>
<d2p1:_x003C_ContactMethodId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ContactMethodId_x003E_k__BackingField>
<d2p1:_x003C_ContactMethodName_x003E_k__BackingField>String</d2p1:_x003C_ContactMethodName_x003E_k__BackingField>
<d2p1:_x003C_ContactPhone_x003E_k__BackingField>
<d2p1:_x003C_AreaCode_x003E_k__BackingField>String</d2p1:_x003C_AreaCode_x003E_k__BackingField>
<d2p1:_x003C_CountryCode_x003E_k__BackingField>String</d2p1:_x003C_CountryCode_x003E_k__BackingField>
<d2p1:_x003C_LocalNumber_x003E_k__BackingField>String</d2p1:_x003C_LocalNumber_x003E_k__BackingField>
</d2p1:_x003C_ContactPhone_x003E_k__BackingField>
<d2p1:_x003C_CountryId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_CountryId_x003E_k__BackingField>
<d2p1:_x003C_IsPrimaryContactMethod_x003E_k__BackingField>false</d2p1:_x003C_IsPrimaryContactMethod_x003E_k__BackingField>
<d2p1:_x003C_Notes_x003E_k__BackingField>String</d2p1:_x003C_Notes_x003E_k__BackingField>
<d2p1:_x003C_OrderContactMethod_x003E_k__BackingField>0</d2p1:_x003C_OrderContactMethod_x003E_k__BackingField>
</d2p1:ContactDetailModel>
</d2p1:_x003C_ContactDetails_x003E_k__BackingField>
<d2p1:_x003C_ContactId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ContactId_x003E_k__BackingField>
<d2p1:_x003C_ContactRoles_x003E_k__BackingField>
<d2p1:ContactRole>
<d2p1:_x003C_AlternateKey_x003E_k__BackingField>String</d2p1:_x003C_AlternateKey_x003E_k__BackingField>
<d2p1:_x003C_RoleId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_RoleId_x003E_k__BackingField>
</d2p1:ContactRole>
</d2p1:_x003C_ContactRoles_x003E_k__BackingField>
<d2p1:_x003C_ContactType_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ContactType_x003E_k__BackingField>
<d2p1:_x003C_CustomContentXML_x003E_k__BackingField>String</d2p1:_x003C_CustomContentXML_x003E_k__BackingField>
<d2p1:_x003C_DriversLicence_x003E_k__BackingField>String</d2p1:_x003C_DriversLicence_x003E_k__BackingField>
<d2p1:_x003C_EmploymentGeographicArea_x003E_k__BackingField>String</d2p1:_x003C_EmploymentGeographicArea_x003E_k__BackingField>
<d2p1:_x003C_EmploymentIndustry_x003E_k__BackingField>String</d2p1:_x003C_EmploymentIndustry_x003E_k__BackingField>
<d2p1:_x003C_EmploymentRole_x003E_k__BackingField>String</d2p1:_x003C_EmploymentRole_x003E_k__BackingField>
<d2p1:_x003C_FirstName_x003E_k__BackingField>String</d2p1:_x003C_FirstName_x003E_k__BackingField>
<d2p1:_x003C_FullName_x003E_k__BackingField>String</d2p1:_x003C_FullName_x003E_k__BackingField>
<d2p1:_x003C_Gender_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_Gender_x003E_k__BackingField>
<d2p1:_x003C_GstRegistered_x003E_k__BackingField>false</d2p1:_x003C_GstRegistered_x003E_k__BackingField>
<d2p1:_x003C_LegalName_x003E_k__BackingField>String</d2p1:_x003C_LegalName_x003E_k__BackingField>
<d2p1:_x003C_MaritalStatus_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_MaritalStatus_x003E_k__BackingField>
<d2p1:_x003C_MiddleName_x003E_k__BackingField>String</d2p1:_x003C_MiddleName_x003E_k__BackingField>
<d2p1:_x003C_Notes_x003E_k__BackingField>String</d2p1:_x003C_Notes_x003E_k__BackingField>
<d2p1:_x003C_PrimaryEmail_x003E_k__BackingField>String</d2p1:_x003C_PrimaryEmail_x003E_k__BackingField>
<d2p1:_x003C_PrimaryMobile_x003E_k__BackingField>String</d2p1:_x003C_PrimaryMobile_x003E_k__BackingField>
<d2p1:_x003C_RecordStatus_x003E_k__BackingField>String</d2p1:_x003C_RecordStatus_x003E_k__BackingField>
<d2p1:_x003C_Salutation_x003E_k__BackingField>String</d2p1:_x003C_Salutation_x003E_k__BackingField>
<d2p1:_x003C_ShortName_x003E_k__BackingField>String</d2p1:_x003C_ShortName_x003E_k__BackingField>
<d2p1:_x003C_Surname_x003E_k__BackingField>String</d2p1:_x003C_Surname_x003E_k__BackingField>
<d2p1:_x003C_Title_x003E_k__BackingField>String</d2p1:_x003C_Title_x003E_k__BackingField>
<d2p1:_x003C_TradingName_x003E_k__BackingField>String</d2p1:_x003C_TradingName_x003E_k__BackingField>
</Contact>
<IgnoreHash>false</IgnoreHash>
<LicenseeId>00000000-0000-0000-0000-000000000000</LicenseeId>
<MarkAsDeleted>false</MarkAsDeleted>
<ObjectId>00000000-0000-0000-0000-000000000000</ObjectId>
<SessionId>00000000-0000-0000-0000-000000000000</SessionId>
<SuiteDataSourceInstanceId>00000000-0000-0000-0000-000000000000</SuiteDataSourceInstanceId>
</SaveContact>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<ResponseStatus xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<ErrorCode>String</ErrorCode>
<Message>String</Message>
<StackTrace>String</StackTrace>
<Errors>
<ResponseError>
<ErrorCode>String</ErrorCode>
<FieldName>String</FieldName>
<Message>String</Message>
<Meta xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringstring>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value>String</d4p1:Value>
</d4p1:KeyValueOfstringstring>
</Meta>
</ResponseError>
</Errors>
<Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringstring>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfstringstring>
</Meta>
</ResponseStatus>