GET | /api/licensee/contacts |
---|
"use strict";
export class ConnectedContactDetailModel {
/** @param {{Type?:string,ContactDetails?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The type of contact detail this is (email/mobile/fax/website etc) */
Type;
/**
* @type {string}
* @description The contact detail. e.g (phone number or email address) */
ContactDetails;
}
export class ConnectedContactAddressModel {
/** @param {{FullAddress?:string,IsPrimary?:boolean,IsPostal?:boolean,IsRegistered?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description A full address string of the address. */
FullAddress;
/**
* @type {boolean}
* @description If true, this is the contacts primary address. */
IsPrimary;
/**
* @type {boolean}
* @description If true, this is the contacts postal address. */
IsPostal;
/**
* @type {boolean}
* @description If true, this is the contacts registered address. */
IsRegistered;
}
export class ConnectedContactConnectionsModel {
/** @param {{RoleId?:string,Role?:string,StatusId?:string,Status?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Guid of the role within Eros */
RoleId;
/**
* @type {string}
* @description Name of the role this contact is connected to the licensee with. */
Role;
/**
* @type {string}
* @description Guid of the role connections status within Eros. */
StatusId;
/**
* @type {string}
* @description Connection status of the role. It maybe active or pending. */
Status;
}
export class ContactLinkedCustomerProjectsModel {
/** @param {{ProjectId?:string,Name?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Guid of the project within Eros. */
ProjectId;
/**
* @type {string}
* @description Name of the project. */
Name;
}
export class ConnectedContactSubscriptionsModel {
/** @param {{DatasourceId?:string,Datasource?:string,AlternateKey?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Guid of the datasource within Eros. */
DatasourceId;
/**
* @type {string}
* @description Name of the datasource that is the external system with a record of this contact. */
Datasource;
/**
* @type {string}
* @description Foreign Key lookup of this contact in the external system the datasource represents. */
AlternateKey;
}
export class ConnectedContactModel {
/** @param {{ContactId?:string,Salutation?:string,Title?:string,FirstName?:string,MiddleName?:string,Surname?:string,FullName?:string,LegalName?:string,TradingName?:string,BirthDate?:string,MaritalStatusId?:string,MaritalStatusName?:string,GenderId?:string,GenderName?:string,Language?:string,InterpreterRequired?:boolean,ContactTypeName?:string,ContactTypeId?:string,Description?:string,EmploymentIndustry?:string,EmploymentRole?:string,EmploymentGeographicArea?:string,Abn?:string,Acn?:string,Arbn?:string,TimezoneName?:string,ContactDetails?:ConnectedContactDetailModel[],ContactAddresses?:ConnectedContactAddressModel[],IsContactConnected?:boolean,Connections?:ConnectedContactConnectionsModel[],Projects?:ContactLinkedCustomerProjectsModel[],Subscriptions?:ConnectedContactSubscriptionsModel[]}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Guid of the contact object within Eros. */
ContactId;
/**
* @type {string}
* @description The salutation(preferred name) for the contact. Applies to a person contact type. */
Salutation;
/**
* @type {string}
* @description The title for the contact. Applies to a person contact type. */
Title;
/**
* @type {string}
* @description The first given name for the contact. Applies to a person contact type. */
FirstName;
/**
* @type {string}
* @description Any middle names for the contact. Applies to a person contact type. */
MiddleName;
/**
* @type {string}
* @description The surname for the contact. Applies to a person contact type. */
Surname;
/**
* @type {string}
* @description The full name for the contact. */
FullName;
/**
* @type {string}
* @description A legal name for the contact. Applies to an organisation contact type. */
LegalName;
/**
* @type {string}
* @description A trading name for the contact. Applies to an organisation contact type. */
TradingName;
/**
* @type {?string}
* @description The birth date for the contact. Applies to a person contact type. */
BirthDate;
/**
* @type {?string}
* @description Guid of the marital status within Eros. */
MaritalStatusId;
/**
* @type {string}
* @description The contacts marital status if set. */
MaritalStatusName;
/**
* @type {?string}
* @description Guid of the gender within Eros. */
GenderId;
/**
* @type {string}
* @description The contacts gender if set. */
GenderName;
/**
* @type {string}
* @description Preferred language of the contact. */
Language;
/**
* @type {boolean}
* @description If true, the contact requires an interpreter. */
InterpreterRequired;
/**
* @type {string}
* @description Contact Type name of the contact. */
ContactTypeName;
/**
* @type {string}
* @description Guid of the Contact Type List Item object within Eros. */
ContactTypeId;
/**
* @type {string}
* @description Description of the contact for their external profile. */
Description;
/**
* @type {string}
* @description Contact 'Profession/Trade/Industry' details for their external profile. */
EmploymentIndustry;
/**
* @type {string}
* @description Contact 'Working/Subcontracting for' details for their external profile. */
EmploymentRole;
/**
* @type {string}
* @description Contact 'Work Area/Suburbs' detail for their external profile. */
EmploymentGeographicArea;
/**
* @type {string}
* @description The A.B.N for the contact. */
Abn;
/**
* @type {string}
* @description The A.C.N for the contact. */
Acn;
/**
* @type {string}
* @description The A.R.B.N for the contact. */
Arbn;
/**
* @type {string}
* @description Timezone name that applies to the contact. */
TimezoneName;
/**
* @type {ConnectedContactDetailModel[]}
* @description A list of the contact details for the contact. */
ContactDetails;
/**
* @type {ConnectedContactAddressModel[]}
* @description A list of the contact addresses for the contact */
ContactAddresses;
/**
* @type {boolean}
* @description True if this contact has at least 1 active connection to the licensee. Without an active connection only public profile information for the contact is returned. */
IsContactConnected;
/**
* @type {ConnectedContactConnectionsModel[]}
* @description A list of connections this contact has with the licensee. May be active or a pending request to connect. */
Connections;
/**
* @type {ContactLinkedCustomerProjectsModel[]}
* @description A list of projects this contact is linked to as a customer. */
Projects;
/**
* @type {ConnectedContactSubscriptionsModel[]}
* @description A list of integration subscriptions used to link this contact to external records in other licensee owned systems. */
Subscriptions;
}
export class GetLicenseeContactListResponse {
/** @param {{Contacts?:ConnectedContactModel[],ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {ConnectedContactModel[]}
* @description List of contacts. */
Contacts;
/**
* @type {ResponseStatus}
* @description Details of the api response. Success/Fail. */
ResponseStatus;
}
export class GetLicenseeContactList {
/** @param {{BatchSize?:number,BatchNumber?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description Number of contacts to retrieve per call. */
BatchSize;
/**
* @type {number}
* @description Call number (1=1st, 2=2nd) this should progress upwards until all contacts have been retrieved. */
BatchNumber;
}
JavaScript GetLicenseeContactList DTOs
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.
GET /api/licensee/contacts HTTP/1.1 Host: production-eros-platform-apisubscription.azurewebsites.net Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <GetLicenseeContactListResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription"> <Contacts xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.Models"> <d2p1:ConnectedContactModel> <d2p1:Abn>String</d2p1:Abn> <d2p1:Acn>String</d2p1:Acn> <d2p1:Arbn>String</d2p1:Arbn> <d2p1:BirthDate>0001-01-01T00:00:00</d2p1:BirthDate> <d2p1:Connections> <d2p1:ConnectedContactConnectionsModel> <d2p1:Role>String</d2p1:Role> <d2p1:RoleId>00000000-0000-0000-0000-000000000000</d2p1:RoleId> <d2p1:Status>String</d2p1:Status> <d2p1:StatusId>00000000-0000-0000-0000-000000000000</d2p1:StatusId> </d2p1:ConnectedContactConnectionsModel> </d2p1:Connections> <d2p1:ContactAddresses> <d2p1:ConnectedContactAddressModel> <d2p1:FullAddress>String</d2p1:FullAddress> <d2p1:IsPostal>false</d2p1:IsPostal> <d2p1:IsPrimary>false</d2p1:IsPrimary> <d2p1:IsRegistered>false</d2p1:IsRegistered> </d2p1:ConnectedContactAddressModel> </d2p1:ContactAddresses> <d2p1:ContactDetails> <d2p1:ConnectedContactDetailModel> <d2p1:ContactDetails>String</d2p1:ContactDetails> <d2p1:Type>String</d2p1:Type> </d2p1:ConnectedContactDetailModel> </d2p1:ContactDetails> <d2p1:ContactId>00000000-0000-0000-0000-000000000000</d2p1:ContactId> <d2p1:ContactTypeId>00000000-0000-0000-0000-000000000000</d2p1:ContactTypeId> <d2p1:ContactTypeName>String</d2p1:ContactTypeName> <d2p1:Description>String</d2p1:Description> <d2p1:EmploymentGeographicArea>String</d2p1:EmploymentGeographicArea> <d2p1:EmploymentIndustry>String</d2p1:EmploymentIndustry> <d2p1:EmploymentRole>String</d2p1:EmploymentRole> <d2p1:FirstName>String</d2p1:FirstName> <d2p1:FullName>String</d2p1:FullName> <d2p1:GenderId>00000000-0000-0000-0000-000000000000</d2p1:GenderId> <d2p1:GenderName>String</d2p1:GenderName> <d2p1:InterpreterRequired>false</d2p1:InterpreterRequired> <d2p1:IsContactConnected>false</d2p1:IsContactConnected> <d2p1:Language>String</d2p1:Language> <d2p1:LegalName>String</d2p1:LegalName> <d2p1:MaritalStatusId>00000000-0000-0000-0000-000000000000</d2p1:MaritalStatusId> <d2p1:MaritalStatusName>String</d2p1:MaritalStatusName> <d2p1:MiddleName>String</d2p1:MiddleName> <d2p1:Projects> <d2p1:ContactLinkedCustomerProjectsModel> <d2p1:Name>String</d2p1:Name> <d2p1:ProjectId>00000000-0000-0000-0000-000000000000</d2p1:ProjectId> </d2p1:ContactLinkedCustomerProjectsModel> </d2p1:Projects> <d2p1:Salutation>String</d2p1:Salutation> <d2p1:Subscriptions> <d2p1:ConnectedContactSubscriptionsModel> <d2p1:AlternateKey>String</d2p1:AlternateKey> <d2p1:Datasource>String</d2p1:Datasource> <d2p1:DatasourceId>00000000-0000-0000-0000-000000000000</d2p1:DatasourceId> </d2p1:ConnectedContactSubscriptionsModel> </d2p1:Subscriptions> <d2p1:Surname>String</d2p1:Surname> <d2p1:TimezoneName>String</d2p1:TimezoneName> <d2p1:Title>String</d2p1:Title> <d2p1:TradingName>String</d2p1:TradingName> </d2p1:ConnectedContactModel> </Contacts> <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types"> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:Message>String</d2p1:Message> <d2p1:StackTrace>String</d2p1:StackTrace> <d2p1:Errors> <d2p1:ResponseError> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:FieldName>String</d2p1:FieldName> <d2p1:Message>String</d2p1:Message> <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </d2p1:Meta> </d2p1:ResponseError> </d2p1:Errors> <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </d2p1:Meta> </ResponseStatus> </GetLicenseeContactListResponse>