Evo Voice

<back to all web services

CallOutcomeReport

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager, Customer
The following routes are available for this service:
All Verbs/reports/call-outcome


export class NodeParameterMap
{
    [key:string] : NodeParameter;

    public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); }
}


export class ReportRequest implements IPost
{
    /** @description The account ID this report should be run for */
    // @ApiMember(Description="The account ID this report should be run for")
    public accountId: string;

    /** @description The email address to notify after the report is run */
    // @ApiMember(Description="The email address to notify after the report is run")
    public emailAddressToNotify: string;

    /** @description The webhook to call after the report is complete with the data from the report */
    // @ApiMember(Description="The webhook to call after the report is complete with the data from the report")
    public webhookUrl: string;

    public constructor(init?: Partial<ReportRequest>) { (Object as any).assign(this, init); }
}

export enum ReportStatuses
{
    Queued = 'Queued',
    Running = 'Running',
    Completed = 'Completed',
    Error = 'Error',
}

export class ReportInfo
{
    public id: string;
    public name: string;
    public status: ReportStatuses;
    public statusMessage: string;
    public dateCreated: string;
    public dateUpdated: string;
    public downloadLink: string;
    public jobId: string;
    public emailAddressToNotify: string;
    public server: string;

    public constructor(init?: Partial<ReportInfo>) { (Object as any).assign(this, init); }
}

export class CallOutcomeReport extends ReportRequest
{
    public startDate: string;
    public endDate: string;
    public timeZoneId: string;
    public customerId: string;
    public specificState: string;
    public includeArchivedSessions: boolean;

    public constructor(init?: Partial<CallOutcomeReport>) { super(init); (Object as any).assign(this, init); }
}

TypeScript CallOutcomeReport DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /reports/call-outcome HTTP/1.1 
Host: team.evovoice.io 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"startDate":"String","endDate":"String","timeZoneId":"String","customerId":"String","specificState":"String","includeArchivedSessions":false,"accountId":"String","emailAddressToNotify":"String","webhookUrl":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

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