Trendsic Platform Service

<back to all web services

InspectionCreateRequest

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/projects/{ProjectID}/inspections
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class InspectionPhoto implements IConvertible
{
    String? AttachmentId;
    String? FileName;
    String? Url;
    String? CreatedBy;
    DateTime? CreatedDate;
    bool? HasAnnotation;
    String? AnnotatedAttachmentId;
    String? AnnotatedUrl;

    InspectionPhoto({this.AttachmentId,this.FileName,this.Url,this.CreatedBy,this.CreatedDate,this.HasAnnotation,this.AnnotatedAttachmentId,this.AnnotatedUrl});
    InspectionPhoto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        AttachmentId = json['AttachmentId'];
        FileName = json['FileName'];
        Url = json['Url'];
        CreatedBy = json['CreatedBy'];
        CreatedDate = JsonConverters.fromJson(json['CreatedDate'],'DateTime',context!);
        HasAnnotation = json['HasAnnotation'];
        AnnotatedAttachmentId = json['AnnotatedAttachmentId'];
        AnnotatedUrl = json['AnnotatedUrl'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'AttachmentId': AttachmentId,
        'FileName': FileName,
        'Url': Url,
        'CreatedBy': CreatedBy,
        'CreatedDate': JsonConverters.toJson(CreatedDate,'DateTime',context!),
        'HasAnnotation': HasAnnotation,
        'AnnotatedAttachmentId': AnnotatedAttachmentId,
        'AnnotatedUrl': AnnotatedUrl
    };

    getTypeName() => "InspectionPhoto";
    TypeContext? context = _ctx;
}

class InspectionItem implements IConvertible
{
    int? InspectionItemID;
    int? InspectionID;
    int? Seq;
    String? Section;
    String? Prompt;
    String? ResponseType;
    bool? IsRequired;
    String? Unit;
    String? Guidance;
    String? Result;
    String? Value;
    String? Notes;
    int? PhotoCount;
    int? LinkedPunchItemID;
    String? LinkedPunchNo;
    String? LinkedPunchStatus;
    int? LinkedNcrID;
    String? LinkedNcrNo;
    int? LinkedActionID;
    String? AnsweredBy;
    DateTime? AnsweredAt;
    List<InspectionPhoto>? Photos = [];

    InspectionItem({this.InspectionItemID,this.InspectionID,this.Seq,this.Section,this.Prompt,this.ResponseType,this.IsRequired,this.Unit,this.Guidance,this.Result,this.Value,this.Notes,this.PhotoCount,this.LinkedPunchItemID,this.LinkedPunchNo,this.LinkedPunchStatus,this.LinkedNcrID,this.LinkedNcrNo,this.LinkedActionID,this.AnsweredBy,this.AnsweredAt,this.Photos});
    InspectionItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        InspectionItemID = json['InspectionItemID'];
        InspectionID = json['InspectionID'];
        Seq = json['Seq'];
        Section = json['Section'];
        Prompt = json['Prompt'];
        ResponseType = json['ResponseType'];
        IsRequired = json['IsRequired'];
        Unit = json['Unit'];
        Guidance = json['Guidance'];
        Result = json['Result'];
        Value = json['Value'];
        Notes = json['Notes'];
        PhotoCount = json['PhotoCount'];
        LinkedPunchItemID = json['LinkedPunchItemID'];
        LinkedPunchNo = json['LinkedPunchNo'];
        LinkedPunchStatus = json['LinkedPunchStatus'];
        LinkedNcrID = json['LinkedNcrID'];
        LinkedNcrNo = json['LinkedNcrNo'];
        LinkedActionID = json['LinkedActionID'];
        AnsweredBy = json['AnsweredBy'];
        AnsweredAt = JsonConverters.fromJson(json['AnsweredAt'],'DateTime',context!);
        Photos = JsonConverters.fromJson(json['Photos'],'List<InspectionPhoto>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'InspectionItemID': InspectionItemID,
        'InspectionID': InspectionID,
        'Seq': Seq,
        'Section': Section,
        'Prompt': Prompt,
        'ResponseType': ResponseType,
        'IsRequired': IsRequired,
        'Unit': Unit,
        'Guidance': Guidance,
        'Result': Result,
        'Value': Value,
        'Notes': Notes,
        'PhotoCount': PhotoCount,
        'LinkedPunchItemID': LinkedPunchItemID,
        'LinkedPunchNo': LinkedPunchNo,
        'LinkedPunchStatus': LinkedPunchStatus,
        'LinkedNcrID': LinkedNcrID,
        'LinkedNcrNo': LinkedNcrNo,
        'LinkedActionID': LinkedActionID,
        'AnsweredBy': AnsweredBy,
        'AnsweredAt': JsonConverters.toJson(AnsweredAt,'DateTime',context!),
        'Photos': JsonConverters.toJson(Photos,'List<InspectionPhoto>',context!)
    };

