Requires any of the roles: | SystemAdministrator, Manager, Customer |
All Verbs | /reports/metric |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class CustomMetricReport : ReportRequest()
{
var startDate:String? = null
var endDate:String? = null
var metricName:String? = null
var timeZoneId:String? = null
}
open class ReportRequest : IPost
{
/**
* The account ID this report should be run for
*/
@ApiMember(Description="The account ID this report should be run for")
var accountId:String? = null
/**
* The email address to notify after the report is run
*/
@ApiMember(Description="The email address to notify after the report is run")
var emailAddressToNotify:String? = null
}
open class ReportInfo
{
var id:String? = null
var name:String? = null
var status:ReportStatuses? = null
var statusMessage:String? = null
var dateCreated:String? = null
var dateUpdated:String? = null
var downloadLink:String? = null
var jobId:String? = null
var emailAddressToNotify:String? = null
var server:String? = null
}
enum class ReportStatuses
{
Queued,
Running,
Completed,
Error,
}
Kotlin CustomMetricReport DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /reports/metric HTTP/1.1
Host: evovoice.io
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"startDate":"String","endDate":"String","metricName":"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"}