Requires any of the roles: | SystemAdministrator, Manager |
GET | /users |
---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Voice.Api.Authentication
Imports Voice.Api
Imports Voice.Api.Accounts
Namespace Global
Namespace Voice.Api
Public Partial Class EntityInfo
'''<Summary>
'''The ID of the object
'''</Summary>
<ApiMember(Description:="The ID of the object")>
Public Overridable Property Id As String
'''<Summary>
'''The date the object was created
'''</Summary>
<ApiMember(Description:="The date the object was created")>
Public Overridable Property DateCreated As String
'''<Summary>
'''The date the object was last modified
'''</Summary>
<ApiMember(Description:="The date the object was last modified")>
Public Overridable Property DateLastModified As String
'''<Summary>
'''The user that created this object
'''</Summary>
<ApiMember(Description:="The user that created this object")>
Public Overridable Property CreatedBy As String
'''<Summary>
'''The user that last modified this object
'''</Summary>
<ApiMember(Description:="The user that last modified this object")>
Public Overridable Property LastModifiedBy As String
End Class
Public Partial Class ListRequest(Of T)
Implements IGet
'''<Summary>
'''The page of data to retrieve
'''</Summary>
<ApiMember(Description:="The page of data to retrieve")>
Public Overridable Property Page As Integer
'''<Summary>
'''If you want all objects to be returned. This should be used with care
'''</Summary>
<ApiMember(Description:="If you want all objects to be returned. This should be used with care")>
Public Overridable Property All As Boolean
'''<Summary>
'''The number per page to retrieve
'''</Summary>
<ApiMember(Description:="The number per page to retrieve")>
Public Overridable Property CountPerPage As Integer
'''<Summary>
'''Specific IDs
'''</Summary>
<ApiMember(Description:="Specific IDs")>
Public Overridable Property SpecificIds As List(Of String)
'''<Summary>
'''Specify a sort field
'''</Summary>
<ApiMember(Description:="Specify a sort field")>
Public Overridable Property SortField As String
'''<Summary>
'''Specify a sort order
'''</Summary>
<ApiMember(Description:="Specify a sort order")>
Public Overridable Property SortOrder As SortOrders
'''<Summary>
'''Disables total / page counts - improves performance. Returns only data. If there is no more data, Items will be empty array
'''</Summary>
<ApiMember(Description:="Disables total / page counts - improves performance. Returns only data. If there is no more data, Items will be empty array")>
Public Overridable Property SimplifiedPaging As Boolean
End Class
Public Partial Class ListResponse(Of T)
'''<Summary>
'''The items
'''</Summary>
<ApiMember(Description:="The items")>
Public Overridable Property Items As List(Of AccountInfo)
'''<Summary>
'''The total number of items
'''</Summary>
<ApiMember(Description:="The total number of items")>
Public Overridable Property TotalCount As Integer
'''<Summary>
'''The total number of pages
'''</Summary>
<ApiMember(Description:="The total number of pages")>
Public Overridable Property TotalPages As Integer
'''<Summary>
'''Are there more pages of items? Used with simplified paging
'''</Summary>
<ApiMember(Description:="Are there more pages of items? Used with simplified paging")>
Public Overridable Property HasMorePages As Boolean
End Class
Public Enum SortOrders
Ascend
Descend
End Enum
End Namespace
Namespace Voice.Api.Accounts
Public Partial Class AccountInfo
Inherits EntityInfo
'''<Summary>
'''The name of this account
'''</Summary>
<ApiMember(Description:="The name of this account")>
Public Overridable Property Name As String
'''<Summary>
'''The ID of this account's parent
'''</Summary>
<ApiMember(Description:="The ID of this account's parent")>
Public Overridable Property ParentAccountId As String
'''<Summary>
'''The twilio account SID
'''</Summary>
<ApiMember(Description:="The twilio account SID")>
Public Overridable Property TwilioAccountSid As String
'''<Summary>
'''The ancestors of this account. Useful for breadcrumbs
'''</Summary>
<ApiMember(Description:="The ancestors of this account. Useful for breadcrumbs")>
Public Overridable Property AncestorIds As List(Of String)
'''<Summary>
'''The max number of phone numbers this account can have
'''</Summary>
<ApiMember(Description:="The max number of phone numbers this account can have")>
Public Overridable Property MaxPhoneNumbers As Integer
'''<Summary>
'''This account is BYOA
'''</Summary>
<ApiMember(Description:="This account is BYOA")>
Public Overridable Property IsBYOA As Boolean
'''<Summary>
'''TrustHub Profile Sid
'''</Summary>
<ApiMember(Description:="TrustHub Profile Sid")>
Public Overridable Property TrustHubProfileSid As String
'''<Summary>
'''The ID of the logo file
'''</Summary>
<ApiMember(Description:="The ID of the logo file")>
Public Overridable Property LogoId As String
'''<Summary>
'''The URI of the logo file
'''</Summary>
<ApiMember(Description:="The URI of the logo file")>
Public Overridable Property LogoUri As String
'''<Summary>
'''The billing settings for this account
'''</Summary>
<ApiMember(Description:="The billing settings for this account")>
Public Overridable Property BillingSettings As BillingSettings
End Class
Public Partial Class BillingItem
Public Overridable Property BaseCost As Double
Public Overridable Property RawUnitMultiplier As Double
Public Overridable Property UnitCost As Double
Public Overridable Property Allowance As Integer
End Class
Public Partial Class BillingSettings
Public Overridable Property Base As BillingItem
Public Overridable Property LocalNumbers As BillingItem
Public Overridable Property TollFreeNumbers As BillingItem
Public Overridable Property InboundVoiceCalls As BillingItem
Public Overridable Property OutboundVoiceCalls As BillingItem
Public Overridable Property InboundFaxes As BillingItem
Public Overridable Property OutboundFaxes As BillingItem
Public Overridable Property InboundSmsMessages As BillingItem
Public Overridable Property OutboundSmsMessages As BillingItem
Public Overridable Property AIInsights As BillingItem
Public Overridable Property AILiveMinutes As BillingItem
End Class
End Namespace
Namespace Voice.Api.Authentication
Public Enum DashboardPermissions
ViewFiles
ViewNotifications
ViewSessions
ViewEndpoints
ViewReports
ViewCustomers
ViewFlows
End Enum
'''<Summary>
'''Gets the users for the specified account
'''</Summary>
<Api(Description:="Gets the users for the specified account")>
Public Partial Class ListUsers
Inherits ListRequest(Of UserInfo)
'''<Summary>
'''The account IDs whose users you want to retrieve
'''</Summary>
<ApiMember(Description:="The account IDs whose users you want to retrieve")>
Public Overridable Property AccountIds As List(Of String)
'''<Summary>
'''Filter by email
'''</Summary>
<ApiMember(Description:="Filter by email")>
Public Overridable Property EmailFilter As String
End Class
Public Partial Class UserInfo
Public Overridable Property Id As String
Public Overridable Property IsAuthenticated As Boolean
Public Overridable Property FirstName As String
Public Overridable Property LastName As String
Public Overridable Property Name As String
Public Overridable Property AvatarUrl As String
Public Overridable Property EmailAddress As String
Public Overridable Property Roles As List(Of String)
Public Overridable Property AccountIds As List(Of String)
Public Overridable Property AccountNames As List(Of String)
Public Overridable Property DashboardPermissions As List(Of DashboardPermissions)
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.
GET /users HTTP/1.1 Host: team.evovoice.io Accept: text/csv
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"items":[{"id":"String","isAuthenticated":false,"firstName":"String","lastName":"String","name":"String","avatarUrl":"String","emailAddress":"String","roles":["String"],"accountIds":["String"],"accountNames":["String"],"dashboardPermissions":["ViewFiles"]}],"totalCount":0,"totalPages":0,"hasMorePages":false}