All Verbs | /not-used |
---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Voice.Api
Imports Voice.Api.App
Imports Voice.Api.Flows
Imports Voice.Api.Endpoints
Imports Voice.Api.Notifications
Imports Voice.Api.Customers
Imports Voice.Api.Files
Imports Voice.Api.Flows.Data
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 NotUsedRequest
Public Overridable Property PushNotification As PushNotification
Public Overridable Property Notifications As List(Of NotificationInfo)
Public Overridable Property NodeParameter As NodeParameter
End Class
End Namespace
Namespace Voice.Api.App
Public Partial Class PushNotification
Public Overridable Property Type As PushNotificationTypes
Public Overridable Property Channel As FlowChannels
Public Overridable Property EndpointId As String
Public Overridable Property EndpointUserName As String
Public Overridable Property SessionId As String
Public Overridable Property Sender As String
Public Overridable Property Title As String
Public Overridable Property Body As String
Public Overridable Property Badge As Integer?
Public Overridable Property AttachmentUri As String
Public Overridable Property AttachmentContentType As String
Public Overridable Property AgentState As AgentStates
Public Overridable Property AgentStateReason As AgentStateReasons
End Class
Public Enum PushNotificationTypes
SessionDisconnected
SessionInvite
ChatMessage
SessionInactivated
AgentStateChanged
SessionHeld
SessionAnswered
ActiveSessionsChanged
Ping
SessionScreenChanged
Toast
SessionInfoChanged
MessageReceived
SessionHolding
End Enum
End Namespace
Namespace Voice.Api.Customers
Public Partial Class CustomerBreadcrumb
Public Overridable Property Id As String
Public Overridable Property Name As String
End Class
End Namespace
Namespace Voice.Api.Endpoints
Public Enum AgentStateReasons
Unknown
SetByUser
MissedCall
SetBySystem
End Enum
Public Enum AgentStates
Unknown
Ready
NotReady
LoggedOut
WrapUp
Outgoing
Other
End Enum
Public Enum UserDataFieldModes
Hidden
[ReadOnly]
ReadWrite
End Enum
End Namespace
Namespace Voice.Api.Files
Public Partial Class FileInfo
Inherits EntityInfo
'''<Summary>
'''The type of file this is
'''</Summary>
<ApiMember(Description:="The type of file this is")>
Public Overridable Property Type As FileTypes
'''<Summary>
'''The account ID this file is associated with
'''</Summary>
<ApiMember(Description:="The account ID this file is associated with")>
Public Overridable Property AccountId As String
'''<Summary>
'''The name of the account this file is associated with
'''</Summary>
<ApiMember(Description:="The name of the account this file is associated with")>
Public Overridable Property AccountName As String
'''<Summary>
'''The ID of the customer this file is associated with
'''</Summary>
<ApiMember(Description:="The ID of the customer this file is associated with")>
Public Overridable Property CustomerId As String
'''<Summary>
'''The name of the customer this file is associated with
'''</Summary>
<ApiMember(Description:="The name of the customer this file is associated with")>
Public Overridable Property CustomerName As String
'''<Summary>
'''The breadcrumb to the customer for this file
'''</Summary>
<ApiMember(Description:="The breadcrumb to the customer for this file")>
Public Overridable Property CustomerBreadcrumb As List(Of CustomerBreadcrumb)
'''<Summary>
'''The ID of the user this file is assocaited with
'''</Summary>
<ApiMember(Description:="The ID of the user this file is assocaited with")>
Public Overridable Property UserId As String
'''<Summary>
'''The name of the user this file is associated with
'''</Summary>
<ApiMember(Description:="The name of the user this file is associated with")>
Public Overridable Property UserName As String
'''<Summary>
'''The original file name for the file
'''</Summary>
<ApiMember(Description:="The original file name for the file")>
Public Overridable Property FileName As String
'''<Summary>
'''The URI of the file
'''</Summary>
<ApiMember(Description:="The URI of the file")>
Public Overridable Property Uri As String
'''<Summary>
'''The Content type of the file
'''</Summary>
<ApiMember(Description:="The Content type of the file")>
Public Overridable Property ContentType As String
'''<Summary>
'''The size of the file
'''</Summary>
<ApiMember(Description:="The size of the file")>
Public Overridable Property ContentLength As Long
'''<Summary>
'''The Twilio ID of the recording
'''</Summary>
<ApiMember(Description:="The Twilio ID of the recording")>
Public Overridable Property RecordingSid As String
'''<Summary>
'''The duration of the recording in seconds
'''</Summary>
<ApiMember(Description:="The duration of the recording in seconds")>
Public Overridable Property RecordingDuration As Integer
'''<Summary>
'''Who is the recording from?
'''</Summary>
<ApiMember(Description:="Who is the recording from?")>
Public Overridable Property RecordingFrom As String
'''<Summary>
'''Transcription (if available)
'''</Summary>
<ApiMember(Description:="Transcription (if available)")>
Public Overridable Property Transcription As String
'''<Summary>
'''From Address (e.g. caller ID) for incoming calls
'''</Summary>
<ApiMember(Description:="From Address (e.g. caller ID) for incoming calls")>
Public Overridable Property FromAddress As String
'''<Summary>
'''To Address (e.g. dialed number) for outgoing calls
'''</Summary>
<ApiMember(Description:="To Address (e.g. dialed number) for outgoing calls")>
Public Overridable Property ToAddress As String
'''<Summary>
'''The AI transcription for this call
'''</Summary>
<ApiMember(Description:="The AI transcription for this call")>
Public Overridable Property AITranscription As String
End Class
Public Enum FileTypes
Upload
VoiceMessage
CallRecording
Fax
Attachment
FaxOutgoing
End Enum
End Namespace
Namespace Voice.Api.Flows
Public Enum FlowChannels
Voice
Chat
Fax
End Enum
Public Partial Class NodeParameter
Public Overridable Property Id As String
Public Overridable Property Type As ValueTypes
Public Overridable Property Source As ValueSources
Public Overridable Property IsAsync As Boolean
Public Overridable Property ReferenceId As String
Public Overridable Property Value As Value
Public Overridable Property NoEvalTemplate As Boolean
Public Overridable Property ListParameters As List(Of NodeParameterMap)
Public Overridable Property StructParameters As NodeParameterMap
Public Overridable Property IsOutput As Boolean
Public Overridable Property Expression As String
Public Overridable Property ListType As DataType
End Class
Public Partial Class NodeParameterMap
Inherits Dictionary(Of String, NodeParameter)
End Class
End Namespace
Namespace Voice.Api.Flows.Data
Public Partial Class DataField
Public Overridable Property Id As String
Public Overridable Property Name As String
Public Overridable Property Type As ValueTypes
Public Overridable Property UIHint As UIHints
Public Overridable Property UITab As String
Public Overridable Property IsAsync As Boolean
Public Overridable Property DisableBinding As Boolean
Public Overridable Property StructType As DataType
Public Overridable Property ListType As DataType
Public Overridable Property Description As String
Public Overridable Property PossibleValues As List(Of String)
Public Overridable Property IsOutput As Boolean
Public Overridable Property CustomFieldValuesUrl As String
Public Overridable Property DefaultValue As Value
Public Overridable Property TransitionNameFormat As String
Public Overridable Property Uniqueness As DataFieldUniqueness
Public Overridable Property VoiceOnly As Boolean
Public Overridable Property ConditionalVisibilityField As String
Public Overridable Property ConditionalVisibilityValue As String
Public Overridable Property NoEvalTemplate As Boolean
Public Overridable Property UserMode As UserDataFieldModes
Public Overridable Property AnyValueType As Boolean
End Class
Public Enum DataFieldUniqueness
NotUnique
Unique
UniqueToCustomer
End Enum
Public Partial Class DataType
Public Overridable Property TypeName As String
Public Overridable Property Fields As List(Of DataField)
End Class
Public Partial Class Struct
Inherits Dictionary(Of String, Value)
End Class
Public Enum UIHints
None
LargeText
InlineForm
Password
InlineStruct
End Enum
Public Partial Class Value
Public Overridable Property BoolValue As Boolean?
Public Overridable Property StringValue As String
Public Overridable Property NumberValue As Double?
Public Overridable Property ListValue As List(Of Struct)
Public Overridable Property StructValue As Struct
End Class
Public Enum ValueSources
Value
Flow
System
Customer
Session
Endpoint
Expression
User
End Enum
Public Enum ValueTypes
NotSpecified
[String]
[Boolean]
Number
List
Struct
Transition
Custom
[Date]
AudioFile
TimeZoneId
PhoneNumber
User
Endpoint
Time
File
FaxNumber
EmailAccount
Customer
Flow
Team
FlowReference
Integration
Assistant
End Enum
End Namespace
Namespace Voice.Api.Notifications
Public Partial Class NotificationInfo
Inherits EntityInfo
'''<Summary>
'''The account ID this endpoint is associated with
'''</Summary>
<ApiMember(Description:="The account ID this endpoint is associated with")>
Public Overridable Property AccountId As String
'''<Summary>
'''The name of the account this endpoint is associated with
'''</Summary>
<ApiMember(Description:="The name of the account this endpoint is associated with")>
Public Overridable Property AccountName As String
'''<Summary>
'''The ID of the customer this endpoint is associated with
'''</Summary>
<ApiMember(Description:="The ID of the customer this endpoint is associated with")>
Public Overridable Property CustomerId As String
'''<Summary>
'''The name of the customer this endpoint is associated with
'''</Summary>
<ApiMember(Description:="The name of the customer this endpoint is associated with")>
Public Overridable Property CustomerName As String
'''<Summary>
'''The breadcrumb to the customer for this endpoint
'''</Summary>
<ApiMember(Description:="The breadcrumb to the customer for this endpoint")>
Public Overridable Property CustomerBreadcrumb As List(Of CustomerBreadcrumb)
'''<Summary>
'''The type of notification
'''</Summary>
<ApiMember(Description:="The type of notification")>
Public Overridable Property Type As NotificationTypes
'''<Summary>
'''The subject of the notification
'''</Summary>
<ApiMember(Description:="The subject of the notification")>
Public Overridable Property Subject As String
'''<Summary>
'''The body of the notification
'''</Summary>
<ApiMember(Description:="The body of the notification")>
Public Overridable Property Body As String
'''<Summary>
'''The recipients of this notification
'''</Summary>
<ApiMember(Description:="The recipients of this notification")>
Public Overridable Property Recipients As List(Of NotificationRecipientInfo)
'''<Summary>
'''The list of attachments
'''</Summary>
<ApiMember(Description:="The list of attachments")>
Public Overridable Property Attachments As List(Of FileInfo)
'''<Summary>
'''The original from for the session
'''</Summary>
<ApiMember(Description:="The original from for the session")>
Public Overridable Property From As String
'''<Summary>
'''The original To for the session
'''</Summary>
<ApiMember(Description:="The original To for the session")>
Public Overridable Property [To] As String
'''<Summary>
'''Was there an error?
'''</Summary>
<ApiMember(Description:="Was there an error?")>
Public Overridable Property [Error] As Boolean
'''<Summary>
'''The error message
'''</Summary>
<ApiMember(Description:="The error message")>
Public Overridable Property ErrorMessage As String
End Class
Public Partial Class NotificationRecipientInfo
'''<Summary>
'''The address of the recipient
'''</Summary>
<ApiMember(Description:="The address of the recipient")>
Public Overridable Property Address As String
'''<Summary>
'''Extra info about the recipient e.g. CC, BCC
'''</Summary>
<ApiMember(Description:="Extra info about the recipient e.g. CC, BCC")>
Public Overridable Property Extra As String
'''<Summary>
'''The name of the recipient
'''</Summary>
<ApiMember(Description:="The name of the recipient")>
Public Overridable Property Name As String
End Class
Public Enum NotificationTypes
Email
Sms
Push
IncomingCall
OutgoingCall
End Enum
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /not-used HTTP/1.1
Host: team.evovoice.io
Accept: application/json
Content-Type: application/json
Content-Length: length
{"pushNotification":{"type":"SessionDisconnected","channel":"Voice","endpointId":"String","endpointUserName":"String","sessionId":"String","sender":"String","title":"String","body":"String","badge":0,"attachmentUri":"String","attachmentContentType":"String","agentState":"Unknown","agentStateReason":"Unknown"},"notifications":[{"accountId":"String","accountName":"String","customerId":"String","customerName":"String","customerBreadcrumb":[{"id":"String","name":"String"}],"type":"Email","subject":"String","body":"String","recipients":[{"address":"String","extra":"String","name":"String"}],"attachments":[{"type":"Upload","accountId":"String","accountName":"String","customerId":"String","customerName":"String","customerBreadcrumb":[{"id":"String","name":"String"}],"userId":"String","userName":"String","fileName":"String","uri":"String","contentType":"String","contentLength":0,"recordingSid":"String","recordingDuration":0,"recordingFrom":"String","transcription":"String","fromAddress":"String","toAddress":"String","aiTranscription":"String","id":"String","dateCreated":"String","dateLastModified":"String","createdBy":"String","lastModifiedBy":"String"}],"from":"String","to":"String","error":false,"errorMessage":"String","id":"String","dateCreated":"String","dateLastModified":"String","createdBy":"String","lastModifiedBy":"String"}]}