Platform API

<back to all web services

GetContactRoleDetails

Get details of the specified contact role, including details of the contacts and organisations sharing it

Requires Authentication
The following routes are available for this service:
All Verbs/api/contactrole/{ContactRoleId}
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.ServiceModel
Imports Eros.Saguna.Common.WebAPIModel.Models

Namespace Global

    Namespace Eros.Saguna.Common.WebAPIModel.Models

        Public Partial Class ListItemFilterModel
            Public Overridable Property ListItemFilterId As Guid
            Public Overridable Property FilterName As String
            Public Overridable Property ListId As Guid
            Public Overridable Property ListItemId As Guid
            Public Overridable Property ListItemIsInFilter As Boolean
        End Class

        Public Partial Class ObjectShareModel
            Public Overridable Property ObjectShareId As Guid
            Public Overridable Property ObjectId As Guid
            Public Overridable Property ObjectName As String
            Public Overridable Property Name As String
            Public Overridable Property Description As String
            Public Overridable Property Reference As String
            Public Overridable Property ContactId As Guid
            Public Overridable Property ContactName As String
            Public Overridable Property ContactType As String
            Public Overridable Property ContactImageUrlPrimary As String
            Public Overridable Property ContactImageUrlPrimaryThmbnail As String
            Public Overridable Property ShareStatusId As Guid
            Public Overridable Property ShareStatusName As String
        End Class

        Public Partial Class PagedModel
            '''<Summary>
            '''Page Number to retrieve
            '''</Summary>
            <ApiMember(DataType:="int", Description:="Page Number to retrieve", Name:="PageNumber")>
            Public Overridable Property PageNumber As Integer

            '''<Summary>
            '''Number of records to retrieve
            '''</Summary>
            <ApiMember(DataType:="int", Description:="Number of records to retrieve", Name:="PageSize")>
            Public Overridable Property PageSize As Integer

            '''<Summary>
            '''Index of field to sort results by
            '''</Summary>
            <ApiMember(DataType:="int", Description:="Index of field to sort results by", Name:="SortIndex")>
            Public Overridable Property SortIndex As Integer

            '''<Summary>
            '''Sort Order - Ascending or Descending
            '''</Summary>
            <ApiMember(DataType:="int", Description:="Sort Order - Ascending or Descending", Name:="SortOrder")>
            Public Overridable Property SortOrder As SortOrder
        End Class

        Public Enum SortOrder
            Ascending
            Descending
        End Enum

        Public Partial Class UserProfileSummaryModel
            '''<Summary>
            '''User Profile Id
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="User Profile Id", Name:="UserProfileId")>
            Public Overridable Property UserProfileId As Guid

            '''<Summary>
            '''User linked to the profile
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="User linked to the profile", Name:="UserId")>
            Public Overridable Property UserId As Guid

            '''<Summary>
            '''Contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="Contact linked to the profile", Name:="ContactId")>
            Public Overridable Property ContactId As Guid

            '''<Summary>
            '''User linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="User linked to the profile", Name:="UserName")>
            Public Overridable Property UserName As String

            '''<Summary>
            '''User Profile Name
            '''</Summary>
            <ApiMember(DataType:="string", Description:="User Profile Name", Name:="ProfileName")>
            Public Overridable Property ProfileName As String

            '''<Summary>
            '''Full name of the contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Full name of the contact linked to the profile", Name:="ContactFullName")>
            Public Overridable Property ContactFullName As String

            '''<Summary>
            '''Email Address of the contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Email Address of the contact linked to the profile", Name:="EmailAddress")>
            Public Overridable Property EmailAddress As String

            '''<Summary>
            '''Email signature of the contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Email signature of the contact linked to the profile", Name:="EmailSignature")>
            Public Overridable Property EmailSignature As String

            '''<Summary>
            '''Mobile number of the contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Mobile number of the contact linked to the profile", Name:="MobileNumber")>
            Public Overridable Property MobileNumber As String

            '''<Summary>
            '''Phone number of the contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Phone number of the contact linked to the profile", Name:="PhoneNumber")>
            Public Overridable Property PhoneNumber As String

            '''<Summary>
            '''Type of contact (person, organisation etc.) linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Type of contact (person, organisation etc.) linked to the profile", Name:="ContactTypeId")>
            Public Overridable Property ContactTypeId As Guid

            '''<Summary>
            '''Type of contact (person, organisation etc.) linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Type of contact (person, organisation etc.) linked to the profile", Name:="ContactTypeName")>
            Public Overridable Property ContactTypeName As String

            '''<Summary>
            '''First name of the contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="First name of the contact linked to the profile", Name:="FirstName")>
            Public Overridable Property FirstName As String

            '''<Summary>
            '''Surname of the contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Surname of the contact linked to the profile", Name:="Surname")>
            Public Overridable Property Surname As String

            '''<Summary>
            '''Title of contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Title of contact linked to the profile", Name:="Title")>
            Public Overridable Property Title As String

            '''<Summary>
            '''Legal name of contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Legal name of contact linked to the profile", Name:="LegalName")>
            Public Overridable Property LegalName As String

            '''<Summary>
            '''Trading name of contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Trading name of contact linked to the profile", Name:="TradingName")>
            Public Overridable Property TradingName As String

            '''<Summary>
            '''Australian Business Number
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Australian Business Number", Name:="Abn", ParameterType:="query")>
            Public Overridable Property Abn As String

            '''<Summary>
            '''Australian Company Number
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Australian Company Number", Name:="Acn", ParameterType:="query")>
            Public Overridable Property Acn As String

            '''<Summary>
            '''Australian Registered Body Number
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Australian Registered Body Number", Name:="Arbn", ParameterType:="query")>
            Public Overridable Property Arbn As String

            '''<Summary>
            '''Indicates if the Contact is registered for GST.
            '''</Summary>
            <ApiMember(DataType:="bool", Description:="Indicates if the Contact is registered for GST.", Name:="GstRegistered", ParameterType:="query")>
            Public Overridable Property GstRegistered As Boolean

            '''<Summary>
            '''True if english is a secondary language for the contact.
            '''</Summary>
            <ApiMember(DataType:="bool", Description:="True if english is a secondary language for the contact.", Name:="ESL", ParameterType:="query")>
            Public Overridable Property ESL As Boolean

            '''<Summary>
            '''Language that is the primary language for the contact.
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Language that is the primary language for the contact.", Name:="Language", ParameterType:="query")>
            Public Overridable Property Language As String

            '''<Summary>
            '''True if an interpreter is required.
            '''</Summary>
            <ApiMember(DataType:="bool", Description:="True if an interpreter is required.", Name:="InterpreterRequired", ParameterType:="query")>
            Public Overridable Property InterpreterRequired As Boolean

            '''<Summary>
            '''Licensee specific notes about the contact.
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Licensee specific notes about the contact.", Name:="LicenseeNotes", ParameterType:="query")>
            Public Overridable Property LicenseeNotes As String

            '''<Summary>
            '''Profile photo of contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Profile photo of contact linked to the profile", Name:="ProfilePhotoUrl")>
            Public Overridable Property ProfilePhotoUrl As String

            '''<Summary>
            '''Thumbnail photo of contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Thumbnail photo of contact linked to the profile", Name:="ProfilePhotoThumbnailUrl")>
            Public Overridable Property ProfilePhotoThumbnailUrl As String

            '''<Summary>
            '''Profile photo id of contact linked to the profile
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="Profile photo id of contact linked to the profile", Name:="ProfileImageId")>
            Public Overridable Property ProfileImageId As Guid

            '''<Summary>
            '''Profile description
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Profile description", Name:="Description")>
            Public Overridable Property Description As String

            '''<Summary>
            '''Employment Industry
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Employment Industry", Name:="EmploymentIndustry")>
            Public Overridable Property EmploymentIndustry As String

            '''<Summary>
            '''Employment Role
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Employment Role", Name:="EmploymentRole")>
            Public Overridable Property EmploymentRole As String

            '''<Summary>
            '''Areas of Work
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Areas of Work", Name:="EmploymentGeographicArea")>
            Public Overridable Property EmploymentGeographicArea As String

            '''<Summary>
            '''The contacts timezone.
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="The contacts timezone.", Name:="Timezone", ParameterType:="query")>
            Public Overridable Property Timezone As Guid

            '''<Summary>
            '''Timezone Name
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Timezone Name", Name:="TimezoneName", ParameterType:="query")>
            Public Overridable Property TimezoneName As String

            '''<Summary>
            '''The primary address of the contact
            '''</Summary>
            <ApiMember(DataType:="string", Description:="The primary address of the contact", Name:="PrimaryAddress", ParameterType:="query")>
            Public Overridable Property PrimaryAddress As String

            '''<Summary>
            '''Is this an active contact? Or an inactive contact (deleted account)?
            '''</Summary>
            <ApiMember(DataType:="bool", Description:="Is this an active contact? Or an inactive contact (deleted account)?", Name:="IsActiveContact")>
            Public Overridable Property IsActiveContact As Boolean
        End Class

        Public Partial Class ViewRoleModel
            Inherits PagedModel
            '''<Summary>
            '''Role Id
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="Role Id", IsRequired:=true, Name:="RoleId")>
            Public Overridable Property RoleId As Guid

            '''<Summary>
            '''Role Name
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Role Name", Name:="RoleName")>
            Public Overridable Property RoleName As String

            '''<Summary>
            '''Role Connection Definition Id
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="Role Connection Definition Id", Name:="RoleConnectionDefinitionId")>
            Public Overridable Property RoleConnectionDefinitionId As Guid

            '''<Summary>
            '''Contact Types the Role applies to
            '''</Summary>
            <ApiMember(DataType:="List", Description:="Contact Types the Role applies to", Name:="ContactTypes")>
            Public Overridable Property ContactTypes As List(Of Guid)

            '''<Summary>
            '''Does the role require contacts to accept it?
            '''</Summary>
            <ApiMember(DataType:="bool", Description:="Does the role require contacts to accept it?", Name:="RequireContactsToAccept")>
            Public Overridable Property RequireContactsToAccept As Boolean

            Public Overridable Property IsPlatformRole As Boolean
            Public Overridable Property CanAddContacts As Boolean
            Public Overridable Property CanShareRole As Boolean
            Public Overridable Property CanEditRole As Boolean
            Public Overridable Property CanEditContactTypes As Boolean
            Public Overridable Property Contacts As List(Of UserProfileSummaryModel)
            Public Overridable Property ShareDetails As IList(Of ObjectShareModel)
            Public Overridable Property ListItemFilters As List(Of ListItemFilterModel)
            Public Overridable Property ContactIdOwner As Guid
            Public Overridable Property TotalItemCount As Integer
        End Class
    End Namespace

    Namespace Eros.Subtle.Canvara.WebAPIModel.ServiceModel

        '''<Summary>
        '''Get details of the specified contact role, including details of the contacts and organisations sharing it
        '''</Summary>
        <Api(Description:="Get details of the specified contact role, including details of the contacts and organisations sharing it")>
        Public Partial Class GetContactRoleDetails
            Inherits PagedModel
            '''<Summary>
            '''The Contact Role Guid. Records retrieved will belong to this contact.
            '''</Summary>
            <ApiMember(DataType:="Guid", Description:="The Contact Role Guid. Records retrieved will belong to this contact.", IsRequired:=true, Name:="ContactRoleId", ParameterType:="query")>
            Public Overridable Property ContactRoleId As Guid

            '''<Summary>
            '''Text filter
            '''</Summary>
            <ApiMember(DataType:="string", Description:="Text filter", Name:="SearchText", ParameterType:="query")>
            Public Overridable Property SearchText As String
        End Class

        <ApiResponse(Description:="Details of the specified contact role, including details of the contacts and organisations sharing it")>
        Public Partial Class GetContactRoleDetailsResponse
            Public Overridable Property ContactRole As ViewRoleModel
            Public Overridable Property ResponseStatus As ResponseStatus
        End Class
    End Namespace
End Namespace

VB.NET GetContactRoleDetails DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/contactrole/{ContactRoleId} HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"ContactRoleId":"00000000-0000-0000-0000-000000000000","SearchText":"String","PageNumber":0,"PageSize":0,"SortIndex":0,"SortOrder":"Ascending"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ContactRole":{"RoleId":"00000000-0000-0000-0000-000000000000","RoleName":"String","RoleConnectionDefinitionId":"00000000-0000-0000-0000-000000000000","ContactTypes":["00000000-0000-0000-0000-000000000000"],"RequireContactsToAccept":false,"IsPlatformRole":false,"CanAddContacts":false,"CanShareRole":false,"CanEditRole":false,"CanEditContactTypes":false,"Contacts":[{"UserProfileId":"00000000-0000-0000-0000-000000000000","UserId":"00000000-0000-0000-0000-000000000000","ContactId":"00000000-0000-0000-0000-000000000000","UserName":"String","ProfileName":"String","ContactFullName":"String","EmailAddress":"String","EmailSignature":"String","MobileNumber":"String","PhoneNumber":"String","ContactTypeId":"00000000-0000-0000-0000-000000000000","ContactTypeName":"String","FirstName":"String","Surname":"String","Title":"String","LegalName":"String","TradingName":"String","Abn":"String","Acn":"String","Arbn":"String","GstRegistered":false,"ESL":false,"Language":"String","InterpreterRequired":false,"LicenseeNotes":"String","ProfilePhotoUrl":"String","ProfilePhotoThumbnailUrl":"String","ProfileImageId":"00000000-0000-0000-0000-000000000000","Description":"String","EmploymentIndustry":"String","EmploymentRole":"String","EmploymentGeographicArea":"String","Timezone":"00000000-0000-0000-0000-000000000000","TimezoneName":"String","PrimaryAddress":"String","IsActiveContact":false}],"ShareDetails":null,"ListItemFilters":[{"ListItemFilterId":"00000000-0000-0000-0000-000000000000","FilterName":"String","ListId":"00000000-0000-0000-0000-000000000000","ListItemId":"00000000-0000-0000-0000-000000000000","ListItemIsInFilter":false}],"ContactIdOwner":"00000000-0000-0000-0000-000000000000","TotalItemCount":0,"PageNumber":0,"PageSize":0,"SortIndex":0,"SortOrder":"Ascending"},"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}