Evo Voice

<back to all web services

AgentStateReport

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager, Customer
The following routes are available for this service:
All Verbs/reports/agent-state
namespace Voice.Api.Reports

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    type ReportStatuses =
        | Queued = 0
        | Running = 1
        | Completed = 2
        | Error = 3

    [<AllowNullLiteral>]
    type ReportInfo() = 
        member val Id:String = null with get,set
        member val Name:String = null with get,set
        member val Status:ReportStatuses = new ReportStatuses() with get,set
        member val StatusMessage:String = null with get,set
        member val DateCreated:String = null with get,set
        member val DateUpdated:String = null with get,set
        member val DownloadLink:String = null with get,set
        member val JobId:String = null with get,set
        member val EmailAddressToNotify:String = null with get,set
        member val Server:String = null with get,set

    [<AllowNullLiteral>]
    type ReportRequest() = 
        interface IPost
        ///<summary>
        ///The account ID this report should be run for
        ///</summary>
        [<ApiMember(Description="The account ID this report should be run for")>]
        member val AccountId:String = null with get,set

        ///<summary>
        ///The email address to notify after the report is run
        ///</summary>
        [<ApiMember(Description="The email address to notify after the report is run")>]
        member val EmailAddressToNotify:String = null with get,set

    [<AllowNullLiteral>]
    type AgentStateReport() = 
        inherit ReportRequest()
        member val StartDate:String = null with get,set
        member val EndDate:String = null with get,set
        member val TimeZoneId:String = null with get,set

F# AgentStateReport DTOs

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

HTTP + CSV

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

POST /reports/agent-state HTTP/1.1 
Host: evovoice.io 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"startDate":"String","endDate":"String","timeZoneId":"String","accountId":"String","emailAddressToNotify":"String"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"id":"String","name":"String","status":"Queued","statusMessage":"String","dateCreated":"String","dateUpdated":"String","downloadLink":"String","jobId":"String","emailAddressToNotify":"String","server":"String"}