Trendsic Platform Service

<back to all web services

JobRequest

Requires Authentication
The following routes are available for this service:
GET,POST,PUT,DELETE,OPTIONS/v1/Job/{JobID}
GET,POST,PUT,DELETE,OPTIONS/v1/Job
"use strict";
export class CalendarEvent {
    /** @param {{CalendarEventId?:number,CalendarId?:string,EventStart?:string,EventEnd?:string,Location?:string,Summary?:string,Description?:string,EventTypeId?:number,Recurrence?:boolean,RecurrenceFrequency?:string,RecurrenceBy?:string,RecurrenceByValue?:string,RecurrenceUntil?:string,CreatedBy?:string,CreatedByName?:string,DateCreated?:string,ModifiedBy?:string,DateModified?:string,Deleted?:boolean,TimeZone?:string,Offset?:number,TextReminderSentDate?:string,Confirmed?:boolean,ConfirmationTextId?:string,FirstTextReminderId?:string,SecondTextReminderId?:string,LocationUID?:string,AgentReminderSentDate?:string,ContactId?:number,IsPrivate?:boolean,ProjectID?:number,JobID?:number,ProjectStartDate?:string,ProjectEndDate?:string,MaxCrewEndDate?:string,MaxEquipmentEndDate?:string,CheckInId?:string,AllDay?:boolean,JobName?:string,JobStatusName?:string,JobStatusId?:number,ProjectName?:string,ResourceId?:number,ResourceName?:string,Original_EventStart?:string,Original_Recurrence?:boolean,Original_RecurrenceFrequency?:string,Original_RecurrenceBy?:string,Original_RecurrenceByValue?:string,Original_RecurrenceUntil?:string,Checksum?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    CalendarEventId;
    /** @type {string} */
    CalendarId;
    /** @type {string} */
    EventStart;
    /** @type {string} */
    EventEnd;
    /** @type {string} */
    Location;
    /** @type {string} */
    Summary;
    /** @type {string} */
    Description;
    /** @type {number} */
    EventTypeId;
    /** @type {boolean} */
    Recurrence;
    /** @type {string} */
    RecurrenceFrequency;
    /** @type {string} */
    RecurrenceBy;
    /** @type {string} */
    RecurrenceByValue;
    /** @type {string} */
    RecurrenceUntil;
    /** @type {string} */
    CreatedBy;
    /** @type {string} */
    CreatedByName;
    /** @type {string} */
    DateCreated;
    /** @type {string} */
    ModifiedBy;
    /** @type {string} */
    DateModified;
    /** @type {boolean} */
    Deleted;
    /** @type {string} */
    TimeZone;
    /** @type {number} */
    Offset;
    /** @type {string} */
    TextReminderSentDate;
    /** @type {boolean} */
    Confirmed;
    /** @type {string} */
    ConfirmationTextId;
    /** @type {string} */
    FirstTextReminderId;
    /** @type {string} */
    SecondTextReminderId;
    /** @type {?string} */
    LocationUID;
    /** @type {string} */
    AgentReminderSentDate;
    /** @type {number} */
    ContactId;
    /** @type {boolean} */
    IsPrivate;
    /** @type {number} */
    ProjectID;
    /** @type {number} */
    JobID;
    /** @type {string} */
    ProjectStartDate;
    /** @type {string} */
    ProjectEndDate;
    /** @type {string} */
    MaxCrewEndDate;
    /** @type {string} */
    MaxEquipmentEndDate;
    /** @type {string} */
    CheckInId;
    /** @type {boolean} */
    AllDay;
    /** @type {string} */
    JobName;
    /** @type {string} */
    JobStatusName;
    /** @type {number} */
    JobStatusId;
    /** @type {string} */
    ProjectName;
    /** @type {number} */
    ResourceId;
    /** @type {string} */
    ResourceName;
    /** @type {string} */
    Original_EventStart;
    /** @type {boolean} */
    Original_Recurrence;
    /** @type {string} */
    Original_RecurrenceFrequency;
    /** @type {string} */
    Original_RecurrenceBy;
    /** @type {string} */
    Original_RecurrenceByValue;
    /** @type {string} */
    Original_RecurrenceUntil;
    /** @type {string} */
    Checksum;
}
export class Job {
    /** @param {{JobID?:number,JobName?:string,JobTypeID?:number,ExpectedStartDate?:string,ActualStartDate?:string,ExpectedCompletionDate?:string,ActualEndDate?:string,Active?:boolean,CreatedByUID?:string,ProjectID?:number,StatusId?:number,AdvancedScheduling?:boolean,ShowTimes?:boolean,Schedule?:CalendarEvent[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    JobID;
    /** @type {string} */
    JobName;
    /** @type {number} */
    JobTypeID;
    /** @type {string} */
    ExpectedStartDate;
    /** @type {string} */
    ActualStartDate;
    /** @type {string} */
    ExpectedCompletionDate;
    /** @type {string} */
    ActualEndDate;
    /** @type {boolean} */
    Active;
    /** @type {string} */
    CreatedByUID;
    /** @type {number} */
    ProjectID;
    /** @type {number} */
    StatusId;
    /** @type {boolean} */
    AdvancedScheduling;
    /** @type {boolean} */
    ShowTimes;
    /** @type {CalendarEvent[]} */
    Schedule = [];
}
export class JobResponse {
    /** @param {{ResponseStatus?:ResponseStatus,Job?:Job[],RequiresConfirm?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {ResponseStatus} */
    ResponseStatus;
    /** @type {Job[]} */
    Job = [];
    /** @type {boolean} */
    RequiresConfirm;
}
export class JobRequest {
    /** @param {{JobID?:number,Accept?:boolean,Job?:Job[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    JobID;
    /** @type {boolean} */
    Accept;
    /** @type {Job[]} */
    Job = [];
}

