Trendsic Platform Service

<back to all web services

BranchCalendarRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/queue/calendar/{LocationId}
namespace CRM.AgencyPlatform.API.Internal

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

    [<AllowNullLiteral>]
    type BranchCalendarHours() = 
        member val Date:String = null with get,set
        member val Opens:String = null with get,set
        member val Closes:String = null with get,set
        member val Closed:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarBranch() = 
        member val Id:Guid = new Guid() with get,set
        member val Name:String = null with get,set
        member val Street:String = null with get,set
        member val TimeZone:String = null with get,set
        member val Windows:Int32 = new Int32() with get,set
        member val Hours:ResizeArray<BranchCalendarHours> = new ResizeArray<BranchCalendarHours>() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarLine() = 
        member val Id:Guid = new Guid() with get,set
        member val Name:String = null with get,set
        member val Minutes:Int32 = new Int32() with get,set
        member val Color:String = null with get,set

    [<AllowNullLiteral>]
    type BranchCalendarCustomer() = 
        member val ContactId:Int32 = new Int32() with get,set
        member val ContactGuid:Nullable<Guid> = new Nullable<Guid>() with get,set
        member val Name:String = null with get,set
        member val Phone:String = null with get,set
        member val Email:String = null with get,set

    [<AllowNullLiteral>]
    type BranchCalendarServiceItem() = 
        member val LineId:Nullable<Guid> = new Nullable<Guid>() with get,set
        member val Name:String = null with get,set
        member val Minutes:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarStatus() = 
        member val State:String = null with get,set
        member val TicketLabel:String = null with get,set
        member val Window:String = null with get,set
        member val ArrivedAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val CalledAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val ServedAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val NoShowAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val CancelledAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val CancelledBy:String = null with get,set
        member val Source:String = null with get,set
        member val CanCheckIn:Boolean = new Boolean() with get,set
        member val CanNoShow:Boolean = new Boolean() with get,set
        member val CanReopen:Boolean = new Boolean() with get,set
        member val CanChange:Boolean = new Boolean() with get,set
        member val CanCancel:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarPaperwork() = 
        member val AsksQuestionnaire:Boolean = new Boolean() with get,set
        member val AsksUpload:Boolean = new Boolean() with get,set
        member val Submitted:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarEvent() = 
        member val CalendarEventId:Int32 = new Int32() with get,set
        member val Kind:String = null with get,set
        member val Title:String = null with get,set
        member val StartLocal:DateTime = new DateTime() with get,set
        member val EndLocal:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val AllDay:Boolean = new Boolean() with get,set
        member val Description:String = null with get,set
        member val Customer:BranchCalendarCustomer = null with get,set
        member val Services:ResizeArray<BranchCalendarServiceItem> = new ResizeArray<BranchCalendarServiceItem>() with get,set
        member val Status:BranchCalendarStatus = null with get,set
        member val CheckInId:Nullable<Guid> = new Nullable<Guid>() with get,set
        member val Paperwork:BranchCalendarPaperwork = null with get,set

    [<AllowNullLiteral>]
    type BranchCalendarStaffHour() = 
        member val Date:String = null with get,set
        member val Hour:Int32 = new Int32() with get,set
        member val Windows:Decimal = new Decimal() with get,set
        member val Source:String = null with get,set

    [<AllowNullLiteral>]
    type BranchCalendarWeekdayHour() = 
        member val Weekday:Int32 = new Int32() with get,set
        member val Hour:Int32 = new Int32() with get,set
        member val Windows:Decimal = new Decimal() with get,set
        member val Days:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarHourMean() = 
        member val Hour:Int32 = new Int32() with get,set
        member val Windows:Decimal = new Decimal() with get,set
        member val Days:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarHistory() = 
        member val ByWeekdayHour:ResizeArray<BranchCalendarWeekdayHour> = new ResizeArray<BranchCalendarWeekdayHour>() with get,set
        member val ByHour:ResizeArray<BranchCalendarHourMean> = new ResizeArray<BranchCalendarHourMean>() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarResponse() = 
        member val ResponseStatus:ResponseStatus = null with get,set
        member val Branch:BranchCalendarBranch = null with get,set
        member val Lines:ResizeArray<BranchCalendarLine> = new ResizeArray<BranchCalendarLine>() with get,set
        member val Events:ResizeArray<BranchCalendarEvent> = new ResizeArray<BranchCalendarEvent>() with get,set
        member val Staffing:ResizeArray<BranchCalendarStaffHour> = new ResizeArray<BranchCalendarStaffHour>() with get,set
        member val History:BranchCalendarHistory = null with get,set
        member val ColorByService:Boolean = new Boolean() with get,set
        member val ServerNowLocal:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type BranchCalendarRequest() = 
        member val LocationId:Guid = new Guid() with get,set
        member val From:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val To:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val IncludeCancelled:Boolean = new Boolean() with get,set

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

GET /v1/queue/calendar/{LocationId} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Branch":{"Id":"00000000000000000000000000000000","Name":"String","Street":"String","TimeZone":"String","Windows":0,"Hours":[{"Date":"String","Opens":"String","Closes":"String","Closed":false}]},"Lines":[{"Id":"00000000000000000000000000000000","Name":"String","Minutes":0,"Color":"String"}],"Events":[{"CalendarEventId":0,"Kind":"String","Title":"String","StartLocal":"0001-01-01T00:00:00.0000000","EndLocal":"0001-01-01T00:00:00.0000000","AllDay":false,"Description":"String","Customer":{"ContactId":0,"ContactGuid":"00000000000000000000000000000000","Name":"String","Phone":"String","Email":"String"},"Services":[{"LineId":"00000000000000000000000000000000","Name":"String","Minutes":0}],"Status":{"State":"String","TicketLabel":"String","Window":"String","ArrivedAt":"0001-01-01T00:00:00.0000000","CalledAt":"0001-01-01T00:00:00.0000000","ServedAt":"0001-01-01T00:00:00.0000000","NoShowAt":"0001-01-01T00:00:00.0000000","CancelledAt":"0001-01-01T00:00:00.0000000","CancelledBy":"String","Source":"String","CanCheckIn":false,"CanNoShow":false,"CanReopen":false,"CanChange":false,"CanCancel":false},"CheckInId":"00000000000000000000000000000000","Paperwork":{"AsksQuestionnaire":false,"AsksUpload":false,"Submitted":false}}],"Staffing":[{"Date":"String","Hour":0,"Windows":0,"Source":"String"}],"History":{"ByWeekdayHour":[{"Weekday":0,"Hour":0,"Windows":0,"Days":0}],"ByHour":[{"Hour":0,"Windows":0,"Days":0}]},"ColorByService":false,"ServerNowLocal":"0001-01-01T00:00:00.0000000"}