    getTypeName() => "InspectionItem";
    TypeContext? context = _ctx;
}

class InspectionRequest implements IConvertible
{
    int? InspectionRequestID;
    int? InspectionID;
    String? Agency;
    String? ContactName;
    String? ContactPhone;
    String? PermitNo;
    DateTime? RequestedDate;
    String? RequestedWindow;
    String? Status;
    String? ConfirmationNo;
    String? Outcome;
    String? CreatedBy;
    DateTime? CreatedAt;
    DateTime? UpdatedAt;

    InspectionRequest({this.InspectionRequestID,this.InspectionID,this.Agency,this.ContactName,this.ContactPhone,this.PermitNo,this.RequestedDate,this.RequestedWindow,this.Status,this.ConfirmationNo,this.Outcome,this.CreatedBy,this.CreatedAt,this.UpdatedAt});
    InspectionRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        InspectionRequestID = json['InspectionRequestID'];
        InspectionID = json['InspectionID'];
        Agency = json['Agency'];
        ContactName = json['ContactName'];
        ContactPhone = json['ContactPhone'];
        PermitNo = json['PermitNo'];
        RequestedDate = JsonConverters.fromJson(json['RequestedDate'],'DateTime',context!);
        RequestedWindow = json['RequestedWindow'];
        Status = json['Status'];
        ConfirmationNo = json['ConfirmationNo'];
        Outcome = json['Outcome'];
        CreatedBy = json['CreatedBy'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'InspectionRequestID': InspectionRequestID,
        'InspectionID': InspectionID,
        'Agency': Agency,
        'ContactName': ContactName,
        'ContactPhone': ContactPhone,
        'PermitNo': PermitNo,
        'RequestedDate': JsonConverters.toJson(RequestedDate,'DateTime',context!),
        'RequestedWindow': RequestedWindow,
        'Status': Status,
        'ConfirmationNo': ConfirmationNo,
        'Outcome': Outcome,
        'CreatedBy': CreatedBy,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!)
    };

    getTypeName() => "InspectionRequest";
    TypeContext? context = _ctx;
}

class SignatureRecord implements IConvertible
{
    int? SignatureRecordID;
    String? EntityType;
    int? EntityID;
    String? Role;
    String? SignerName;
    int? SignerContactID;
    String? SignerUserId;
    String? Method;
    String? ImageAttachmentId;
    String? ImageUrl;
    String? ImageHash;
    String? DocumentHash;
    String? ConsentText;
    String? IpAddress;
    String? UserAgent;
    DateTime? SignedAt;

