| POST,OPTIONS | /v1/projects/{ProjectID}/rfis |
|---|
"use strict";
export class Rfi {
/** @param {{RfiID?:number,RfiUID?:string,ProjectID?:number,RfiNo?:string,Subject?:string,Question?:string,Answer?:string,Discipline?:string,AskedOf?:string,Status?:string,CostImpact?:boolean,ScheduleImpact?:boolean,SubmittedDate?:string,DueDate?:string,AnsweredDate?:string,ClosedDate?:string,PromotedChangeOrderID?:number,CreatedBy?:string,CreatedAt?:string,UpdatedAt?:string,DaysOpen?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
RfiID;
/** @type {string} */
RfiUID;
/** @type {number} */
ProjectID;
/** @type {string} */
RfiNo;
/** @type {string} */
Subject;
/** @type {string} */
Question;
/** @type {string} */
Answer;
/** @type {string} */
Discipline;
/** @type {string} */
AskedOf;
/** @type {string} */
Status;
/** @type {boolean} */
CostImpact;
/** @type {boolean} */
ScheduleImpact;
/** @type {?string} */
SubmittedDate;
/** @type {?string} */
DueDate;
/** @type {?string} */
AnsweredDate;
/** @type {?string} */
ClosedDate;
/** @type {?number} */
PromotedChangeOrderID;
/** @type {string} */
CreatedBy;
/** @type {?string} */
CreatedAt;
/** @type {?string} */
UpdatedAt;
/** @type {number} */
DaysOpen;
}
export class RfiResponse {
/** @param {{ResponseStatus?:ResponseStatus,Rfi?:Rfi}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseStatus} */
ResponseStatus;
/** @type {Rfi} */
Rfi;
}
export class RfiCreateRequest {
/** @param {{ProjectID?:number,RfiNo?:string,Subject?:string,Question?:string,Discipline?:string,AskedOf?:string,CostImpact?:boolean,ScheduleImpact?:boolean,DueDate?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
ProjectID;
/** @type {string} */
RfiNo;
/** @type {string} */
Subject;
/** @type {string} */
Question;
/** @type {string} */
Discipline;
/** @type {string} */
AskedOf;
/** @type {boolean} */
CostImpact;
/** @type {boolean} */
ScheduleImpact;
/** @type {?string} */
DueDate;
}
JavaScript RfiCreateRequest 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.
POST /v1/projects/{ProjectID}/rfis HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ProjectID: 0,
RfiNo: String,
Subject: String,
Question: String,
Discipline: String,
AskedOf: String,
CostImpact: False,
ScheduleImpact: False,
DueDate: 0001-01-01
}
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
}
},
Rfi:
{
RfiID: 0,
RfiUID: 00000000000000000000000000000000,
ProjectID: 0,
RfiNo: String,
Subject: String,
Question: String,
Answer: String,
Discipline: String,
AskedOf: String,
Status: String,
CostImpact: False,
ScheduleImpact: False,
SubmittedDate: 0001-01-01,
DueDate: 0001-01-01,
AnsweredDate: 0001-01-01,
ClosedDate: 0001-01-01,
PromotedChangeOrderID: 0,
CreatedBy: String,
CreatedAt: 0001-01-01,
UpdatedAt: 0001-01-01,
DaysOpen: 0
}
}