| GET,POST,PUT,DELETE,OPTIONS | /v1/Equipment/{EquipmentID} | ||
|---|---|---|---|
| GET,POST,PUT,DELETE,OPTIONS | /v1/Equipment |
export class Project
{
public ProjectID: number;
public ProjectUID: string;
public ProjectName: string;
public ImageURL: string;
public ImageKey: string;
public ClientName: string;
public ClientPhone: string;
public ClientEmail: string;
public ProjectManagerID: number;
public ProjectManagerName: string;
public StartDate?: string;
public EndDate?: string;
public ActualStartDate?: string;
public ActualEndDate?: string;
public JobCount: number;
public CrewMemberCount: number;
public EquipmentCount: number;
public MaterialCount: number;
public ProjectStatusID: number;
public ProjectStatusDescription: string;
public Budget: number;
public CostToDate: number;
public ProjectLocation: string;
public ProjectType: string;
public ProjectSponsor: string;
public CreatedBy: string;
public CreatedAt?: string;
public UpdatedAt?: string;
public ProjectDescription: string;
public Scope: string;
public StatusId: number;
public constructor(init?: Partial<Project>) { (Object as any).assign(this, init); }
}
export class Equipment
{
public EquipmentID: number;
public EquipmentName: string;
public EquipmentTypeID: number;
public Manufacturer: string;
public EquipmentType: string;
public SerialNumber: string;
public BarCode: string;
public EquipmentLocation: string;
public ImageURL: string;
public ProductDetailsURL: string;
public RecordCreatedDate: string;
public CreatedByUID: string;
public Active: boolean;
public Notes: string;
public Rate: number;
public Projects: Project[] = [];
public constructor(init?: Partial<Equipment>) { (Object as any).assign(this, init); }
}
export class EquipmentResponse
{
public ResponseStatus: ResponseStatus;
public Equipment: Equipment[] = [];
public constructor(init?: Partial<EquipmentResponse>) { (Object as any).assign(this, init); }
}
export class EquipmentRequest
{
public EquipmentID: number;
public Equipment: Equipment[] = [];
public constructor(init?: Partial<EquipmentRequest>) { (Object as any).assign(this, init); }
}
TypeScript EquipmentRequest 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/Equipment/{EquipmentID} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
EquipmentID: 0,
Equipment:
[
{
EquipmentID: 0,
EquipmentName: String,
EquipmentTypeID: 0,
Manufacturer: String,
EquipmentType: String,
SerialNumber: String,
BarCode: String,
EquipmentLocation: String,
ImageURL: String,
ProductDetailsURL: String,
RecordCreatedDate: 0001-01-01,
CreatedByUID: 00000000000000000000000000000000,
Active: False,
Notes: String,
Rate: 0,
Projects:
[
{
ProjectID: 0,
ProjectUID: 00000000000000000000000000000000,
ProjectName: String,
ImageURL: String,
ImageKey: String,
ClientName: String,
ClientPhone: String,
ClientEmail: String,
ProjectManagerID: 0,
ProjectManagerName: String,
StartDate: 0001-01-01,
EndDate: 0001-01-01,
ActualStartDate: 0001-01-01,
ActualEndDate: 0001-01-01,
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-01,
UpdatedAt: 0001-01-01,
ProjectDescription: String,
Scope: String,
StatusId: 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
}
},
Equipment:
[
{
EquipmentID: 0,
EquipmentName: String,
EquipmentTypeID: 0,
Manufacturer: String,
EquipmentType: String,
SerialNumber: String,
BarCode: String,
EquipmentLocation: String,
ImageURL: String,
ProductDetailsURL: String,
RecordCreatedDate: 0001-01-01,
CreatedByUID: 00000000000000000000000000000000,
Active: False,
Notes: String,
Rate: 0,
Projects:
[
{
ProjectID: 0,
ProjectUID: 00000000000000000000000000000000,
ProjectName: String,
ImageURL: String,
ImageKey: String,
ClientName: String,
ClientPhone: String,
ClientEmail: String,
ProjectManagerID: 0,
ProjectManagerName: String,
StartDate: 0001-01-01,
EndDate: 0001-01-01,
ActualStartDate: 0001-01-01,
ActualEndDate: 0001-01-01,
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-01,
UpdatedAt: 0001-01-01,
ProjectDescription: String,
Scope: String,
StatusId: 0
}
]
}
]
}