Evo Voice

<back to all web services

EndpointsReport

This report returns all of the endpoints broken down by type per tab

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager, Customer
The following routes are available for this service:
GET/reports/endpoints
namespace Voice.Api.Endpoints

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

    type EndpointTypes =
        | PhoneNumber = 0
        | User = 1
        | FaxNumber = 2
        | EmailAddress = 3
        | Unused_1 = 4
        | Unused_2 = 5
        | Unused_3 = 6
        | Unused_4 = 7
        | Unused_5 = 8
        | Team = 9

    ///<summary>
    ///This report returns all of the endpoints broken down by type per tab
    ///</summary>
    [<Api(Description="This report returns all of the endpoints broken down by type per tab")>]
    [<AllowNullLiteral>]
    type EndpointsReport() = 
        inherit ReportRequest()
        ///<summary>
        ///The types of endpoints to return
        ///</summary>
        [<ApiMember(Description="The types of endpoints to return")>]
        member val Types:ResizeArray<EndpointTypes> = new ResizeArray<EndpointTypes>() with get,set

        ///<summary>
        ///Filter by specific customer
        ///</summary>
        [<ApiMember(Description="Filter by specific customer")>]
        member val CustomerId:String = null with get,set

F# EndpointsReport 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.

GET /reports/endpoints HTTP/1.1 
Host: evovoice.io 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ReportInfo xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Reports">
  <DateCreated>String</DateCreated>
  <DateUpdated>String</DateUpdated>
  <DownloadLink>String</DownloadLink>
  <EmailAddressToNotify>String</EmailAddressToNotify>
  <Id>String</Id>
  <JobId>String</JobId>
  <Name>String</Name>
  <Server>String</Server>
  <Status>Queued</Status>
  <StatusMessage>String</StatusMessage>
</ReportInfo>