| Requires any of the roles: | SystemAdministrator, Manager, Customer |
| POST | /alerts |
|---|
namespace Voice.Api
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type EntityInfo() =
///<summary>
///The ID of the object
///</summary>
[<ApiMember(Description="The ID of the object")>]
member val Id:String = null with get,set
///<summary>
///The date the object was created
///</summary>
[<ApiMember(Description="The date the object was created")>]
member val DateCreated:String = null with get,set
///<summary>
///The date the object was last modified
///</summary>
[<ApiMember(Description="The date the object was last modified")>]
member val DateLastModified:String = null with get,set
///<summary>
///The user that created this object
///</summary>
[<ApiMember(Description="The user that created this object")>]
member val CreatedBy:String = null with get,set
///<summary>
///The user that last modified this object
///</summary>
[<ApiMember(Description="The user that last modified this object")>]
member val LastModifiedBy:String = null with get,set
type AlertTriggers =
| CallSpend = 0
| CallCount = 1
type AlertCustomerSelection =
| AllCustomers = 0
| ExcludeCustomers = 1
| IncludeCustomers = 2
[<AllowNullLiteral>]
type AlertInfo() =
inherit EntityInfo()
///<summary>
///The ID of the account associated with this alert
///</summary>
[<ApiMember(Description="The ID of the account associated with this alert")>]
member val AccountId:String = null with get,set
///<summary>
///The name of the alert
///</summary>
[<ApiMember(Description="The name of the alert")>]
member val Name:String = null with get,set
///<summary>
///The trigger alert
///</summary>
[<ApiMember(Description="The trigger alert")>]
member val Trigger:AlertTriggers = new AlertTriggers() with get,set
///<summary>
///The number of hours for the window over which the alert will trigger
///</summary>
[<ApiMember(Description="The number of hours for the window over which the alert will trigger")>]
member val WindowHours:Double = new Double() with get,set
///<summary>
///The value at which the alert will trigger
///</summary>
[<ApiMember(Description="The value at which the alert will trigger")>]
member val Threshold:Double = new Double() with get,set
///<summary>
///The email addresses (one per line) to notify
///</summary>
[<ApiMember(Description="The email addresses (one per line) to notify")>]
member val NotificationEmailAddresses:String = null with get,set
///<summary>
///Customer selection for this alert
///</summary>
[<ApiMember(Description="Customer selection for this alert")>]
member val CustomerSelection:AlertCustomerSelection = new AlertCustomerSelection() with get,set
///<summary>
///The list of customer IDs for the selection model
///</summary>
[<ApiMember(Description="The list of customer IDs for the selection model")>]
member val CustomerIds:ResizeArray<String> = null with get,set
///<summary>
///Creates a new alert
///</summary>
[<Api(Description="Creates a new alert")>]
[<AllowNullLiteral>]
type NewAlert() =
interface IPost
///<summary>
///The account ID to associate this alert with
///</summary>
[<ApiMember(Description="The account ID to associate this alert with")>]
member val AccountId:String = null with get,set
///<summary>
///The name of the alert
///</summary>
[<ApiMember(Description="The name of the alert")>]
member val Name:String = null with get,set
///<summary>
///The trigger alert
///</summary>
[<ApiMember(Description="The trigger alert")>]
member val Trigger:AlertTriggers = new AlertTriggers() with get,set
///<summary>
///The number of hours for the window over which the alert will trigger
///</summary>
[<ApiMember(Description="The number of hours for the window over which the alert will trigger")>]
member val WindowHours:Double = new Double() with get,set
///<summary>
///The value at which the alert will trigger
///</summary>
[<ApiMember(Description="The value at which the alert will trigger")>]
member val Threshold:Double = new Double() with get,set
///<summary>
///The email addresses (one per line) to notify
///</summary>
[<ApiMember(Description="The email addresses (one per line) to notify")>]
member val NotificationEmailAddresses:String = null with get,set
///<summary>
///Customer selection for this alert
///</summary>
[<ApiMember(Description="Customer selection for this alert")>]
member val CustomerSelection:AlertCustomerSelection = new AlertCustomerSelection() with get,set
///<summary>
///The list of customer IDs for the selection model
///</summary>
[<ApiMember(Description="The list of customer IDs for the selection model")>]
member val CustomerIds:ResizeArray<String> = null with get,set
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /alerts HTTP/1.1
Host: team.evovoice.io
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<NewAlert xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Alerts">
<AccountId>String</AccountId>
<CustomerIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</CustomerIds>
<CustomerSelection>AllCustomers</CustomerSelection>
<Name>String</Name>
<NotificationEmailAddresses>String</NotificationEmailAddresses>
<Threshold>0</Threshold>
<Trigger>CallSpend</Trigger>
<WindowHours>0</WindowHours>
</NewAlert>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<AlertInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Alerts">
<CreatedBy xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</CreatedBy>
<DateCreated xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</DateCreated>
<DateLastModified xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</DateLastModified>
<Id xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</Id>
<LastModifiedBy xmlns="http://schemas.datacontract.org/2004/07/Voice.Api">String</LastModifiedBy>
<AccountId>String</AccountId>
<CustomerIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</CustomerIds>
<CustomerSelection>AllCustomers</CustomerSelection>
<Name>String</Name>
<NotificationEmailAddresses>String</NotificationEmailAddresses>
<Threshold>0</Threshold>
<Trigger>CallSpend</Trigger>
<WindowHours>0</WindowHours>
</AlertInfo>