| POST,OPTIONS | /v1/inspections/{InspectionUID}/items/{InspectionItemID}/photos/sync |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using CRM.AgencyPlatform.API.Internal;
namespace CRM.AgencyPlatform.API.Internal
{
public partial class Inspection
{
public virtual int InspectionID { get; set; }
public virtual Guid InspectionUID { get; set; }
public virtual int ProjectID { get; set; }
public virtual string ProjectName { get; set; }
public virtual int? JobID { get; set; }
public virtual string JobName { get; set; }
public virtual string InspectionNo { get; set; }
public virtual string Type { get; set; }
public virtual string Title { get; set; }
public virtual string Status { get; set; }
public virtual Guid? TemplateUID { get; set; }
public virtual int? TemplateVersionNo { get; set; }
public virtual DateTime? ScheduledFor { get; set; }
public virtual DateTime? StartedAt { get; set; }
public virtual DateTime? CompletedAt { get; set; }
public virtual DateTime? ClosedAt { get; set; }
public virtual int? InspectorContactID { get; set; }
public virtual string InspectorName { get; set; }
public virtual string AgencyName { get; set; }
public virtual string PermitNo { get; set; }
public virtual string LocationText { get; set; }
public virtual string Notes { get; set; }
public virtual string WeatherJson { get; set; }
public virtual int ItemsTotal { get; set; }
public virtual int ItemsPassed { get; set; }
public virtual int ItemsFailed { get; set; }
public virtual string Outcome { get; set; }
public virtual string OutcomeNotes { get; set; }
public virtual int? ReinspectionOfInspectionID { get; set; }
public virtual int? QcHoldPointID { get; set; }
public virtual Guid? ReportAttachmentId { get; set; }
public virtual int RequestCount { get; set; }
public virtual int SignatureCount { get; set; }
public virtual string CreatedBy { get; set; }
public virtual DateTime? CreatedAt { get; set; }
public virtual DateTime? UpdatedAt { get; set; }
public virtual List<InspectionItem> Items { get; set; } = [];
public virtual List<InspectionRequest> Requests { get; set; } = [];
public virtual List<SignatureRecord> Signatures { get; set; } = [];
public virtual List<string> Actions { get; set; } = [];
}
public partial class InspectionItem
{
public virtual int InspectionItemID { get; set; }
public virtual int InspectionID { get; set; }
public virtual int Seq { get; set; }
public virtual string Section { get; set; }
public virtual string Prompt { get; set; }
public virtual string ResponseType { get; set; }
public virtual bool IsRequired { get; set; }
public virtual string Unit { get; set; }
public virtual string Guidance { get; set; }
public virtual string Result { get; set; }
public virtual string Value { get; set; }
public virtual string Notes { get; set; }
public virtual int PhotoCount { get; set; }
public virtual int? LinkedPunchItemID { get; set; }
public virtual string LinkedPunchNo { get; set; }
public virtual string LinkedPunchStatus { get; set; }
public virtual int? LinkedNcrID { get; set; }
public virtual string LinkedNcrNo { get; set; }
public virtual int? LinkedActionID { get; set; }
public virtual string AnsweredBy { get; set; }
public virtual DateTime? AnsweredAt { get; set; }
public virtual List<InspectionPhoto> Photos { get; set; } = [];
}
public partial class InspectionPhoto
{
public virtual Guid AttachmentId { get; set; }
public virtual string FileName { get; set; }
public virtual string Url { get; set; }
public virtual string CreatedBy { get; set; }
public virtual DateTime? CreatedDate { get; set; }
public virtual bool HasAnnotation { get; set; }
public virtual Guid? AnnotatedAttachmentId { get; set; }
public virtual string AnnotatedUrl { get; set; }
}
public partial class InspectionPhotoSyncRequest
{
public virtual Guid InspectionUID { get; set; }
public virtual int InspectionItemID { get; set; }
}
public partial class InspectionRequest
{
public virtual int InspectionRequestID { get; set; }
public virtual int InspectionID { get; set; }
public virtual string Agency { get; set; }
public virtual string ContactName { get; set; }
public virtual string ContactPhone { get; set; }
public virtual string PermitNo { get; set; }
public virtual DateTime? RequestedDate { get; set; }
public virtual string RequestedWindow { get; set; }
public virtual string Status { get; set; }
public virtual string ConfirmationNo { get; set; }
public virtual string Outcome { get; set; }
public virtual string CreatedBy { get; set; }
public virtual DateTime? CreatedAt { get; set; }
public virtual DateTime? UpdatedAt { get; set; }
}
public partial class InspectionResponse
{
public virtual ResponseStatus ResponseStatus { get; set; }
public virtual Inspection Inspection { get; set; }
}
public partial class SignatureRecord
{
public virtual int SignatureRecordID { get; set; }
public virtual string EntityType { get; set; }
public virtual int EntityID { get; set; }
public virtual string Role { get; set; }
public virtual string SignerName { get; set; }
public virtual int? SignerContactID { get; set; }
public virtual string SignerUserId { get; set; }
public virtual string Method { get; set; }
public virtual Guid? ImageAttachmentId { get; set; }
public virtual string ImageUrl { get; set; }
public virtual string ImageHash { get; set; }
public virtual string DocumentHash { get; set; }
public virtual string ConsentText { get; set; }
public virtual string IpAddress { get; set; }
public virtual string UserAgent { get; set; }
public virtual DateTime? SignedAt { get; set; }
}
}
C# InspectionPhotoSyncRequest 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/inspections/{InspectionUID}/items/{InspectionItemID}/photos/sync HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
InspectionUID: 00000000000000000000000000000000,
InspectionItemID: 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
}
},
Inspection:
{
InspectionID: 0,
InspectionUID: 00000000000000000000000000000000,
ProjectID: 0,
ProjectName: String,
JobID: 0,
JobName: String,
InspectionNo: String,
Type: String,
Title: String,
Status: String,
TemplateUID: 00000000000000000000000000000000,
TemplateVersionNo: 0,
ScheduledFor: 0001-01-01,
StartedAt: 0001-01-01,
CompletedAt: 0001-01-01,
ClosedAt: 0001-01-01,
InspectorContactID: 0,
InspectorName: String,
AgencyName: String,
PermitNo: String,
LocationText: String,
Notes: String,
WeatherJson: String,
ItemsTotal: 0,
ItemsPassed: 0,
ItemsFailed: 0,
Outcome: String,
OutcomeNotes: String,
ReinspectionOfInspectionID: 0,
QcHoldPointID: 0,
ReportAttachmentId: 00000000000000000000000000000000,
RequestCount: 0,
SignatureCount: 0,
CreatedBy: String,
CreatedAt: 0001-01-01,
UpdatedAt: 0001-01-01,
Items:
[
{
InspectionItemID: 0,
InspectionID: 0,
Seq: 0,
Section: String,
Prompt: String,
ResponseType: String,
IsRequired: False,
Unit: String,
Guidance: String,
Result: String,
Value: String,
Notes: String,
PhotoCount: 0,
LinkedPunchItemID: 0,
LinkedPunchNo: String,
LinkedPunchStatus: String,
LinkedNcrID: 0,
LinkedNcrNo: String,
LinkedActionID: 0,
AnsweredBy: String,
AnsweredAt: 0001-01-01,
Photos:
[
{
AttachmentId: 00000000000000000000000000000000,
FileName: String,
Url: String,
CreatedBy: String,
CreatedDate: 0001-01-01,
HasAnnotation: False,
AnnotatedAttachmentId: 00000000000000000000000000000000,
AnnotatedUrl: String
}
]
}
],
Requests:
[
{
InspectionRequestID: 0,
InspectionID: 0,
Agency: String,
ContactName: String,
ContactPhone: String,
PermitNo: String,
RequestedDate: 0001-01-01,
RequestedWindow: String,
Status: String,
ConfirmationNo: String,
Outcome: String,
CreatedBy: String,
CreatedAt: 0001-01-01,
UpdatedAt: 0001-01-01
}
],
Signatures:
[
{
SignatureRecordID: 0,
EntityType: String,
EntityID: 0,
Role: String,
SignerName: String,
SignerContactID: 0,
SignerUserId: String,
Method: String,
ImageAttachmentId: 00000000000000000000000000000000,
ImageUrl: String,
ImageHash: String,
DocumentHash: String,
ConsentText: String,
IpAddress: String,
UserAgent: String,
SignedAt: 0001-01-01
}
],
Actions:
[
String
]
}
}