Trendsic Platform Service

<back to all web services

ScheduleDayRequest

Requires Authentication
The following routes are available for this service:
GET/v1/schedule/day/{ScheduledDate}
import Foundation
import ServiceStack

public class ScheduleDayRequest : Codable
{
    public var scheduledDate:Date
    public var contactID:Int

    required public init(){}
}

public class WorkerScheduleResponse : Codable
{
    public var items:[WorkerScheduleItem] = []
    public var schedulableJobs:[SchedulableJob] = []
    public var workers:[ScheduleWorker] = []
    public var crews:[Crew] = []
    public var budgetedCrew:[ScheduleWorker] = []
    public var lastAssignment:ScheduleLastAssignment
    public var autoFill:ScheduleAutoFillResult
    public var datesScheduled:Int?
    public var workersScheduled:Int?
    public var itemsRemoved:Int?
    public var responseStatus:ResponseStatus

    required public init(){}
}

public class WorkerScheduleItem : Codable
{
    public var workerScheduleItemID:Int
    public var jobID:Int
    public var projectID:Int?
    public var contactID:Int
    public var scheduledDate:Date?
    public var sortOrder:Int
    public var sourceCrewID:Int?
    public var status:String
    public var startedAt:Date?
    public var completedAt:Date?
    public var workerNotes:String
    public var jobName:String
    public var projectName:String
    public var firstName:String
    public var lastName:String
    public var workerName:String
    public var sourceCrewName:String
    public var projectLocationID:Int?
    public var projectLocationName:String
    public var locationZip:String
    public var locationCity:String
    public var locationLatitude:Double?
    public var locationLongitude:Double?
    public var jobStatusName:String
    public var branchId:String
    public var branchName:String
    public var workerHomeBranchId:String?
    public var workerHomeBranchName:String

    required public init(){}
}

public class SchedulableJob : Codable
{
    public var jobID:Int
    public var jobName:String
    public var projectID:Int
    public var projectName:String
    public var statusID:Int?
    public var statusName:String
    public var projectLocationID:Int?
    public var projectLocationName:String
    public var locationZip:String
    public var locationCity:String
    public var locationLatitude:Double?
    public var locationLongitude:Double?
    public var expectedStartDate:Date?
    public var expectedCompletionDate:Date?
    public var isRecurring:Bool
    public var occurrenceDates:[String] = []

    required public init(){}
}

public class ScheduleWorker : Codable
{
    public var contactId:Int
    public var firstName:String
    public var lastName:String
    public var name:String
    public var initials:String
    public var rate:Double?
    public var imageUrl:String
    public var branchId:String?
    public var branchName:String

    required public init(){}
}

public class Crew : Codable
{
    public var crewID:Int
    public var crewName:String
    public var crewNumber:String
    public var crewManagerContactID:Int
    public var crewManagerContactName:String
    public var crewColor:String
    public var recordCreatedDate:Date
    public var active:Bool
    public var createdByUID:String
    public var projectID:Int
    public var crewMemberCount:Int
    public var projectCrewID:Int
    public var projectName:String
    public var branchId:String
    public var branchName:String

    required public init(){}
}

public class ScheduleLastAssignment : Codable
{
    public var jobID:Int
    public var contactIds:[Int] = []
    public var sourceCrewID:Int?

    required public init(){}
}

public class ScheduleAutoFillResult : Codable
{
    public var jobsFilled:Int
    public var jobsSkipped:Int
    public var visitsScheduled:Int

    required public init(){}
}


Swift ScheduleDayRequest 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/schedule/day/{ScheduledDate} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Items":[{"WorkerScheduleItemID":0,"JobID":0,"ProjectID":0,"ContactID":0,"ScheduledDate":"0001-01-01T00:00:00.0000000","SortOrder":0,"SourceCrewID":0,"Status":"String","StartedAt":"0001-01-01T00:00:00.0000000","CompletedAt":"0001-01-01T00:00:00.0000000","WorkerNotes":"String","JobName":"String","ProjectName":"String","FirstName":"String","LastName":"String","WorkerName":"String","SourceCrewName":"String","ProjectLocationID":0,"ProjectLocationName":"String","LocationZip":"String","LocationCity":"String","LocationLatitude":0,"LocationLongitude":0,"JobStatusName":"String","BranchId":"00000000000000000000000000000000","BranchName":"String","WorkerHomeBranchId":"00000000000000000000000000000000","WorkerHomeBranchName":"String"}],"SchedulableJobs":[{"JobID":0,"JobName":"String","ProjectID":0,"ProjectName":"String","StatusID":0,"StatusName":"String","ProjectLocationID":0,"ProjectLocationName":"String","LocationZip":"String","LocationCity":"String","LocationLatitude":0,"LocationLongitude":0,"ExpectedStartDate":"0001-01-01T00:00:00.0000000","ExpectedCompletionDate":"0001-01-01T00:00:00.0000000","IsRecurring":false,"OccurrenceDates":["String"]}],"Workers":[{"ContactId":0,"FirstName":"String","LastName":"String","Name":"String","Initials":"String","Rate":0,"ImageUrl":"String","BranchId":"00000000000000000000000000000000","BranchName":"String"}],"Crews":[{"CrewID":0,"CrewName":"String","CrewNumber":"String","CrewManagerContactID":0,"CrewManagerContactName":"String","CrewColor":"String","RecordCreatedDate":"0001-01-01T00:00:00.0000000","Active":false,"CreatedByUID":"00000000000000000000000000000000","ProjectID":0,"CrewMemberCount":0,"ProjectCrewID":0,"ProjectName":"String","BranchId":"00000000000000000000000000000000","BranchName":"String"}],"BudgetedCrew":[{"ContactId":0,"FirstName":"String","LastName":"String","Name":"String","Initials":"String","Rate":0,"ImageUrl":"String","BranchId":"00000000000000000000000000000000","BranchName":"String"}],"LastAssignment":{"JobID":0,"ContactIds":[0],"SourceCrewID":0},"AutoFill":{"JobsFilled":0,"JobsSkipped":0,"VisitsScheduled":0},"DatesScheduled":0,"WorkersScheduled":0,"ItemsRemoved":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}