| All Verbs | /api/contactgroups | ||
|---|---|---|---|
| All Verbs | /api/contactgroups/{ContactId} |
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 ContactGroupConnectionModel
Inherits UserProfileSummaryModel
'''<Summary>
'''Contact Group Id
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Contact Group Id", Name:="ContactGroupId")>
Public Overridable Property ContactGroupId As Guid
'''<Summary>
'''Connection id of the contact in the group
'''</Summary>
<ApiMember(DataType:="string", Description:="Connection id of the contact in the group", Name:="ContactGroupConnectionId")>
Public Overridable Property ContactGroupConnectionId As Guid
'''<Summary>
'''The Id of the Role this contact is connected to the group with.
'''</Summary>
<ApiMember(DataType:="string", Description:="The Id of the Role this contact is connected to the group with.", Name:="ConnectionRoleId")>
Public Overridable Property ConnectionRoleId As Guid
'''<Summary>
'''Order of contacts within a group, the primary contact will have an index of 1.
'''</Summary>
<ApiMember(DataType:="int", Description:="Order of contacts within a group, the primary contact will have an index of 1.", Name:="Index")>
Public Overridable Property Index As Integer
'''<Summary>
'''List of roles that the contact in the contact group has across appliances for e.g. Platform Customer, Nexus customer etc.
'''</Summary>
<ApiMember(DataType:="string", Description:="List of roles that the contact in the contact group has across appliances for e.g. Platform Customer, Nexus customer etc.", Name:="ContactRoles")>
Public Overridable Property ContactRoles As List(Of RoleModel)
End Class
Public Partial Class ContactGroupModel
'''<Summary>
'''Contact Group Id
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Contact Group Id", Name:="ContactGroupId")>
Public Overridable Property ContactGroupId As Guid
'''<Summary>
'''Contact Group Name
'''</Summary>
<ApiMember(DataType:="string", Description:="Contact Group Name", Name:="Name")>
Public Overridable Property Name As String
'''<Summary>
'''Contact Group Reference
'''</Summary>
<ApiMember(DataType:="string", Description:="Contact Group Reference", Name:="Reference")>
Public Overridable Property Reference As String
'''<Summary>
'''Group Role Id for e.g. Customer
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Group Role Id for e.g. Customer", Name:="GroupRoleId")>
Public Overridable Property GroupRoleId As Guid
'''<Summary>
'''Primary contact in the group
'''</Summary>
<ApiMember(DataType:="string", Description:="Primary contact in the group", Name:="PrimaryContactName")>
Public Overridable Property PrimaryContactName As String
'''<Summary>
'''Contact Id of the primary contact in the group
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Contact Id of the primary contact in the group", Name:="PrimaryContactId")>
Public Overridable Property PrimaryContactId As Guid
'''<Summary>
'''Profile photo url of the primary contact in the group
'''</Summary>
<ApiMember(DataType:="string", Description:="Profile photo url of the primary contact in the group", Name:="PrimaryContactPhotoUrl")>
Public Overridable Property PrimaryContactPhotoUrl As String
'''<Summary>
'''Profile photo thumbnail url of the primary contact in the group
'''</Summary>
<ApiMember(DataType:="string", Description:="Profile photo thumbnail url of the primary contact in the group", Name:="PrimaryContactThumbnailUrl")>
Public Overridable Property PrimaryContactThumbnailUrl As String
'''<Summary>
'''Number of contacts in the group
'''</Summary>
<ApiMember(DataType:="int", Description:="Number of contacts in the group", Name:="NumberOfContacts")>
Public Overridable Property NumberOfContacts As Integer
'''<Summary>
'''Record Status of contact group
'''</Summary>
<ApiMember(DataType:="string", Description:="Record Status of contact group", Name:="RecordStatus")>
Public Overridable Property RecordStatus As String
'''<Summary>
'''Details of contact in the contact group
'''</Summary>
<ApiMember(DataType:="List", Description:="Details of contact in the contact group", Name:="Contacts")>
Public Overridable Property Contacts As List(Of ContactGroupConnectionModel)
'''<Summary>
'''Details of projects for the contact group
'''</Summary>
<ApiMember(DataType:="List", Description:="Details of projects for the contact group", Name:="Projects")>
Public Overridable Property Projects As List(Of CustomerProjectModel)
End Class
Public Partial Class CustomerProjectModel
Public Overridable Property ProjectId As Guid
Public Overridable Property Name As String
Public Overridable Property ProjectAddress As String
Public Overridable Property ManagerContactId As Guid?
Public Overridable Property ManagerContactName As String
Public Overridable Property ManagerProfilePhotoUrl As String
Public Overridable Property ManagerProfilePhotoThumbnailUrl As String
Public Overridable Property SupervisorContactId As Guid?
Public Overridable Property SupervisorContactName As String
Public Overridable Property SupervisorProfilePhotoUrl As String
Public Overridable Property SupervisorProfilePhotoThumbnailUrl As String
Public Overridable Property CustomerServiceContactId As Guid?
Public Overridable Property CustomerServiceContactName As String
Public Overridable Property CustomerServiceProfilePhotoUrl As String
Public Overridable Property CustomerServiceProfilePhotoThumbnail 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 Partial Class RoleModel
'''<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>
'''Is the role a licensee role?
'''</Summary>
<ApiMember(DataType:="bool", Description:="Is the role a licensee role?", Name:="IsLicensee")>
Public Overridable Property IsLicenseeRole As Boolean
'''<Summary>
'''Is manage contacts role?
'''</Summary>
<ApiMember(DataType:="bool", Description:="Is manage contacts role?", Name:="IsManageContacts")>
Public Overridable Property IsManageContacts As Boolean
'''<Summary>
'''Is the role a Platform role?
'''</Summary>
<ApiMember(DataType:="bool", Description:="Is the role a Platform role?", Name:="IsPlatformRole")>
Public Overridable Property IsPlatformRole As Boolean
'''<Summary>
'''Is the role a services role?
'''</Summary>
<ApiMember(DataType:="bool", Description:="Is the role a services role?", Name:="IsServiceRole")>
Public Overridable Property IsServiceRole As Boolean
'''<Summary>
'''Is the role a customer role?
'''</Summary>
<ApiMember(DataType:="bool", Description:="Is the role a customer role?", Name:="IsCustomerRole")>
Public Overridable Property IsCustomerRole As Boolean
'''<Summary>
'''Is the role a functional role?
'''</Summary>
<ApiMember(DataType:="bool", Description:="Is the role a functional role?", Name:="IsFunctionalRole")>
Public Overridable Property IsFunctionalRole As Boolean
'''<Summary>
'''Is the role an auto-accept role?
'''</Summary>
<ApiMember(DataType:="bool", Description:="Is the role an auto-accept role?", Name:="IsRequestAutoAccepted")>
Public Overridable Property IsRequestAutoAccepted As Boolean
'''<Summary>
'''Suite that the role belongs to
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Suite that the role belongs to", Name:="SuiteId")>
Public Overridable Property SuiteId As Guid
'''<Summary>
'''Suite that the role belongs to
'''</Summary>
<ApiMember(DataType:="string", Description:="Suite that the role belongs to", Name:="SuiteName")>
Public Overridable Property SuiteName As String
'''<Summary>
''''A' (Active) or 'I' (Inactive)
'''</Summary>
<ApiMember(DataType:="string", Description:="'A' (Active) or 'I' (Inactive)", Name:="RecordStatus")>
Public Overridable Property RecordStatus As String
'''<Summary>
'''Object Connection Id, which is populated when the roles are returned based on those that are connected to an object.
'''</Summary>
<ApiMember(DataType:="Guid", Description:="Object Connection Id, which is populated when the roles are returned based on those that are connected to an object.", Name:="ObjectConnectionId")>
Public Overridable Property ObjectConnectionId As Guid
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
End Namespace
Namespace Eros.Subtle.Canvara.WebAPIModel.ServiceModel
'''<Summary>
'''Get customers for current licensee
'''</Summary>
<Api(Description:="Get customers for current licensee")>
Public Partial Class GetContactGroups
Inherits PagedModel
'''<Summary>
'''Get contactGroups for the specified contact
'''</Summary>
<ApiMember(Description:="Get contactGroups for the specified contact", Name:="ContactId")>
Public Overridable Property ContactId As Guid
'''<Summary>
'''Specific search text to search for i.e. Contact Name, Employment Details etc.
'''</Summary>
<ApiMember(DataType:="string", Description:="Specific search text to search for i.e. Contact Name, Employment Details etc.", Name:="SearchText")>
Public Overridable Property SearchText As String
'''<Summary>
'''Set the Contact Group Role Id to only retrieve groups of that type. If ContactId is not set this is mandatory.
'''</Summary>
<ApiMember(Description:="Set the Contact Group Role Id to only retrieve groups of that type. If ContactId is not set this is mandatory.", Name:="ContactGroupRoleId")>
Public Overridable Property ContactGroupRoleId As Guid
'''<Summary>
'''Include active contact groups
'''</Summary>
<ApiMember(Description:="Include active contact groups", Name:="IncludeActive")>
Public Overridable Property IncludeActive As Boolean
'''<Summary>
'''Include archived contact groups
'''</Summary>
<ApiMember(Description:="Include archived contact groups", Name:="IncludeArchived")>
Public Overridable Property IncludeArchived As Boolean
End Class
<ApiResponse(Description:="Get contact groups for current licensee")>
Public Partial Class GetContactGroupsResponse
Public Overridable Property ContactGroups As List(Of ContactGroupModel)
'''<Summary>
'''Count of total groups.
'''</Summary>
<ApiMember(DataType:="int", Description:="Count of total groups.", Name:="TotalGroups")>
Public Overridable Property TotalGroups As Integer
Public Overridable Property ResponseStatus As ResponseStatus
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/contactgroups HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"ContactId":"00000000-0000-0000-0000-000000000000","SearchText":"String","ContactGroupRoleId":"00000000-0000-0000-0000-000000000000","IncludeActive":false,"IncludeArchived":false,"PageNumber":0,"PageSize":0,"SortIndex":0,"SortOrder":"Ascending"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"ContactGroups":[{"ContactGroupId":"00000000-0000-0000-0000-000000000000","Name":"String","Reference":"String","GroupRoleId":"00000000-0000-0000-0000-000000000000","PrimaryContactName":"String","PrimaryContactId":"00000000-0000-0000-0000-000000000000","PrimaryContactPhotoUrl":"String","PrimaryContactThumbnailUrl":"String","NumberOfContacts":0,"RecordStatus":"String","Contacts":[{"ContactGroupId":"00000000-0000-0000-0000-000000000000","ContactGroupConnectionId":"00000000-0000-0000-0000-000000000000","ConnectionRoleId":"00000000-0000-0000-0000-000000000000","Index":0,"ContactRoles":[{"RoleId":"00000000-0000-0000-0000-000000000000","RoleName":"String","IsLicenseeRole":false,"IsManageContacts":false,"IsPlatformRole":false,"IsServiceRole":false,"IsCustomerRole":false,"IsFunctionalRole":false,"IsRequestAutoAccepted":false,"SuiteId":"00000000-0000-0000-0000-000000000000","SuiteName":"String","RecordStatus":"String","ObjectConnectionId":"00000000-0000-0000-0000-000000000000"}],"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}],"Projects":[{"ProjectId":"00000000-0000-0000-0000-000000000000","Name":"String","ProjectAddress":"String","ManagerContactId":"00000000000000000000000000000000","ManagerContactName":"String","ManagerProfilePhotoUrl":"String","ManagerProfilePhotoThumbnailUrl":"String","SupervisorContactId":"00000000000000000000000000000000","SupervisorContactName":"String","SupervisorProfilePhotoUrl":"String","SupervisorProfilePhotoThumbnailUrl":"String","CustomerServiceContactId":"00000000000000000000000000000000","CustomerServiceContactName":"String","CustomerServiceProfilePhotoUrl":"String","CustomerServiceProfilePhotoThumbnail":"String"}]}],"TotalGroups":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}