| POST,OPTIONS | /v1/projects/{ProjectID}/punch |
|---|
export class PunchItem
{
public PunchItemID: number;
public PunchItemUID: string;
public ProjectID: number;
public PunchNo: string;
public Title: string;
public Description: string;
public Area: string;
public Trade: string;
public Status: string;
public Priority: string;
public AssignedSub: string;
public AssignedTo: string;
public AssignedSubContactID?: number;
public PhotoCount: number;
public OriginType: string;
public OriginRef: string;
public OpenedAt?: string;
public VerifiedAt?: string;
public ClosedAt?: string;
public CreatedBy: string;
public CreatedAt?: string;
public UpdatedAt?: string;
public constructor(init?: Partial<PunchItem>) { (Object as any).assign(this, init); }
}
export class PunchSummary
{
public ProjectID: number;
public TotalItems: number;
public OpenCount: number;
public VerifyCount: number;
public ClosedCount: number;
public RejectedCount: number;
public PercentComplete: number;
public constructor(init?: Partial<PunchSummary>) { (Object as any).assign(this, init); }
}
export class PunchItemResponse
{
public ResponseStatus: ResponseStatus;
public Item: PunchItem;
public Summary: PunchSummary;
public constructor(init?: Partial<PunchItemResponse>) { (Object as any).assign(this, init); }
}
export class PunchCreateRequest
{
public ProjectID: number;
public PunchNo: string;
public Title: string;
public Description: string;
public Area: string;
public Trade: string;
public Priority: string;
public AssignedSub: string;
public AssignedTo: string;
public AssignedSubContactID?: number;
public OriginType: string;
public OriginRef: string;
public constructor(init?: Partial<PunchCreateRequest>) { (Object as any).assign(this, init); }
}
TypeScript PunchCreateRequest 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/projects/{ProjectID}/punch HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"ProjectID":0,"PunchNo":"String","Title":"String","Description":"String","Area":"String","Trade":"String","Priority":"String","AssignedSub":"String","AssignedTo":"String","AssignedSubContactID":0,"OriginType":"String","OriginRef":"String"}
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"}},"Item":{"PunchItemID":0,"PunchItemUID":"00000000000000000000000000000000","ProjectID":0,"PunchNo":"String","Title":"String","Description":"String","Area":"String","Trade":"String","Status":"String","Priority":"String","AssignedSub":"String","AssignedTo":"String","AssignedSubContactID":0,"PhotoCount":0,"OriginType":"String","OriginRef":"String","OpenedAt":"0001-01-01T00:00:00.0000000","VerifiedAt":"0001-01-01T00:00:00.0000000","ClosedAt":"0001-01-01T00:00:00.0000000","CreatedBy":"String","CreatedAt":"0001-01-01T00:00:00.0000000","UpdatedAt":"0001-01-01T00:00:00.0000000"},"Summary":{"ProjectID":0,"TotalItems":0,"OpenCount":0,"VerifyCount":0,"ClosedCount":0,"RejectedCount":0,"PercentComplete":0}}