    SignatureRecord({this.SignatureRecordID,this.EntityType,this.EntityID,this.Role,this.SignerName,this.SignerContactID,this.SignerUserId,this.Method,this.ImageAttachmentId,this.ImageUrl,this.ImageHash,this.DocumentHash,this.ConsentText,this.IpAddress,this.UserAgent,this.SignedAt});
    SignatureRecord.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SignatureRecordID = json['SignatureRecordID'];
        EntityType = json['EntityType'];
        EntityID = json['EntityID'];
        Role = json['Role'];
        SignerName = json['SignerName'];
        SignerContactID = json['SignerContactID'];
        SignerUserId = json['SignerUserId'];
        Method = json['Method'];
        ImageAttachmentId = json['ImageAttachmentId'];
        ImageUrl = json['ImageUrl'];
        ImageHash = json['ImageHash'];
        DocumentHash = json['DocumentHash'];
        ConsentText = json['ConsentText'];
        IpAddress = json['IpAddress'];
        UserAgent = json['UserAgent'];
        SignedAt = JsonConverters.fromJson(json['SignedAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SignatureRecordID': SignatureRecordID,
        'EntityType': EntityType,
        'EntityID': EntityID,
        'Role': Role,
        'SignerName': SignerName,
        'SignerContactID': SignerContactID,
        'SignerUserId': SignerUserId,
        'Method': Method,
        'ImageAttachmentId': ImageAttachmentId,
        'ImageUrl': ImageUrl,
        'ImageHash': ImageHash,
        'DocumentHash': DocumentHash,
        'ConsentText': ConsentText,
        'IpAddress': IpAddress,
        'UserAgent': UserAgent,
        'SignedAt': JsonConverters.toJson(SignedAt,'DateTime',context!)
    };

    getTypeName() => "SignatureRecord";
    TypeContext? context = _ctx;
}

class Inspection implements IConvertible
{
    int? InspectionID;
    String? InspectionUID;
    int? ProjectID;
    String? ProjectName;
    int? JobID;
    String? JobName;
    String? InspectionNo;
    String? Type;
    String? Title;
    String? Status;
    String? TemplateUID;
    int? TemplateVersionNo;
    DateTime? ScheduledFor;
    DateTime? StartedAt;
    DateTime? CompletedAt;
    DateTime? ClosedAt;
    int? InspectorContactID;
    String? InspectorName;
    String? AgencyName;
    String? PermitNo;
    String? LocationText;
    String? Notes;
    String? WeatherJson;
    int? ItemsTotal;
    int? ItemsPassed;
    int? ItemsFailed;
    String? Outcome;
    String? OutcomeNotes;
    int? ReinspectionOfInspectionID;
    int? QcHoldPointID;
    String? ReportAttachmentId;
    int? RequestCount;
    int? SignatureCount;
    String? CreatedBy;
    DateTime? CreatedAt;
    DateTime? UpdatedAt;
    List<InspectionItem>? Items = [];
    List<InspectionRequest>? Requests = [];
    List<SignatureRecord>? Signatures = [];
    List<String>? Actions = [];

    Inspection({this.InspectionID,this.InspectionUID,this.ProjectID,this.ProjectName,this.JobID,this.JobName,this.InspectionNo,this.Type,this.Title,this.Status,this.TemplateUID,this.TemplateVersionNo,this.ScheduledFor,this.StartedAt,this.CompletedAt,this.ClosedAt,this.InspectorContactID,this.InspectorName,this.AgencyName,this.PermitNo,this.LocationText,this.Notes,this.WeatherJson,this.ItemsTotal,this.ItemsPassed,this.ItemsFailed,this.Outcome,this.OutcomeNotes,this.ReinspectionOfInspectionID,this.QcHoldPointID,this.ReportAttachmentId,this.RequestCount,this.SignatureCount,this.CreatedBy,this.CreatedAt,this.UpdatedAt,this.Items,this.Requests,this.Signatures,this.Actions});
    Inspection.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        InspectionID = json['InspectionID'];
        InspectionUID = json['InspectionUID'];
        ProjectID = json['ProjectID'];
        ProjectName = json['ProjectName'];
        JobID = json['JobID'];
        JobName = json['JobName'];
        InspectionNo = json['InspectionNo'];
        Type = json['Type'];
        Title = json['Title'];
        Status = json['Status'];
        TemplateUID = json['TemplateUID'];
        TemplateVersionNo = json['TemplateVersionNo'];
        ScheduledFor = JsonConverters.fromJson(json['ScheduledFor'],'DateTime',context!);
        StartedAt = JsonConverters.fromJson(json['StartedAt'],'DateTime',context!);
        CompletedAt = JsonConverters.fromJson(json['CompletedAt'],'DateTime',context!);
        ClosedAt = JsonConverters.fromJson(json['ClosedAt'],'DateTime',context!);
        InspectorContactID = json['InspectorContactID'];
        InspectorName = json['InspectorName'];
        AgencyName = json['AgencyName'];
        PermitNo = json['PermitNo'];
        LocationText = json['LocationText'];
        Notes = json['Notes'];
        WeatherJson = json['WeatherJson'];
        ItemsTotal = json['ItemsTotal'];
        ItemsPassed = json['ItemsPassed'];
        ItemsFailed = json['ItemsFailed'];
        Outcome = json['Outcome'];
        OutcomeNotes = json['OutcomeNotes'];
        ReinspectionOfInspectionID = json['ReinspectionOfInspectionID'];
        QcHoldPointID = json['QcHoldPointID'];
        ReportAttachmentId = json['ReportAttachmentId'];
        RequestCount = json['RequestCount'];
        SignatureCount = json['SignatureCount'];
        CreatedBy = json['CreatedBy'];
        CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!);
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        Items = JsonConverters.fromJson(json['Items'],'List<InspectionItem>',context!);
        Requests = JsonConverters.fromJson(json['Requests'],'List<InspectionRequest>',context!);
        Signatures = JsonConverters.fromJson(json['Signatures'],'List<SignatureRecord>',context!);
        Actions = JsonConverters.fromJson(json['Actions'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'InspectionID': InspectionID,
        'InspectionUID': InspectionUID,
        'ProjectID': ProjectID,
        'ProjectName': ProjectName,
        'JobID': JobID,
        'JobName': JobName,
        'InspectionNo': InspectionNo,
        'Type': Type,
        'Title': Title,
        'Status': Status,
        'TemplateUID': TemplateUID,
        'TemplateVersionNo': TemplateVersionNo,
        'ScheduledFor': JsonConverters.toJson(ScheduledFor,'DateTime',context!),
        'StartedAt': JsonConverters.toJson(StartedAt,'DateTime',context!),
        'CompletedAt': JsonConverters.toJson(CompletedAt,'DateTime',context!),
        'ClosedAt': JsonConverters.toJson(ClosedAt,'DateTime',context!),
        'InspectorContactID': InspectorContactID,
        'InspectorName': InspectorName,
        'AgencyName': AgencyName,
        'PermitNo': PermitNo,
        'LocationText': LocationText,
        'Notes': Notes,
        'WeatherJson': WeatherJson,
        'ItemsTotal': ItemsTotal,
        'ItemsPassed': ItemsPassed,
        'ItemsFailed': ItemsFailed,
        'Outcome': Outcome,
        'OutcomeNotes': OutcomeNotes,
        'ReinspectionOfInspectionID': ReinspectionOfInspectionID,
        'QcHoldPointID': QcHoldPointID,
        'ReportAttachmentId': ReportAttachmentId,
        'RequestCount': RequestCount,
        'SignatureCount': SignatureCount,
        'CreatedBy': CreatedBy,
        'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!),
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!),
        'Items': JsonConverters.toJson(Items,'List<InspectionItem>',context!),
        'Requests': JsonConverters.toJson(Requests,'List<InspectionRequest>',context!),
        'Signatures': JsonConverters.toJson(Signatures,'List<SignatureRecord>',context!),
        'Actions': JsonConverters.toJson(Actions,'List<String>',context!)
    };

