GET | /api/licensee/contacts |
---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription
Imports Eros.Subtle.Canvara.WebAPIModel.Models
Namespace Global
Namespace Eros.Subtle.Canvara.WebAPIModel.Models
Public Partial Class ConnectedContactAddressModel
'''<Summary>
'''A full address string of the address.
'''</Summary>
<ApiMember(DataType:="string", Description:="A full address string of the address.", Name:="FullAddress")>
Public Overridable Property FullAddress As String
'''<Summary>
'''If true, this is the contacts primary address.
'''</Summary>
<ApiMember(DataType:="bool", Description:="If true, this is the contacts primary address.", Name:="IsPrimary")>
Public Overridable Property IsPrimary As Boolean
'''<Summary>
'''If true, this is the contacts postal address.
'''</Summary>
<ApiMember(DataType:="bool", Description:="If true, this is the contacts postal address.", Name:="IsPostal")>
Public Overridable Property IsPostal As Boolean
'''<Summary>
'''If true, this is the contacts registered address.
'''</Summary>
<ApiMember(DataType:="bool", Description:="If true, this is the contacts registered address.", Name:="IsRegistered")>
Public Overridable Property IsRegistered As Boolean
End Class
Public Partial Class ConnectedContactConnectionsModel
'''<Summary>
'''Guid of the role within Eros
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Guid of the role within Eros", Name:="RoleId")>
Public Overridable Property RoleId As Guid
'''<Summary>
'''Name of the role this contact is connected to the licensee with.
'''</Summary>
<ApiMember(DataType:="string", Description:="Name of the role this contact is connected to the licensee with.", Name:="Role")>
Public Overridable Property Role As String
'''<Summary>
'''Guid of the role connections status within Eros.
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Guid of the role connections status within Eros.", Name:="StatusId")>
Public Overridable Property StatusId As Guid
'''<Summary>
'''Connection status of the role. It maybe active or pending.
'''</Summary>
<ApiMember(DataType:="string", Description:="Connection status of the role. It maybe active or pending.", Name:="Status")>
Public Overridable Property Status As String
End Class
Public Partial Class ConnectedContactDetailModel
'''<Summary>
'''The type of contact detail this is (email/mobile/fax/website etc)
'''</Summary>
<ApiMember(DataType:="string", Description:="The type of contact detail this is (email/mobile/fax/website etc)", Name:="Type")>
Public Overridable Property Type As String
'''<Summary>
'''The contact detail. e.g (phone number or email address)
'''</Summary>
<ApiMember(DataType:="string", Description:="The contact detail. e.g (phone number or email address)", Name:="ContactDetails")>
Public Overridable Property ContactDetails As String
End Class
Public Partial Class ConnectedContactModel
'''<Summary>
'''Guid of the contact object within Eros.
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Guid of the contact object within Eros.", Name:="ContactId")>
Public Overridable Property ContactId As Guid
'''<Summary>
'''The salutation(preferred name) for the contact. Applies to a person contact type.
'''</Summary>
<ApiMember(DataType:="string", Description:="The salutation(preferred name) for the contact. Applies to a person contact type.", Name:="Salutation")>
Public Overridable Property Salutation As String
'''<Summary>
'''The title for the contact. Applies to a person contact type.
'''</Summary>
<ApiMember(DataType:="string", Description:="The title for the contact. Applies to a person contact type.", Name:="Title")>
Public Overridable Property Title As String
'''<Summary>
'''The first given name for the contact. Applies to a person contact type.
'''</Summary>
<ApiMember(DataType:="string", Description:="The first given name for the contact. Applies to a person contact type.", Name:="FirstName")>
Public Overridable Property FirstName As String
'''<Summary>
'''Any middle names for the contact. Applies to a person contact type.
'''</Summary>
<ApiMember(DataType:="string", Description:="Any middle names for the contact. Applies to a person contact type.", Name:="MiddleName")>
Public Overridable Property MiddleName As String
'''<Summary>
'''The surname for the contact. Applies to a person contact type.
'''</Summary>
<ApiMember(DataType:="string", Description:="The surname for the contact. Applies to a person contact type.", Name:="Surname")>
Public Overridable Property Surname As String
'''<Summary>
'''The full name for the contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="The full name for the contact.", Name:="FullName")>
Public Overridable Property FullName As String
'''<Summary>
'''A legal name for the contact. Applies to an organisation contact type.
'''</Summary>
<ApiMember(DataType:="string", Description:="A legal name for the contact. Applies to an organisation contact type.", Name:="LegalName")>
Public Overridable Property LegalName As String
'''<Summary>
'''A trading name for the contact. Applies to an organisation contact type.
'''</Summary>
<ApiMember(DataType:="string", Description:="A trading name for the contact. Applies to an organisation contact type.", Name:="TradingName")>
Public Overridable Property TradingName As String
'''<Summary>
'''The birth date for the contact. Applies to a person contact type.
'''</Summary>
<ApiMember(DataType:="DateTime?", Description:="The birth date for the contact. Applies to a person contact type.", Name:="BirthDate")>
Public Overridable Property BirthDate As Date?
'''<Summary>
'''Guid of the marital status within Eros.
'''</Summary>
<ApiMember(DataType:="Guid?", Description:="Guid of the marital status within Eros.", Name:="MaritalStatusId")>
Public Overridable Property MaritalStatusId As Guid?
'''<Summary>
'''The contacts marital status if set.
'''</Summary>
<ApiMember(DataType:="string", Description:="The contacts marital status if set.", Name:="MaritalStatusName")>
Public Overridable Property MaritalStatusName As String
'''<Summary>
'''Guid of the gender within Eros.
'''</Summary>
<ApiMember(DataType:="Guid?", Description:="Guid of the gender within Eros.", Name:="GenderId")>
Public Overridable Property GenderId As Guid?
'''<Summary>
'''The contacts gender if set.
'''</Summary>
<ApiMember(DataType:="string", Description:="The contacts gender if set.", Name:="GenderName")>
Public Overridable Property GenderName As String
'''<Summary>
'''Preferred language of the contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="Preferred language of the contact.", Name:="Language")>
Public Overridable Property Language As String
'''<Summary>
'''If true, the contact requires an interpreter.
'''</Summary>
<ApiMember(DataType:="bool", Description:="If true, the contact requires an interpreter.", Name:="InterpreterRequired")>
Public Overridable Property InterpreterRequired As Boolean
'''<Summary>
'''Contact Type name of the contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="Contact Type name of the contact.", Name:="ContactTypeName")>
Public Overridable Property ContactTypeName As String
'''<Summary>
'''Guid of the Contact Type List Item object within Eros.
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Guid of the Contact Type List Item object within Eros.", Name:="ContactTypeId")>
Public Overridable Property ContactTypeId As Guid
'''<Summary>
'''Description of the contact for their external profile.
'''</Summary>
<ApiMember(DataType:="string", Description:="Description of the contact for their external profile.", Name:="Description")>
Public Overridable Property Description As String
'''<Summary>
'''Contact 'Profession/Trade/Industry' details for their external profile.
'''</Summary>
<ApiMember(DataType:="string", Description:="Contact 'Profession/Trade/Industry' details for their external profile.", Name:="EmploymentIndustry")>
Public Overridable Property EmploymentIndustry As String
'''<Summary>
'''Contact 'Working/Subcontracting for' details for their external profile.
'''</Summary>
<ApiMember(DataType:="string", Description:="Contact 'Working/Subcontracting for' details for their external profile.", Name:="EmploymentRole")>
Public Overridable Property EmploymentRole As String
'''<Summary>
'''Contact 'Work Area/Suburbs' detail for their external profile.
'''</Summary>
<ApiMember(DataType:="string", Description:="Contact 'Work Area/Suburbs' detail for their external profile.", Name:="EmploymentGeographicArea")>
Public Overridable Property EmploymentGeographicArea As String
'''<Summary>
'''The A.B.N for the contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="The A.B.N for the contact.", Name:="Abn")>
Public Overridable Property Abn As String
'''<Summary>
'''The A.C.N for the contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="The A.C.N for the contact.", Name:="Acn")>
Public Overridable Property Acn As String
'''<Summary>
'''The A.R.B.N for the contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="The A.R.B.N for the contact.", Name:="Arbn")>
Public Overridable Property Arbn As String
'''<Summary>
'''Timezone name that applies to the contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="Timezone name that applies to the contact.", Name:="TimezoneName")>
Public Overridable Property TimezoneName As String
'''<Summary>
'''A list of the contact details for the contact.
'''</Summary>
<ApiMember(DataType:="List<ConnectedContactDetailModel>", Description:="A list of the contact details for the contact.", Name:="ContactDetails")>
Public Overridable Property ContactDetails As List(Of ConnectedContactDetailModel)
'''<Summary>
'''A list of the contact addresses for the contact
'''</Summary>
<ApiMember(DataType:="List<ConnectedContactAddressModel>", Description:="A list of the contact addresses for the contact", Name:="ContactAddresses")>
Public Overridable Property ContactAddresses As List(Of ConnectedContactAddressModel)
'''<Summary>
'''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.
'''</Summary>
<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")>
Public Overridable Property IsContactConnected As Boolean
'''<Summary>
'''A list of connections this contact has with the licensee. May be active or a pending request to connect.
'''</Summary>
<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")>
Public Overridable Property Connections As List(Of ConnectedContactConnectionsModel)
'''<Summary>
'''A list of projects this contact is linked to as a customer.
'''</Summary>
<ApiMember(DataType:="List<ContactLinkedCustomerProjectsModel>", Description:="A list of projects this contact is linked to as a customer.", Name:="Projects")>
Public Overridable Property Projects As List(Of ContactLinkedCustomerProjectsModel)
'''<Summary>
'''A list of integration subscriptions used to link this contact to external records in other licensee owned systems.
'''</Summary>
<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")>
Public Overridable Property Subscriptions As List(Of ConnectedContactSubscriptionsModel)
End Class
Public Partial Class ConnectedContactSubscriptionsModel
'''<Summary>
'''Guid of the datasource within Eros.
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Guid of the datasource within Eros.", Name:="DatasourceId")>
Public Overridable Property DatasourceId As Guid
'''<Summary>
'''Name of the datasource that is the external system with a record of this contact.
'''</Summary>
<ApiMember(DataType:="string", Description:="Name of the datasource that is the external system with a record of this contact.", Name:="Datasource")>
Public Overridable Property Datasource As String
'''<Summary>
'''Foreign Key lookup of this contact in the external system the datasource represents.
'''</Summary>
<ApiMember(DataType:="string", Description:="Foreign Key lookup of this contact in the external system the datasource represents.", Name:="AlternateKey")>
Public Overridable Property AlternateKey As String
End Class
Public Partial Class ContactLinkedCustomerProjectsModel
'''<Summary>
'''Guid of the project within Eros.
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Guid of the project within Eros.", Name:="ProjectId")>
Public Overridable Property ProjectId As Guid
'''<Summary>
'''Name of the project.
'''</Summary>
<ApiMember(DataType:="string", Description:="Name of the project.", Name:="Name")>
Public Overridable Property Name As String
End Class
End Namespace
Namespace Eros.Subtle.Canvara.WebAPIModel.ServiceModelSubscription
'''<Summary>
'''Returns a list of contacts a licensee is linked to. Contacts are returned in batches.
'''</Summary>
<Api(Description:="Returns a list of contacts a licensee is linked to. Contacts are returned in batches.")>
Public Partial Class GetLicenseeContactList
'''<Summary>
'''Number of contacts to retrieve per call.
'''</Summary>
<ApiMember(DataType:="int", Description:="Number of contacts to retrieve per call.", IsRequired:=true, Name:="BatchSize")>
Public Overridable Property BatchSize As Integer
'''<Summary>
'''Call number (1=1st, 2=2nd) this should progress upwards until all contacts have been retrieved.
'''</Summary>
<ApiMember(DataType:="int", Description:="Call number (1=1st, 2=2nd) this should progress upwards until all contacts have been retrieved.", IsRequired:=true, Name:="BatchNumber")>
Public Overridable Property BatchNumber As Integer
End Class
<ApiResponse(Description:="List of Contacts")>
Public Partial Class GetLicenseeContactListResponse
'''<Summary>
'''List of contacts.
'''</Summary>
<ApiMember(DataType:="List<ConnectedContactModel>", Description:="List of contacts.", Name:="Contacts")>
Public Overridable Property Contacts As List(Of ConnectedContactModel)
'''<Summary>
'''Details of the api response. Success/Fail.
'''</Summary>
<ApiMember(DataType:="ResponseStatus", Description:="Details of the api response. Success/Fail.", Name:="ResponseStatus")>
Public Overridable Property ResponseStatus As ResponseStatus
End Class
End Namespace
End Namespace
VB.NET 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>