| GET,POST,PUT,DELETE,OPTIONS | /v1/Project/Materials/{ProjectID} | ||
|---|---|---|---|
| GET,POST,PUT,DELETE,OPTIONS | /v1/Project/Materials/{ProjectID}/{JobID} |
"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 Material {
/** @param {{MaterialID?:number,MaterialName?:string,MaterialTypeID?:number,MaterialStatusID?:number,Quantity?:number,Supplier?:string,OrderDate?:string,DeliveryDate?:string,OnSiteDate?:string,MaterialLocation?:string,Manufacturer?:string,SerialNumber?:string,BarCode?:string,TrackingInfo?:string,MaterialDescription?:string,Notes?:string,ImageURL?:string,DetailsURL?:string,CreatedByUID?:string,Active?:boolean,RecordCreatedDate?:string,StatusId?:number,MaterialTypeName?:string,Cost?:number,Projects?:Project[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
MaterialID;
/** @type {string} */
MaterialName;
/** @type {number} */
MaterialTypeID;
/** @type {number} */
MaterialStatusID;
/** @type {number} */
Quantity;
/** @type {string} */
Supplier;
/** @type {string} */
OrderDate;
/** @type {string} */
DeliveryDate;
/** @type {string} */
OnSiteDate;
/** @type {string} */
MaterialLocation;
/** @type {string} */
Manufacturer;
/** @type {string} */
SerialNumber;
/** @type {string} */
BarCode;
/** @type {string} */
TrackingInfo;
/** @type {string} */
MaterialDescription;
/** @type {string} */
Notes;
/** @type {string} */
ImageURL;
/** @type {string} */
DetailsURL;
/** @type {string} */
CreatedByUID;
/** @type {boolean} */
Active;
/** @type {string} */
RecordCreatedDate;
/** @type {number} */
StatusId;
/** @type {string} */
MaterialTypeName;
/** @type {number} */
Cost;
/** @type {Project[]} */
Projects = [];
}
export class ProjectMaterial extends Material {
/** @param {{ProjectMaterialID?:number,ProjectID?:number,ProjectEndDate?:string,MaterialCost?:number,JobID?:number,BilledMaterialCost?:number,MaterialQty?:number,MaterialID?:number,MaterialName?:string,MaterialTypeID?:number,MaterialStatusID?:number,Quantity?:number,Supplier?:string,OrderDate?:string,DeliveryDate?:string,OnSiteDate?:string,MaterialLocation?:string,Manufacturer?:string,SerialNumber?:string,BarCode?:string,TrackingInfo?:string,MaterialDescription?:string,Notes?:string,ImageURL?:string,DetailsURL?:string,CreatedByUID?:string,Active?:boolean,RecordCreatedDate?:string,StatusId?:number,MaterialTypeName?:string,Cost?:number,Projects?:Project[]}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
ProjectMaterialID;
/** @type {number} */
ProjectID;
/** @type {string} */
ProjectEndDate;
/** @type {number} */
MaterialCost;
/** @type {number} */
JobID;
/** @type {number} */
BilledMaterialCost;
/** @type {number} */
MaterialQty;
}
export class ProjectMaterialListResponse {
/** @param {{ResponseStatus?:ResponseStatus,ProjectMaterials?:ProjectMaterial[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseStatus} */
ResponseStatus;
/** @type {ProjectMaterial[]} */
ProjectMaterials = [];
}
export class ProjectMaterialListRequest {
/** @param {{ProjectID?:number,JobID?:number,ProjectMaterials?:Material[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
ProjectID;
/** @type {number} */
JobID;
/** @type {Material[]} */
ProjectMaterials = [];
}
JavaScript ProjectMaterialListRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/Project/Materials/{ProjectID} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<ProjectMaterialListRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<JobID>0</JobID>
<ProjectID>0</ProjectID>
<ProjectMaterials>
<Material>
<Active>false</Active>
<BarCode>String</BarCode>
<Cost>0</Cost>
<CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
<DeliveryDate>0001-01-01T00:00:00</DeliveryDate>
<DetailsURL>String</DetailsURL>
<ImageURL>String</ImageURL>
<Manufacturer>String</Manufacturer>
<MaterialDescription>String</MaterialDescription>
<MaterialID>0</MaterialID>
<MaterialLocation>String</MaterialLocation>
<MaterialName>String</MaterialName>
<MaterialStatusID>0</MaterialStatusID>
<MaterialTypeID>0</MaterialTypeID>
<MaterialTypeName>String</MaterialTypeName>
<Notes>String</Notes>
<OnSiteDate>0001-01-01T00:00:00</OnSiteDate>
<OrderDate>0001-01-01T00:00:00</OrderDate>
<Projects>
<Project>
<ActualEndDate>0001-01-01T00:00:00</ActualEndDate>
<ActualStartDate>0001-01-01T00:00:00</ActualStartDate>
<Budget>0</Budget>
<ClientEmail>String</ClientEmail>
<ClientName>String</ClientName>
<ClientPhone>String</ClientPhone>
<CostToDate>0</CostToDate>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<CrewMemberCount>0</CrewMemberCount>
<EndDate>0001-01-01T00:00:00</EndDate>
<EquipmentCount>0</EquipmentCount>
<ImageKey>String</ImageKey>
<ImageURL>String</ImageURL>
<JobCount>0</JobCount>
<MaterialCount>0</MaterialCount>
<ProjectDescription>String</ProjectDescription>
<ProjectID>0</ProjectID>
<ProjectLocation>String</ProjectLocation>
<ProjectManagerID>0</ProjectManagerID>
<ProjectManagerName>String</ProjectManagerName>
<ProjectName>String</ProjectName>
<ProjectSponsor>String</ProjectSponsor>
<ProjectStatusDescription>String</ProjectStatusDescription>
<ProjectStatusID>0</ProjectStatusID>
<ProjectType>String</ProjectType>
<ProjectUID>00000000-0000-0000-0000-000000000000</ProjectUID>
<Scope>String</Scope>
<StartDate>0001-01-01T00:00:00</StartDate>
<StatusId>0</StatusId>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
</Project>
</Projects>
<Quantity>0</Quantity>
<RecordCreatedDate>0001-01-01T00:00:00</RecordCreatedDate>
<SerialNumber>String</SerialNumber>
<StatusId>0</StatusId>
<Supplier>String</Supplier>
<TrackingInfo>String</TrackingInfo>
</Material>
</ProjectMaterials>
</ProjectMaterialListRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<ProjectMaterialListResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<ProjectMaterials>
<ProjectMaterial>
<Active>false</Active>
<BarCode>String</BarCode>
<Cost>0</Cost>
<CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
<DeliveryDate>0001-01-01T00:00:00</DeliveryDate>
<DetailsURL>String</DetailsURL>
<ImageURL>String</ImageURL>
<Manufacturer>String</Manufacturer>
<MaterialDescription>String</MaterialDescription>
<MaterialID>0</MaterialID>
<MaterialLocation>String</MaterialLocation>
<MaterialName>String</MaterialName>
<MaterialStatusID>0</MaterialStatusID>
<MaterialTypeID>0</MaterialTypeID>
<MaterialTypeName>String</MaterialTypeName>
<Notes>String</Notes>
<OnSiteDate>0001-01-01T00:00:00</OnSiteDate>
<OrderDate>0001-01-01T00:00:00</OrderDate>
<Projects>
<Project>
<ActualEndDate>0001-01-01T00:00:00</ActualEndDate>
<ActualStartDate>0001-01-01T00:00:00</ActualStartDate>
<Budget>0</Budget>
<ClientEmail>String</ClientEmail>
<ClientName>String</ClientName>
<ClientPhone>String</ClientPhone>
<CostToDate>0</CostToDate>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<CrewMemberCount>0</CrewMemberCount>
<EndDate>0001-01-01T00:00:00</EndDate>
<EquipmentCount>0</EquipmentCount>
<ImageKey>String</ImageKey>
<ImageURL>String</ImageURL>
<JobCount>0</JobCount>
<MaterialCount>0</MaterialCount>
<ProjectDescription>String</ProjectDescription>
<ProjectID>0</ProjectID>
<ProjectLocation>String</ProjectLocation>
<ProjectManagerID>0</ProjectManagerID>
<ProjectManagerName>String</ProjectManagerName>
<ProjectName>String</ProjectName>
<ProjectSponsor>String</ProjectSponsor>
<ProjectStatusDescription>String</ProjectStatusDescription>
<ProjectStatusID>0</ProjectStatusID>
<ProjectType>String</ProjectType>
<ProjectUID>00000000-0000-0000-0000-000000000000</ProjectUID>
<Scope>String</Scope>
<StartDate>0001-01-01T00:00:00</StartDate>
<StatusId>0</StatusId>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
</Project>
</Projects>
<Quantity>0</Quantity>
<RecordCreatedDate>0001-01-01T00:00:00</RecordCreatedDate>
<SerialNumber>String</SerialNumber>
<StatusId>0</StatusId>
<Supplier>String</Supplier>
<TrackingInfo>String</TrackingInfo>
<BilledMaterialCost>0</BilledMaterialCost>
<JobID>0</JobID>
<MaterialCost>0</MaterialCost>
<MaterialQty>0</MaterialQty>
<ProjectEndDate>0001-01-01T00:00:00</ProjectEndDate>
<ProjectID>0</ProjectID>
<ProjectMaterialID>0</ProjectMaterialID>
</ProjectMaterial>
</ProjectMaterials>
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
</ProjectMaterialListResponse>