    getTypeName() => "Inspection";
    TypeContext? context = _ctx;
}

class InspectionResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    Inspection? Inspection;

    InspectionResponse({this.ResponseStatus,this.Inspection});
    InspectionResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Inspection = JsonConverters.fromJson(json['Inspection'],'Inspection',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Inspection': JsonConverters.toJson(Inspection,'Inspection',context!)
    };

    getTypeName() => "InspectionResponse";
    TypeContext? context = _ctx;
}

class InspectionCreateRequest implements IConvertible
{
    int? ProjectID;
    int? JobID;
    String? Type;
    String? Title;
    String? TemplateUID;
    DateTime? ScheduledFor;
    int? InspectorContactID;
    String? InspectorName;
    String? AgencyName;
    String? PermitNo;
    String? LocationText;
    String? Notes;
    int? QcHoldPointID;
    List<InspectionItem>? Items = [];

    InspectionCreateRequest({this.ProjectID,this.JobID,this.Type,this.Title,this.TemplateUID,this.ScheduledFor,this.InspectorContactID,this.InspectorName,this.AgencyName,this.PermitNo,this.LocationText,this.Notes,this.QcHoldPointID,this.Items});
    InspectionCreateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ProjectID = json['ProjectID'];
        JobID = json['JobID'];
        Type = json['Type'];
        Title = json['Title'];
        TemplateUID = json['TemplateUID'];
        ScheduledFor = JsonConverters.fromJson(json['ScheduledFor'],'DateTime',context!);
        InspectorContactID = json['InspectorContactID'];
        InspectorName = json['InspectorName'];
        AgencyName = json['AgencyName'];
        PermitNo = json['PermitNo'];
        LocationText = json['LocationText'];
        Notes = json['Notes'];
        QcHoldPointID = json['QcHoldPointID'];
        Items = JsonConverters.fromJson(json['Items'],'List<InspectionItem>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ProjectID': ProjectID,
        'JobID': JobID,
        'Type': Type,
        'Title': Title,
        'TemplateUID': TemplateUID,
        'ScheduledFor': JsonConverters.toJson(ScheduledFor,'DateTime',context!),
        'InspectorContactID': InspectorContactID,
        'InspectorName': InspectorName,
        'AgencyName': AgencyName,
        'PermitNo': PermitNo,
        'LocationText': LocationText,
        'Notes': Notes,
        'QcHoldPointID': QcHoldPointID,
        'Items': JsonConverters.toJson(Items,'List<InspectionItem>',context!)
    };

