Trendsic Platform Service

<back to all web services

InspectionReportRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/inspections/{InspectionUID}/report
import Foundation
import ServiceStack

public class InspectionReportRequest : Codable
{
    public var inspectionUID:String

    required public init(){}
}

public class InspectionReportResponse : Codable
{
    public var responseStatus:ResponseStatus
    public var inspection:Inspection
    public var companyName:String
    public var projectName:String
    public var projectAddress:String
    public var clientName:String
    public var sections:[InspectionReportSection] = []
    public var signatures:[SignatureRecord] = []
    public var snapshotHash:String
    public var generatedAt:Date

    required public init(){}
}

public class Inspection : Codable
{
    public var inspectionID:Int
    public var inspectionUID:String
    public var projectID:Int
    public var projectName:String
    public var jobID:Int?
    public var jobName:String
    public var inspectionNo:String
    public var type:String
    public var title:String
    public var status:String
    public var templateUID:String?
    public var templateVersionNo:Int?
    public var scheduledFor:Date?
    public var startedAt:Date?
    public var completedAt:Date?
    public var closedAt:Date?
    public var inspectorContactID:Int?
    public var inspectorName:String
    public var agencyName:String
    public var permitNo:String
    public var locationText:String
    public var notes:String
    public var weatherJson:String
    public var itemsTotal:Int
    public var itemsPassed:Int
    public var itemsFailed:Int
    public var outcome:String
    public var outcomeNotes:String
    public var reinspectionOfInspectionID:Int?
    public var qcHoldPointID:Int?
    public var reportAttachmentId:String?
    public var requestCount:Int
    public var signatureCount:Int
    public var createdBy:String
    public var createdAt:Date?
    public var updatedAt:Date?
    public var items:[InspectionItem] = []
    public var requests:[InspectionRequest] = []
    public var signatures:[SignatureRecord] = []
    public var actions:[String] = []

    required public init(){}
}

public class InspectionItem : Codable
{
    public var inspectionItemID:Int
    public var inspectionID:Int
    public var seq:Int
    public var section:String
    public var prompt:String
    public var responseType:String
    public var isRequired:Bool
    public var unit:String
    public var guidance:String
    public var result:String
    public var value:String
    public var notes:String
    public var photoCount:Int
    public var linkedPunchItemID:Int?
    public var linkedPunchNo:String
    public var linkedPunchStatus:String
    public var linkedNcrID:Int?
    public var linkedNcrNo:String
    public var linkedActionID:Int?
    public var answeredBy:String
    public var answeredAt:Date?
    public var photos:[InspectionPhoto] = []

    required public init(){}
}

public class InspectionPhoto : Codable
{
    public var attachmentId:String
    public var fileName:String
    public var url:String
    public var createdBy:String
    public var createdDate:Date?
    public var hasAnnotation:Bool
    public var annotatedAttachmentId:String?
    public var annotatedUrl:String

    required public init(){}
}

public class InspectionRequest : Codable
{
    public var inspectionRequestID:Int
    public var inspectionID:Int
    public var agency:String
    public var contactName:String
    public var contactPhone:String
    public var permitNo:String
    public var requestedDate:Date?
    public var requestedWindow:String
    public var status:String
    public var confirmationNo:String
    public var outcome:String
    public var createdBy:String
    public var createdAt:Date?
    public var updatedAt:Date?

    required public init(){}
}

public class SignatureRecord : Codable
{
    public var signatureRecordID:Int
    public var entityType:String
    public var entityID:Int
    public var role:String
    public var signerName:String
    public var signerContactID:Int?
    public var signerUserId:String
    public var method:String
    public var imageAttachmentId:String?
    public var imageUrl:String
    public var imageHash:String
    public var documentHash:String
    public var consentText:String
    public var ipAddress:String
    public var userAgent:String
    public var signedAt:Date?

    required public init(){}
}

public class InspectionReportSection : Codable
{
    public var title:String
    public var items:[InspectionItem] = []
    public var passed:Int
    public var failed:Int

    required public init(){}
}


Swift InspectionReportRequest 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.

GET /v1/inspections/{InspectionUID}/report HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<InspectionReportResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <ClientName>String</ClientName>
  <CompanyName>String</CompanyName>
  <GeneratedAt>0001-01-01T00:00:00</GeneratedAt>
  <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>
  <ProjectAddress>String</ProjectAddress>
  <ProjectName>String</ProjectName>
  <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>
  <Sections>
    <InspectionReportSection>
      <Failed>0</Failed>
      <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>
      <Passed>0</Passed>
      <Title>String</Title>
    </InspectionReportSection>
  </Sections>
  <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>
  <SnapshotHash>String</SnapshotHash>
</InspectionReportResponse>