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 .other suffix or ?format=other
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: text/jsonl
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"Contacts":[{"Salutation":"String","Title":"String","FirstName":"String","MiddleName":"String","Surname":"String","FullName":"String","LegalName":"String","TradingName":"String","BirthDate":"0001-01-01T00:00:00.0000000","MaritalStatusId":"00000000-0000-0000-0000-000000000000","MaritalStatusName":"String","GenderId":"00000000-0000-0000-0000-000000000000","GenderName":"String","Language":"String","InterpreterRequired":false,"ContactTypeName":"String","Description":"String","EmploymentIndustry":"String","EmploymentRole":"String","EmploymentGeographicArea":"String","Abn":"String","Acn":"String","Arbn":"String","TimezoneName":"String","ContactDetails":[{"Type":"String","ContactDetails":"String"}],"ContactAddresses":[{"FullAddress":"String","IsPrimary":false,"IsPostal":false,"IsRegistered":false}],"IsContactConnected":false,"Connections":[{"Role":"String","Status":"String"}],"Projects":[{"Name":"String"}],"Subscriptions":[{"Datasource":"String","AlternateKey":"String"}]}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}