Trendsic Platform Service

<back to all web services

SafetyComplianceRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/safety/compliance
namespace CRM.AgencyPlatform.API.Internal

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type SafetyComplianceKpis() = 
        member val ParticipationPct:Int32 = new Int32() with get,set
        member val OpenIncidents:Int32 = new Int32() with get,set
        member val OverdueCAs:Int32 = new Int32() with get,set
        member val Recordables12mo:Int32 = new Int32() with get,set
        member val DaysWithoutRecordable:Int32 = new Int32() with get,set
        member val ProjectsWithTalkToday:Int32 = new Int32() with get,set
        member val ProjectsWithCrewToday:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type SafetyComplianceProject() = 
        member val ProjectID:Int32 = new Int32() with get,set
        member val ProjectUID:String = null with get,set
        member val ProjectName:String = null with get,set
        member val Branch:String = null with get,set
        member val CrewCount:Int32 = new Int32() with get,set
        member val HasTalkToday:Boolean = new Boolean() with get,set
        member val TalkAckPct:Int32 = new Int32() with get,set
        member val OpenIncidents:Int32 = new Int32() with get,set
        member val OverdueCAs:Int32 = new Int32() with get,set
        member val Recordables12mo:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type SafetyTrendWeek() = 
        member val WeekStart:String = null with get,set
        member val Acks:Int32 = new Int32() with get,set
        member val Roster:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type SafetyIncidentMixRow() = 
        member val Severity:String = null with get,set
        member val Cnt:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type SafetyMissingTalk() = 
        member val ProjectID:Int32 = new Int32() with get,set
        member val ProjectUID:String = null with get,set
        member val ProjectName:String = null with get,set
        member val CrewCount:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type SafetyComplianceResponse() = 
        member val ResponseStatus:ResponseStatus = null with get,set
        member val Kpis:SafetyComplianceKpis = null with get,set
        member val Projects:ResizeArray<SafetyComplianceProject> = new ResizeArray<SafetyComplianceProject>() with get,set
        member val Trend:ResizeArray<SafetyTrendWeek> = new ResizeArray<SafetyTrendWeek>() with get,set
        member val IncidentMix:ResizeArray<SafetyIncidentMixRow> = new ResizeArray<SafetyIncidentMixRow>() with get,set
        member val MissingTalks:ResizeArray<SafetyMissingTalk> = new ResizeArray<SafetyMissingTalk>() with get,set

    [<AllowNullLiteral>]
    type SafetyComplianceRequest() = 
        member val Days:Int32 = new Int32() with get,set

F# SafetyComplianceRequest 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/safety/compliance HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<SafetyComplianceResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <IncidentMix>
    <SafetyIncidentMixRow>
      <Cnt>0</Cnt>
      <Severity>String</Severity>
    </SafetyIncidentMixRow>
  </IncidentMix>
  <Kpis>
    <DaysWithoutRecordable>0</DaysWithoutRecordable>
    <OpenIncidents>0</OpenIncidents>
    <OverdueCAs>0</OverdueCAs>
    <ParticipationPct>0</ParticipationPct>
    <ProjectsWithCrewToday>0</ProjectsWithCrewToday>
    <ProjectsWithTalkToday>0</ProjectsWithTalkToday>
    <Recordables12mo>0</Recordables12mo>
  </Kpis>
  <MissingTalks>
    <SafetyMissingTalk>
      <CrewCount>0</CrewCount>
      <ProjectID>0</ProjectID>
      <ProjectName>String</ProjectName>
      <ProjectUID>String</ProjectUID>
    </SafetyMissingTalk>
  </MissingTalks>
  <Projects>
    <SafetyComplianceProject>
      <Branch>String</Branch>
      <CrewCount>0</CrewCount>
      <HasTalkToday>false</HasTalkToday>
      <OpenIncidents>0</OpenIncidents>
      <OverdueCAs>0</OverdueCAs>
      <ProjectID>0</ProjectID>
      <ProjectName>String</ProjectName>
      <ProjectUID>String</ProjectUID>
      <Recordables12mo>0</Recordables12mo>
      <TalkAckPct>0</TalkAckPct>
    </SafetyComplianceProject>
  </Projects>
  <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>
  <Trend>
    <SafetyTrendWeek>
      <Acks>0</Acks>
      <Roster>0</Roster>
      <WeekStart>String</WeekStart>
    </SafetyTrendWeek>
  </Trend>
</SafetyComplianceResponse>