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
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    /**
    * This report returns all of the endpoints broken down by type per tab
    */
    @Api(Description="This report returns all of the endpoints broken down by type per tab")
    public static class EndpointsReport extends ReportRequest
    {
        /**
        * The types of endpoints to return
        */
        @ApiMember(Description="The types of endpoints to return")
        public ArrayList<EndpointTypes> types = null;

        /**
        * Filter by specific customer
        */
        @ApiMember(Description="Filter by specific customer")
        public String customerId = null;
        
        public ArrayList<EndpointTypes> getTypes() { return types; }
        public EndpointsReport setTypes(ArrayList<EndpointTypes> value) { this.types = value; return this; }
        public String getCustomerId() { return customerId; }
        public EndpointsReport setCustomerId(String value) { this.customerId = value; return this; }
    }

    public static class ReportRequest implements IPost
    {
        /**
        * The account ID this report should be run for
        */
        @ApiMember(Description="The account ID this report should be run for")
        public String accountId = null;

        /**
        * The email address to notify after the report is run
        */
        @ApiMember(Description="The email address to notify after the report is run")
        public String emailAddressToNotify = null;
        
        public String getAccountId() { return accountId; }
        public ReportRequest setAccountId(String value) { this.accountId = value; return this; }
        public String getEmailAddressToNotify() { return emailAddressToNotify; }
        public ReportRequest setEmailAddressToNotify(String value) { this.emailAddressToNotify = value; return this; }
    }

    public static enum EndpointTypes
    {
        PhoneNumber,
        User,
        FaxNumber,
        EmailAddress,
        Unused1,
        Unused2,
        Unused3,
        Unused4,
        Unused5,
        Team;
    }

    public static class ReportInfo
    {
        public String id = null;
        public String name = null;
        public ReportStatuses status = null;
        public String statusMessage = null;
        public String dateCreated = null;
        public String dateUpdated = null;
        public String downloadLink = null;
        public String jobId = null;
        public String emailAddressToNotify = null;
        public String server = null;
        
        public String getId() { return id; }
        public ReportInfo setId(String value) { this.id = value; return this; }
        public String getName() { return name; }
        public ReportInfo setName(String value) { this.name = value; return this; }
        public ReportStatuses getStatus() { return status; }
        public ReportInfo setStatus(ReportStatuses value) { this.status = value; return this; }
        public String getStatusMessage() { return statusMessage; }
        public ReportInfo setStatusMessage(String value) { this.statusMessage = value; return this; }
        public String getDateCreated() { return dateCreated; }
        public ReportInfo setDateCreated(String value) { this.dateCreated = value; return this; }
        public String getDateUpdated() { return dateUpdated; }
        public ReportInfo setDateUpdated(String value) { this.dateUpdated = value; return this; }
        public String getDownloadLink() { return downloadLink; }
        public ReportInfo setDownloadLink(String value) { this.downloadLink = value; return this; }
        public String getJobId() { return jobId; }
        public ReportInfo setJobId(String value) { this.jobId = value; return this; }
        public String getEmailAddressToNotify() { return emailAddressToNotify; }
        public ReportInfo setEmailAddressToNotify(String value) { this.emailAddressToNotify = value; return this; }
        public String getServer() { return server; }
        public ReportInfo setServer(String value) { this.server = value; return this; }
    }

    public static enum ReportStatuses
    {
        Queued,
        Running,
        Completed,
        Error;
    }

}

Java 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>