| GET | /api/licensee/contacts |
|---|
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
/**
* Returns a list of contacts a licensee is linked to. Contacts are returned in batches.
*/
@Api(Description="Returns a list of contacts a licensee is linked to. Contacts are returned in batches.")
public static class GetLicenseeContactList
{
/**
* Number of contacts to retrieve per call.
*/
@ApiMember(DataType="int", Description="Number of contacts to retrieve per call.", IsRequired=true, Name="BatchSize", ParameterType="body")
public Integer BatchSize = null;
/**
* Call number (1=1st, 2=2nd) this should progress upwards until all contacts have been retrieved.
*/
@ApiMember(DataType="int", Description="Call number (1=1st, 2=2nd) this should progress upwards until all contacts have been retrieved.", IsRequired=true, Name="BatchNumber", ParameterType="body")
public Integer BatchNumber = null;
/**
* An optional role that a contact must have in order to be returned.
*/
@ApiMember(DataType="Guid", Description="An optional role that a contact must have in order to be returned. ", Name="ContactRole", ParameterType="body")
public UUID ContactRole = null;
public Integer getBatchSize() { return BatchSize; }
public GetLicenseeContactList setBatchSize(Integer value) { this.BatchSize = value; return this; }
public Integer getBatchNumber() { return BatchNumber; }
public GetLicenseeContactList setBatchNumber(Integer value) { this.BatchNumber = value; return this; }
public UUID getContactRole() { return ContactRole; }
public GetLicenseeContactList setContactRole(UUID value) { this.ContactRole = value; return this; }
}
@ApiResponse(Description="List of Contacts")
public static class GetLicenseeContactListResponse
{
/**
* List of contacts.
*/
@ApiMember(DataType="List<ConnectedContactModel>", Description="List of contacts.", Name="Contacts", ParameterType="body")
public ArrayList<ConnectedContactModel> Contacts = null;
/**
* Details of the api response. Success/Fail.
*/
@ApiMember(DataType="ResponseStatus", Description="Details of the api response. Success/Fail.", Name="ResponseStatus", ParameterType="body")
public ResponseStatus ResponseStatus = null;
public ArrayList<ConnectedContactModel> getContacts() { return Contacts; }
public GetLicenseeContactListResponse setContacts(ArrayList<ConnectedContactModel> value) { this.Contacts = value; return this; }
public ResponseStatus getResponseStatus() { return ResponseStatus; }
public GetLicenseeContactListResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
}
public static class ConnectedContactModel
{
/**
* Guid of the contact object within Eros.
*/
@ApiMember(DataType="Guid", Description="Guid of the contact object within Eros.", Name="ContactId", ParameterType="body")
public UUID ContactId = null;
/**
* The salutation(preferred name) for the contact. Applies to a person contact type.
*/
@ApiMember(DataType="string", Description="The salutation(preferred name) for the contact. Applies to a person contact type.", Name="Salutation", ParameterType="body")
public String Salutation = null;
/**
* The title for the contact. Applies to a person contact type.
*/
@ApiMember(DataType="string", Description="The title for the contact. Applies to a person contact type.", Name="Title", ParameterType="body")
public String Title = null;
/**
* The first given name for the contact. Applies to a person contact type.
*/
@ApiMember(DataType="string", Description="The first given name for the contact. Applies to a person contact type.", Name="FirstName", ParameterType="body")
public String FirstName = null;
/**
* Any middle names for the contact. Applies to a person contact type.
*/
@ApiMember(DataType="string", Description="Any middle names for the contact. Applies to a person contact type.", Name="MiddleName", ParameterType="body")
public String MiddleName = null;
/**
* The surname for the contact. Applies to a person contact type.
*/
@ApiMember(DataType="string", Description="The surname for the contact. Applies to a person contact type.", Name="Surname", ParameterType="body")
public String Surname = null;
/**
* The full name for the contact.
*/
@ApiMember(DataType="string", Description="The full name for the contact.", Name="FullName", ParameterType="body")
public String FullName = null;
/**
* A legal name for the contact. Applies to an organisation contact type.
*/
@ApiMember(DataType="string", Description="A legal name for the contact. Applies to an organisation contact type.", Name="LegalName", ParameterType="body")
public String LegalName = null;
/**
* A trading name for the contact. Applies to an organisation contact type.
*/
@ApiMember(DataType="string", Description="A trading name for the contact. Applies to an organisation contact type.", Name="TradingName", ParameterType="body")
public String TradingName = null;
/**
* The birth date for the contact. Applies to a person contact type.
*/
@ApiMember(DataType="DateTime?", Description="The birth date for the contact. Applies to a person contact type.", Name="BirthDate", ParameterType="body")
public Date BirthDate = null;
/**
* Guid of the marital status within Eros.
*/
@ApiMember(DataType="Guid?", Description="Guid of the marital status within Eros.", Name="MaritalStatusId", ParameterType="body")
public UUID MaritalStatusId = null;
/**
* The contacts marital status if set.
*/
@ApiMember(DataType="string", Description="The contacts marital status if set.", Name="MaritalStatusName", ParameterType="body")
public String MaritalStatusName = null;
/**
* Guid of the gender within Eros.
*/
@ApiMember(DataType="Guid?", Description="Guid of the gender within Eros.", Name="GenderId", ParameterType="body")
public UUID GenderId = null;
/**
* The contacts gender if set.
*/
@ApiMember(DataType="string", Description="The contacts gender if set.", Name="GenderName", ParameterType="body")
public String GenderName = null;
/**
* Preferred language of the contact.
*/
@ApiMember(DataType="string", Description="Preferred language of the contact.", Name="Language", ParameterType="body")
public String Language = null;
/**
* If true, the contact requires an interpreter.
*/
@ApiMember(DataType="bool", Description="If true, the contact requires an interpreter.", Name="InterpreterRequired", ParameterType="body")
public Boolean InterpreterRequired = null;
/**
* Contact Type name of the contact.
*/
@ApiMember(DataType="string", Description="Contact Type name of the contact.", Name="ContactTypeName", ParameterType="body")
public String ContactTypeName = null;
/**
* Guid of the Contact Type List Item object within Eros.
*/
@ApiMember(DataType="Guid", Description="Guid of the Contact Type List Item object within Eros.", Name="ContactTypeId", ParameterType="body")
public UUID ContactTypeId = null;
/**
* Description of the contact for their external profile.
*/
@ApiMember(DataType="string", Description="Description of the contact for their external profile.", Name="Description", ParameterType="body")
public String Description = null;
/**
* Contact 'Profession/Trade/Industry' details for their external profile.
*/
@ApiMember(DataType="string", Description="Contact 'Profession/Trade/Industry' details for their external profile.", Name="EmploymentIndustry", ParameterType="body")
public String EmploymentIndustry = null;
/**
* Contact 'Working/Subcontracting for' details for their external profile.
*/
@ApiMember(DataType="string", Description="Contact 'Working/Subcontracting for' details for their external profile.", Name="EmploymentRole", ParameterType="body")
public String EmploymentRole = null;
/**
* Contact 'Work Area/Suburbs' detail for their external profile.
*/
@ApiMember(DataType="string", Description="Contact 'Work Area/Suburbs' detail for their external profile.", Name="EmploymentGeographicArea", ParameterType="body")
public String EmploymentGeographicArea = null;
/**
* The A.B.N for the contact.
*/
@ApiMember(DataType="string", Description="The A.B.N for the contact.", Name="Abn", ParameterType="body")
public String Abn = null;
/**
* The A.C.N for the contact.
*/
@ApiMember(DataType="string", Description="The A.C.N for the contact.", Name="Acn", ParameterType="body")
public String Acn = null;
/**
* The A.R.B.N for the contact.
*/
@ApiMember(DataType="string", Description="The A.R.B.N for the contact.", Name="Arbn", ParameterType="body")
public String Arbn = null;
/**
* Timezone name that applies to the contact.
*/
@ApiMember(DataType="string", Description="Timezone name that applies to the contact.", Name="TimezoneName", ParameterType="body")
public String TimezoneName = null;
/**
* A list of the contact details for the contact.
*/
@ApiMember(DataType="List<ConnectedContactDetailModel>", Description="A list of the contact details for the contact.", Name="ContactDetails", ParameterType="body")
public ArrayList<ConnectedContactDetailModel> ContactDetails = null;
/**
* A list of the contact addresses for the contact
*/
@ApiMember(DataType="List<ConnectedContactAddressModel>", Description="A list of the contact addresses for the contact", Name="ContactAddresses", ParameterType="body")
public ArrayList<ConnectedContactAddressModel> ContactAddresses = null;
/**
* 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.
*/
@ApiMember(DataType="bool", 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.", Name="IsContactConnected", ParameterType="body")
public Boolean IsContactConnected = null;
/**
* A list of connections this contact has with the licensee. May be active or a pending request to connect.
*/
@ApiMember(DataType="List<ConnectedContactConnectionsModel>", Description="A list of connections this contact has with the licensee. May be active or a pending request to connect.", Name="Connections", ParameterType="body")
public ArrayList<ConnectedContactConnectionsModel> Connections = null;
/**
* A list of projects this contact is linked to as a customer.
*/
@ApiMember(DataType="List<ContactLinkedCustomerProjectsModel>", Description="A list of projects this contact is linked to as a customer.", Name="Projects", ParameterType="body")
public ArrayList<ContactLinkedCustomerProjectsModel> Projects = null;
/**
* A list of integration subscriptions used to link this contact to external records in other licensee owned systems.
*/
@ApiMember(DataType="List<ConnectedContactSubscriptionsModel>", Description="A list of integration subscriptions used to link this contact to external records in other licensee owned systems.", Name="Subscriptions", ParameterType="body")
public ArrayList<ConnectedContactSubscriptionsModel> Subscriptions = null;
public UUID getContactId() { return ContactId; }
public ConnectedContactModel setContactId(UUID value) { this.ContactId = value; return this; }
public String getSalutation() { return Salutation; }
public ConnectedContactModel setSalutation(String value) { this.Salutation = value; return this; }
public String getTitle() { return Title; }
public ConnectedContactModel setTitle(String value) { this.Title = value; return this; }
public String getFirstName() { return FirstName; }
public ConnectedContactModel setFirstName(String value) { this.FirstName = value; return this; }
public String getMiddleName() { return MiddleName; }
public ConnectedContactModel setMiddleName(String value) { this.MiddleName = value; return this; }
public String getSurname() { return Surname; }
public ConnectedContactModel setSurname(String value) { this.Surname = value; return this; }
public String getFullName() { return FullName; }
public ConnectedContactModel setFullName(String value) { this.FullName = value; return this; }
public String getLegalName() { return LegalName; }
public ConnectedContactModel setLegalName(String value) { this.LegalName = value; return this; }
public String getTradingName() { return TradingName; }
public ConnectedContactModel setTradingName(String value) { this.TradingName = value; return this; }
public Date getBirthDate() { return BirthDate; }
public ConnectedContactModel setBirthDate(Date value) { this.BirthDate = value; return this; }
public UUID getMaritalStatusId() { return MaritalStatusId; }
public ConnectedContactModel setMaritalStatusId(UUID value) { this.MaritalStatusId = value; return this; }
public String getMaritalStatusName() { return MaritalStatusName; }
public ConnectedContactModel setMaritalStatusName(String value) { this.MaritalStatusName = value; return this; }
public UUID getGenderId() { return GenderId; }
public ConnectedContactModel setGenderId(UUID value) { this.GenderId = value; return this; }
public String getGenderName() { return GenderName; }
public ConnectedContactModel setGenderName(String value) { this.GenderName = value; return this; }
public String getLanguage() { return Language; }
public ConnectedContactModel setLanguage(String value) { this.Language = value; return this; }
public Boolean isInterpreterRequired() { return InterpreterRequired; }
public ConnectedContactModel setInterpreterRequired(Boolean value) { this.InterpreterRequired = value; return this; }
public String getContactTypeName() { return ContactTypeName; }
public ConnectedContactModel setContactTypeName(String value) { this.ContactTypeName = value; return this; }
public UUID getContactTypeId() { return ContactTypeId; }
public ConnectedContactModel setContactTypeId(UUID value) { this.ContactTypeId = value; return this; }
public String getDescription() { return Description; }
public ConnectedContactModel setDescription(String value) { this.Description = value; return this; }
public String getEmploymentIndustry() { return EmploymentIndustry; }
public ConnectedContactModel setEmploymentIndustry(String value) { this.EmploymentIndustry = value; return this; }
public String getEmploymentRole() { return EmploymentRole; }
public ConnectedContactModel setEmploymentRole(String value) { this.EmploymentRole = value; return this; }
public String getEmploymentGeographicArea() { return EmploymentGeographicArea; }
public ConnectedContactModel setEmploymentGeographicArea(String value) { this.EmploymentGeographicArea = value; return this; }
public String getAbn() { return Abn; }
public ConnectedContactModel setAbn(String value) { this.Abn = value; return this; }
public String getAcn() { return Acn; }
public ConnectedContactModel setAcn(String value) { this.Acn = value; return this; }
public String getArbn() { return Arbn; }
public ConnectedContactModel setArbn(String value) { this.Arbn = value; return this; }
public String getTimezoneName() { return TimezoneName; }
public ConnectedContactModel setTimezoneName(String value) { this.TimezoneName = value; return this; }
public ArrayList<ConnectedContactDetailModel> getContactDetails() { return ContactDetails; }
public ConnectedContactModel setContactDetails(ArrayList<ConnectedContactDetailModel> value) { this.ContactDetails = value; return this; }
public ArrayList<ConnectedContactAddressModel> getContactAddresses() { return ContactAddresses; }
public ConnectedContactModel setContactAddresses(ArrayList<ConnectedContactAddressModel> value) { this.ContactAddresses = value; return this; }
public Boolean getIsContactConnected() { return IsContactConnected; }
public ConnectedContactModel setIsContactConnected(Boolean value) { this.IsContactConnected = value; return this; }
public ArrayList<ConnectedContactConnectionsModel> getConnections() { return Connections; }
public ConnectedContactModel setConnections(ArrayList<ConnectedContactConnectionsModel> value) { this.Connections = value; return this; }
public ArrayList<ContactLinkedCustomerProjectsModel> getProjects() { return Projects; }
public ConnectedContactModel setProjects(ArrayList<ContactLinkedCustomerProjectsModel> value) { this.Projects = value; return this; }
public ArrayList<ConnectedContactSubscriptionsModel> getSubscriptions() { return Subscriptions; }
public ConnectedContactModel setSubscriptions(ArrayList<ConnectedContactSubscriptionsModel> value) { this.Subscriptions = value; return this; }
}
public static class ConnectedContactDetailModel
{
/**
* The type of contact detail this is (email/mobile/fax/website etc)
*/
@ApiMember(DataType="string", Description="The type of contact detail this is (email/mobile/fax/website etc)", Name="Type", ParameterType="body")
public String Type = null;
/**
* The contact detail. e.g (phone number or email address)
*/
@ApiMember(DataType="string", Description="The contact detail. e.g (phone number or email address)", Name="ContactDetails", ParameterType="body")
public String ContactDetails = null;
public String getType() { return Type; }
public ConnectedContactDetailModel setType(String value) { this.Type = value; return this; }
public String getContactDetails() { return ContactDetails; }
public ConnectedContactDetailModel setContactDetails(String value) { this.ContactDetails = value; return this; }
}
public static class ConnectedContactAddressModel
{
/**
* A full address string of the address.
*/
@ApiMember(DataType="string", Description="A full address string of the address.", Name="FullAddress", ParameterType="body")
public String FullAddress = null;
/**
* If true, this is the contacts primary address.
*/
@ApiMember(DataType="bool", Description="If true, this is the contacts primary address.", Name="IsPrimary", ParameterType="body")
public Boolean IsPrimary = null;
/**
* If true, this is the contacts postal address.
*/
@ApiMember(DataType="bool", Description="If true, this is the contacts postal address.", Name="IsPostal", ParameterType="body")
public Boolean IsPostal = null;
/**
* If true, this is the contacts registered address.
*/
@ApiMember(DataType="bool", Description="If true, this is the contacts registered address.", Name="IsRegistered", ParameterType="body")
public Boolean IsRegistered = null;
public String getFullAddress() { return FullAddress; }
public ConnectedContactAddressModel setFullAddress(String value) { this.FullAddress = value; return this; }
public Boolean getIsPrimary() { return IsPrimary; }
public ConnectedContactAddressModel setIsPrimary(Boolean value) { this.IsPrimary = value; return this; }
public Boolean getIsPostal() { return IsPostal; }
public ConnectedContactAddressModel setIsPostal(Boolean value) { this.IsPostal = value; return this; }
public Boolean getIsRegistered() { return IsRegistered; }
public ConnectedContactAddressModel setIsRegistered(Boolean value) { this.IsRegistered = value; return this; }
}
public static class ConnectedContactConnectionsModel
{
/**
* Guid of the role within Eros
*/
@ApiMember(DataType="Guid", Description="Guid of the role within Eros", Name="RoleId", ParameterType="body")
public UUID RoleId = null;
/**
* Name of the role this contact is connected to the licensee with.
*/
@ApiMember(DataType="string", Description="Name of the role this contact is connected to the licensee with.", Name="Role", ParameterType="body")
public String Role = null;
/**
* Guid of the role connections status within Eros.
*/
@ApiMember(DataType="Guid", Description="Guid of the role connections status within Eros.", Name="StatusId", ParameterType="body")
public UUID StatusId = null;
/**
* Connection status of the role. It maybe active or pending.
*/
@ApiMember(DataType="string", Description="Connection status of the role. It maybe active or pending.", Name="Status", ParameterType="body")
public String Status = null;
public UUID getRoleId() { return RoleId; }
public ConnectedContactConnectionsModel setRoleId(UUID value) { this.RoleId = value; return this; }
public String getRole() { return Role; }
public ConnectedContactConnectionsModel setRole(String value) { this.Role = value; return this; }
public UUID getStatusId() { return StatusId; }
public ConnectedContactConnectionsModel setStatusId(UUID value) { this.StatusId = value; return this; }
public String getStatus() { return Status; }
public ConnectedContactConnectionsModel setStatus(String value) { this.Status = value; return this; }
}
public static class ContactLinkedCustomerProjectsModel
{
/**
* Guid of the project within Eros.
*/
@ApiMember(DataType="Guid", Description="Guid of the project within Eros.", Name="ProjectId", ParameterType="body")
public UUID ProjectId = null;
/**
* Name of the project.
*/
@ApiMember(DataType="string", Description="Name of the project.", Name="Name", ParameterType="body")
public String Name = null;
public UUID getProjectId() { return ProjectId; }
public ContactLinkedCustomerProjectsModel setProjectId(UUID value) { this.ProjectId = value; return this; }
public String getName() { return Name; }
public ContactLinkedCustomerProjectsModel setName(String value) { this.Name = value; return this; }
}
public static class ConnectedContactSubscriptionsModel
{
/**
* Guid of the datasource within Eros.
*/
@ApiMember(DataType="Guid", Description="Guid of the datasource within Eros.", Name="DatasourceId", ParameterType="body")
public UUID DatasourceId = null;
/**
* Name of the datasource that is the external system with a record of this contact.
*/
@ApiMember(DataType="string", Description="Name of the datasource that is the external system with a record of this contact.", Name="Datasource", ParameterType="body")
public String Datasource = null;
/**
* Foreign Key lookup of this contact in the external system the datasource represents.
*/
@ApiMember(DataType="string", Description="Foreign Key lookup of this contact in the external system the datasource represents.", Name="AlternateKey", ParameterType="body")
public String AlternateKey = null;
public UUID getDatasourceId() { return DatasourceId; }
public ConnectedContactSubscriptionsModel setDatasourceId(UUID value) { this.DatasourceId = value; return this; }
public String getDatasource() { return Datasource; }
public ConnectedContactSubscriptionsModel setDatasource(String value) { this.Datasource = value; return this; }
public String getAlternateKey() { return AlternateKey; }
public ConnectedContactSubscriptionsModel setAlternateKey(String value) { this.AlternateKey = value; return this; }
}
}
Java GetLicenseeContactList DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
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/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Contacts:
[
{
Salutation: String,
Title: String,
FirstName: String,
MiddleName: String,
Surname: String,
FullName: String,
LegalName: String,
TradingName: String,
BirthDate: 0001-01-01,
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
}
}
}