| PUT,OPTIONS | /v1/Job/equipment |
|---|
"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 JobEquipmentRequest {
/** @param {{ProjectID?:number,JobID?:number,EquipmentID?:number,AddRemove?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
ProjectID;
/** @type {number} */
JobID;
/** @type {number} */
EquipmentID;
/** @type {number} */
AddRemove;
}
JavaScript JobEquipmentRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /v1/Job/equipment HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ProjectID: 0,
JobID: 0,
EquipmentID: 0,
AddRemove: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
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-01,
ActualStartDate: 0001-01-01,
ExpectedCompletionDate: 0001-01-01,
ActualEndDate: 0001-01-01,
Active: False,
CreatedByUID: 00000000000000000000000000000000,
ProjectID: 0,
StatusId: 0,
AdvancedScheduling: False,
ShowTimes: False,
Schedule:
[
{
CalendarEventId: 0,
CalendarId: 00000000000000000000000000000000,
EventStart: 0001-01-01,
EventEnd: 0001-01-01,
Location: String,
Summary: String,
Description: String,
EventTypeId: 0,
Recurrence: False,
RecurrenceFrequency: String,
RecurrenceBy: String,
RecurrenceByValue: String,
RecurrenceUntil: 0001-01-01,
CreatedBy: String,
CreatedByName: String,
DateCreated: 0001-01-01,
ModifiedBy: String,
DateModified: 0001-01-01,
Deleted: False,
TimeZone: String,
Offset: 0,
TextReminderSentDate: 0001-01-01,
Confirmed: False,
ConfirmationTextId: String,
FirstTextReminderId: String,
SecondTextReminderId: String,
LocationUID: 00000000000000000000000000000000,
AgentReminderSentDate: 0001-01-01,
ContactId: 0,
IsPrivate: False,
ProjectID: 0,
JobID: 0,
ProjectStartDate: 0001-01-01,
ProjectEndDate: 0001-01-01,
MaxCrewEndDate: 0001-01-01,
MaxEquipmentEndDate: 0001-01-01,
CheckInId: 00000000000000000000000000000000,
AllDay: False,
JobName: String,
JobStatusName: String,
JobStatusId: 0,
ProjectName: String,
ResourceId: 0,
ResourceName: String,
Original_EventStart: 0001-01-01,
Original_Recurrence: False,
Original_RecurrenceFrequency: String,
Original_RecurrenceBy: String,
Original_RecurrenceByValue: String,
Original_RecurrenceUntil: 0001-01-01,
Checksum: String
}
]
}
],
RequiresConfirm: False
}