    getTypeName() => "InspectionCreateRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'InspectionPhoto': TypeInfo(TypeOf.Class, create:() => InspectionPhoto()),
    'InspectionItem': TypeInfo(TypeOf.Class, create:() => InspectionItem()),
    'List<InspectionPhoto>': TypeInfo(TypeOf.Class, create:() => <InspectionPhoto>[]),
    'InspectionRequest': TypeInfo(TypeOf.Class, create:() => InspectionRequest()),
    'SignatureRecord': TypeInfo(TypeOf.Class, create:() => SignatureRecord()),
    'Inspection': TypeInfo(TypeOf.Class, create:() => Inspection()),
    'List<InspectionItem>': TypeInfo(TypeOf.Class, create:() => <InspectionItem>[]),
    'List<InspectionRequest>': TypeInfo(TypeOf.Class, create:() => <InspectionRequest>[]),
    'List<SignatureRecord>': TypeInfo(TypeOf.Class, create:() => <SignatureRecord>[]),
    'InspectionResponse': TypeInfo(TypeOf.Class, create:() => InspectionResponse()),
    'InspectionCreateRequest': TypeInfo(TypeOf.Class, create:() => InspectionCreateRequest()),
});

Dart InspectionCreateRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/projects/{ProjectID}/inspections HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<InspectionCreateRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <AgencyName>String</AgencyName>
  <InspectorContactID>0</InspectorContactID>
  <InspectorName>String</InspectorName>
  <Items>
    <InspectionItem>
      <AnsweredAt>0001-01-01T00:00:00</AnsweredAt>
      <AnsweredBy>String</AnsweredBy>
      <Guidance>String</Guidance>
      <InspectionID>0</InspectionID>
      <InspectionItemID>0</InspectionItemID>
      <IsRequired>false</IsRequired>
      <LinkedActionID>0</LinkedActionID>
      <LinkedNcrID>0</LinkedNcrID>
      <LinkedNcrNo>String</LinkedNcrNo>
      <LinkedPunchItemID>0</LinkedPunchItemID>
      <LinkedPunchNo>String</LinkedPunchNo>
      <LinkedPunchStatus>String</LinkedPunchStatus>
      <Notes>String</Notes>
      <PhotoCount>0</PhotoCount>
      <Photos>
        <InspectionPhoto>
          <AnnotatedAttachmentId>00000000-0000-0000-0000-000000000000</AnnotatedAttachmentId>
          <AnnotatedUrl>String</AnnotatedUrl>
          <AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
          <CreatedBy>String</CreatedBy>
          <CreatedDate>0001-01-01T00:00:00</CreatedDate>
          <FileName>String</FileName>
          <HasAnnotation>false</HasAnnotation>
          <Url>String</Url>
        </InspectionPhoto>
      </Photos>
      <Prompt>String</Prompt>
      <ResponseType>String</ResponseType>
      <Result>String</Result>
      <Section>String</Section>
      <Seq>0</Seq>
      <Unit>String</Unit>
      <Value>String</Value>
    </InspectionItem>
  </Items>
  <JobID>0</JobID>
  <LocationText>String</LocationText>
  <Notes>String</Notes>
  <PermitNo>String</PermitNo>
  <ProjectID>0</ProjectID>
  <QcHoldPointID>0</QcHoldPointID>
  <ScheduledFor>0001-01-01T00:00:00</ScheduledFor>
  <TemplateUID>00000000-0000-0000-0000-000000000000</TemplateUID>
  <Title>String</Title>
  <Type>String</Type>
</InspectionCreateRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<InspectionResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <Inspection>
    <Actions xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Actions>
    <AgencyName>String</AgencyName>
    <ClosedAt>0001-01-01T00:00:00</ClosedAt>
    <CompletedAt>0001-01-01T00:00:00</CompletedAt>
    <CreatedAt>0001-01-01T00:00:00</CreatedAt>
    <CreatedBy>String</CreatedBy>
    <InspectionID>0</InspectionID>
    <InspectionNo>String</InspectionNo>
    <InspectionUID>00000000-0000-0000-0000-000000000000</InspectionUID>
    <InspectorContactID>0</InspectorContactID>
    <InspectorName>String</InspectorName>
    <Items>
      <InspectionItem>
        <AnsweredAt>0001-01-01T00:00:00</AnsweredAt>
        <AnsweredBy>String</AnsweredBy>
        <Guidance>String</Guidance>
        <InspectionID>0</InspectionID>
        <InspectionItemID>0</InspectionItemID>
        <IsRequired>false</IsRequired>
        <LinkedActionID>0</LinkedActionID>
        <LinkedNcrID>0</LinkedNcrID>
        <LinkedNcrNo>String</LinkedNcrNo>
        <LinkedPunchItemID>0</LinkedPunchItemID>
        <LinkedPunchNo>String</LinkedPunchNo>
        <LinkedPunchStatus>String</LinkedPunchStatus>
        <Notes>String</Notes>
        <PhotoCount>0</PhotoCount>
        <Photos>
          <InspectionPhoto>
            <AnnotatedAttachmentId>00000000-0000-0000-0000-000000000000</AnnotatedAttachmentId>
            <AnnotatedUrl>String</AnnotatedUrl>
            <AttachmentId>00000000-0000-0000-0000-000000000000</AttachmentId>
            <CreatedBy>String</CreatedBy>
            <CreatedDate>0001-01-01T00:00:00</CreatedDate>
            <FileName>String</FileName>
            <HasAnnotation>false</HasAnnotation>
            <Url>String</Url>
          </InspectionPhoto>
        </Photos>
        <Prompt>String</Prompt>
        <ResponseType>String</ResponseType>
        <Result>String</Result>
        <Section>String</Section>
        <Seq>0</Seq>
        <Unit>String</Unit>
        <Value>String</Value>
      </InspectionItem>
    </Items>
    <ItemsFailed>0</ItemsFailed>
    <ItemsPassed>0</ItemsPassed>
    <ItemsTotal>0</ItemsTotal>
    <JobID>0</JobID>
    <JobName>String</JobName>
    <LocationText>String</LocationText>
    <Notes>String</Notes>
    <Outcome>String</Outcome>
    <OutcomeNotes>String</OutcomeNotes>
    <PermitNo>String</PermitNo>
    <ProjectID>0</ProjectID>
    <ProjectName>String</ProjectName>
    <QcHoldPointID>0</QcHoldPointID>
    <ReinspectionOfInspectionID>0</ReinspectionOfInspectionID>
    <ReportAttachmentId>00000000-0000-0000-0000-000000000000</ReportAttachmentId>
    <RequestCount>0</RequestCount>
    <Requests>
      <InspectionRequest>
        <Agency>String</Agency>
        <ConfirmationNo>String</ConfirmationNo>
        <ContactName>String</ContactName>
        <ContactPhone>String</ContactPhone>
        <CreatedAt>0001-01-01T00:00:00</CreatedAt>
        <CreatedBy>String</CreatedBy>
        <InspectionID>0</InspectionID>
        <InspectionRequestID>0</InspectionRequestID>
        <Outcome>String</Outcome>
        <PermitNo>String</PermitNo>
        <RequestedDate>0001-01-01T00:00:00</RequestedDate>
        <RequestedWindow>String</RequestedWindow>
        <Status>String</Status>
        <UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
      </InspectionRequest>
    </Requests>
    <ScheduledFor>0001-01-01T00:00:00</ScheduledFor>
    <SignatureCount>0</SignatureCount>
    <Signatures>
      <SignatureRecord>
        <ConsentText>String</ConsentText>
        <DocumentHash>String</DocumentHash>
        <EntityID>0</EntityID>
        <EntityType>String</EntityType>
        <ImageAttachmentId>00000000-0000-0000-0000-000000000000</ImageAttachmentId>
        <ImageHash>String</ImageHash>
        <ImageUrl>String</ImageUrl>
        <IpAddress>String</IpAddress>
        <Method>String</Method>
        <Role>String</Role>
        <SignatureRecordID>0</SignatureRecordID>
        <SignedAt>0001-01-01T00:00:00</SignedAt>
        <SignerContactID>0</SignerContactID>
        <SignerName>String</SignerName>
        <SignerUserId>String</SignerUserId>
        <UserAgent>String</UserAgent>
      </SignatureRecord>
    </Signatures>
    <StartedAt>0001-01-01T00:00:00</StartedAt>
    <Status>String</Status>
    <TemplateUID>00000000-0000-0000-0000-000000000000</TemplateUID>
    <TemplateVersionNo>0</TemplateVersionNo>
    <Title>String</Title>
    <Type>String</Type>
    <UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
    <WeatherJson>String</WeatherJson>
  </Inspection>
  <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>
</InspectionResponse>