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 .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"}}}