JavaScript JobRequest DTOs

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

HTTP + OTHER

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

POST /v1/Job/{JobID} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"JobID":0,"Accept":false,"Job":[{"JobID":0,"JobName":"String","JobTypeID":0,"ExpectedStartDate":"0001-01-01T00:00:00.0000000","ActualStartDate":"0001-01-01T00:00:00.0000000","ExpectedCompletionDate":"0001-01-01T00:00:00.0000000","ActualEndDate":"0001-01-01T00:00:00.0000000","Active":false,"CreatedByUID":"00000000000000000000000000000000","ProjectID":0,"StatusId":0,"AdvancedScheduling":false,"ShowTimes":false,"Schedule":[{"CalendarEventId":0,"CalendarId":"00000000000000000000000000000000","EventStart":"0001-01-01T00:00:00.0000000","EventEnd":"0001-01-01T00:00:00.0000000","Location":"String","Summary":"String","Description":"String","EventTypeId":0,"Recurrence":false,"RecurrenceFrequency":"String","RecurrenceBy":"String","RecurrenceByValue":"String","RecurrenceUntil":"0001-01-01T00:00:00.0000000","CreatedBy":"String","CreatedByName":"String","DateCreated":"0001-01-01T00:00:00.0000000","ModifiedBy":"String","DateModified":"0001-01-01T00:00:00.0000000","Deleted":false,"TimeZone":"String","Offset":0,"TextReminderSentDate":"0001-01-01T00:00:00.0000000","Confirmed":false,"ConfirmationTextId":"String","FirstTextReminderId":"String","SecondTextReminderId":"String","LocationUID":"00000000000000000000000000000000","AgentReminderSentDate":"0001-01-01T00:00:00.0000000","ContactId":0,"IsPrivate":false,"ProjectID":0,"JobID":0,"ProjectStartDate":"0001-01-01T00:00:00.0000000","ProjectEndDate":"0001-01-01T00:00:00.0000000","MaxCrewEndDate":"0001-01-01T00:00:00.0000000","MaxEquipmentEndDate":"0001-01-01T00:00:00.0000000","CheckInId":"00000000000000000000000000000000","AllDay":false,"JobName":"String","JobStatusName":"String","JobStatusId":0,"ProjectName":"String","ResourceId":0,"ResourceName":"String","Original_EventStart":"0001-01-01T00:00:00.0000000","Original_Recurrence":false,"Original_RecurrenceFrequency":"String","Original_RecurrenceBy":"String","Original_RecurrenceByValue":"String","Original_RecurrenceUntil":"0001-01-01T00:00:00.0000000","Checksum":"String"}]}]}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Job":[{"JobID":0,"JobName":"String","JobTypeID":0,"ExpectedStartDate":"0001-01-01T00:00:00.0000000","ActualStartDate":"0001-01-01T00:00:00.0000000","ExpectedCompletionDate":"0001-01-01T00:00:00.0000000","ActualEndDate":"0001-01-01T00:00:00.0000000","Active":false,"CreatedByUID":"00000000000000000000000000000000","ProjectID":0,"StatusId":0,"AdvancedScheduling":false,"ShowTimes":false,"Schedule":[{"CalendarEventId":0,"CalendarId":"00000000000000000000000000000000","EventStart":"0001-01-01T00:00:00.0000000","EventEnd":"0001-01-01T00:00:00.0000000","Location":"String","Summary":"String","Description":"String","EventTypeId":0,"Recurrence":false,"RecurrenceFrequency":"String","RecurrenceBy":"String","RecurrenceByValue":"String","RecurrenceUntil":"0001-01-01T00:00:00.0000000","CreatedBy":"String","CreatedByName":"String","DateCreated":"0001-01-01T00:00:00.0000000","ModifiedBy":"String","DateModified":"0001-01-01T00:00:00.0000000","Deleted":false,"TimeZone":"String","Offset":0,"TextReminderSentDate":"0001-01-01T00:00:00.0000000","Confirmed":false,"ConfirmationTextId":"String","FirstTextReminderId":"String","SecondTextReminderId":"String","LocationUID":"00000000000000000000000000000000","AgentReminderSentDate":"0001-01-01T00:00:00.0000000","ContactId":0,"IsPrivate":false,"ProjectID":0,"JobID":0,"ProjectStartDate":"0001-01-01T00:00:00.0000000","ProjectEndDate":"0001-01-01T00:00:00.0000000","MaxCrewEndDate":"0001-01-01T00:00:00.0000000","MaxEquipmentEndDate":"0001-01-01T00:00:00.0000000","CheckInId":"00000000000000000000000000000000","AllDay":false,"JobName":"String","JobStatusName":"String","JobStatusId":0,"ProjectName":"String","ResourceId":0,"ResourceName":"String","Original_EventStart":"0001-01-01T00:00:00.0000000","Original_Recurrence":false,"Original_RecurrenceFrequency":"String","Original_RecurrenceBy":"String","Original_RecurrenceByValue":"String","Original_RecurrenceUntil":"0001-01-01T00:00:00.0000000","Checksum":"String"}]}],"RequiresConfirm":false}