| POST,OPTIONS | /v1/ProjectSearch |
|---|
"use strict";
export class Project {
/** @param {{ProjectID?:number,ProjectUID?:string,ProjectName?:string,ImageURL?:string,ImageKey?:string,ClientName?:string,ClientPhone?:string,ClientEmail?:string,ProjectManagerID?:number,ProjectManagerName?:string,StartDate?:string,EndDate?:string,ActualStartDate?:string,ActualEndDate?:string,JobCount?:number,CrewMemberCount?:number,EquipmentCount?:number,MaterialCount?:number,ProjectStatusID?:number,ProjectStatusDescription?:string,Budget?:number,CostToDate?:number,ProjectLocation?:string,ProjectType?:string,ProjectSponsor?:string,CreatedBy?:string,CreatedAt?:string,UpdatedAt?:string,ProjectDescription?:string,Scope?:string,StatusId?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
ProjectID;
/** @type {string} */
ProjectUID;
/** @type {string} */
ProjectName;
/** @type {string} */
ImageURL;
/** @type {string} */
ImageKey;
/** @type {string} */
ClientName;
/** @type {string} */
ClientPhone;
/** @type {string} */
ClientEmail;
/** @type {number} */
ProjectManagerID;
/** @type {string} */
ProjectManagerName;
/** @type {?string} */
StartDate;
/** @type {?string} */
EndDate;
/** @type {?string} */
ActualStartDate;
/** @type {?string} */
ActualEndDate;
/** @type {number} */
JobCount;
/** @type {number} */
CrewMemberCount;
/** @type {number} */
EquipmentCount;
/** @type {number} */
MaterialCount;
/** @type {number} */
ProjectStatusID;
/** @type {string} */
ProjectStatusDescription;
/** @type {number} */
Budget;
/** @type {number} */
CostToDate;
/** @type {string} */
ProjectLocation;
/** @type {string} */
ProjectType;
/** @type {string} */
ProjectSponsor;
/** @type {string} */
CreatedBy;
/** @type {?string} */
CreatedAt;
/** @type {?string} */
UpdatedAt;
/** @type {string} */
ProjectDescription;
/** @type {string} */
Scope;
/** @type {number} */
StatusId;
}
export class ProjectResponse {
/** @param {{ResponseStatus?:ResponseStatus,Project?:Project[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseStatus} */
ResponseStatus;
/** @type {Project[]} */
Project = [];
}
export class ProjectSearchRequest {
/** @param {{filterStatus?:number,filterManager?:number,filterClientName?:string,filterStartBefore?:string,filterStartAfter?:string,filterEndBefore?:string,filterEndAfter?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
filterStatus;
/** @type {number} */
filterManager;
/** @type {string} */
filterClientName;
/** @type {string} */
filterStartBefore;
/** @type {string} */
filterStartAfter;
/** @type {string} */
filterEndBefore;
/** @type {string} */
filterEndAfter;
}
JavaScript ProjectSearchRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/ProjectSearch HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"filterStatus":0,"filterManager":0,"filterClientName":"String","filterStartBefore":"0001-01-01T00:00:00.0000000","filterStartAfter":"0001-01-01T00:00:00.0000000","filterEndBefore":"0001-01-01T00:00:00.0000000","filterEndAfter":"0001-01-01T00:00:00.0000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Project":[{"ProjectID":0,"ProjectUID":"00000000000000000000000000000000","ProjectName":"String","ImageURL":"String","ImageKey":"String","ClientName":"String","ClientPhone":"String","ClientEmail":"String","ProjectManagerID":0,"ProjectManagerName":"String","StartDate":"0001-01-01T00:00:00.0000000","EndDate":"0001-01-01T00:00:00.0000000","ActualStartDate":"0001-01-01T00:00:00.0000000","ActualEndDate":"0001-01-01T00:00:00.0000000","JobCount":0,"CrewMemberCount":0,"EquipmentCount":0,"MaterialCount":0,"ProjectStatusID":0,"ProjectStatusDescription":"String","Budget":0,"CostToDate":0,"ProjectLocation":"String","ProjectType":"String","ProjectSponsor":"String","CreatedBy":"String","CreatedAt":"0001-01-01T00:00:00.0000000","UpdatedAt":"0001-01-01T00:00:00.0000000","ProjectDescription":"String","Scope":"String","StatusId":0}]}