Evo Voice

<back to all web services

PatchAlert

Update a specific alert

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager, Customer
The following routes are available for this service:
PATCH/alerts/{alertId}
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

    [<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>
    ///Update a specific alert
    ///</summary>
    [<Api(Description="Update a specific alert")>]
    [<AllowNullLiteral>]
    type PatchAlert() = 
        interface IPatch
        ///<summary>
        ///The ID of the alert you want to update
        ///</summary>
        [<ApiMember(Description="The ID of the alert you want to update")>]
        member val AlertId:String = null with get,set

        ///<summary>
        ///The name for the alert
        ///</summary>
        [<ApiMember(Description="The name for the alert")>]
        member val Name:String = null with get,set

        ///<summary>
        ///The trigger alert
        ///</summary>
        [<ApiMember(Description="The trigger alert")>]
        member val Trigger:Nullable<AlertTriggers> = new Nullable<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:Nullable<Double> = new Nullable<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:Nullable<Double> = new Nullable<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

F# PatchAlert DTOs

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

HTTP + XML

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

PATCH /alerts/{alertId} HTTP/1.1 
Host: evovoice.io 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<PatchAlert xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Alerts">
  <AlertId>String</AlertId>
  <Name>String</Name>
  <NotificationEmailAddresses>String</NotificationEmailAddresses>
  <Threshold>0</Threshold>
  <Trigger>CallSpend</Trigger>
  <WindowHours>0</WindowHours>
</PatchAlert>
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>
  <Name>String</Name>
  <NotificationEmailAddresses>String</NotificationEmailAddresses>
  <Threshold>0</Threshold>
  <Trigger>CallSpend</Trigger>
  <WindowHours>0</WindowHours>
</AlertInfo>