Platform API

<back to all web services

SaveAutoInspection

Add or update an inspection automation for an object

Requires Authentication
The following routes are available for this service:
PUT/api/automation/inspection/{AutomationId}
POST/api/automation/inspection
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*


/**
* Add or update an inspection automation for an object
*/
@Api(Description="Add or update an inspection automation for an object")
open class SaveAutoInspection
{
    /**
    * Details of the automation to be added or updated.
    */
    @ApiMember(Description="Details of the automation to be added or updated.", ParameterType="query")
    open var Automation:AutoInspectionModel? = null

    /**
    * Id of the automation.
    */
    @ApiMember(Description="Id of the automation.", ParameterType="path")
    open var AutomationId:UUID? = null
}

open class AutoInspectionModel : AutomationModel()
{
    /**
    * The inspection type for the template.
    */
    @ApiMember(Description="The inspection type for the template.", ParameterType="query")
    open var InspectionTypeId:UUID? = null

    /**
    * The template to base the new inspection on.
    */
    @ApiMember(Description="The template to base the new inspection on.", ParameterType="query")
    open var InspectionTemplateId:UUID? = null

    /**
    * The inspector chosen for this inspection will be a contact linked to the project in this role. If no one matches the description, the inspector is not set. 
    */
    @ApiMember(Description="The inspector chosen for this inspection will be a contact linked to the project in this role. If no one matches the description, the inspector is not set. ", ParameterType="query")
    open var ContactRoleId:UUID? = null

    /**
    * If this is true, then if a project inspection for this template already exists, we will not create another inspection.
    */
    @ApiMember(Description="If this is true, then if a project inspection for this template already exists, we will not create another inspection.", ParameterType="query")
    open var IgnoreIfExists:Boolean? = null
}

open class AutomationModel
{
    /**
    * The unique automation Id
    */
    @ApiMember(Description="The unique automation Id", ParameterType="query")
    open var AutomationId:UUID? = null

    /**
    * The automation type Id
    */
    @ApiMember(Description="The automation type Id", ParameterType="query")
    open var AutomationTypeId:UUID? = null

    /**
    * The automation type
    */
    @ApiMember(Description="The automation type", ParameterType="query")
    open var AutomationType:String? = null

    /**
    * The object this automation applies to
    */
    @ApiMember(Description="The object this automation applies to", ParameterType="query")
    open var ObjectId:UUID? = null

    /**
    * The object name this automation applies to
    */
    @ApiMember(Description="The object name this automation applies to", ParameterType="query")
    open var ObjectName:String? = null

    /**
    * The Id of the object type that this automation applies to. 
    */
    @ApiMember(Description="The Id of the object type that this automation applies to. ", ParameterType="query")
    open var RmsTableCtxIdObject:UUID? = null

    /**
    * The name of the object type that this automation applies to.
    */
    @ApiMember(Description="The name of the object type that this automation applies to.", ParameterType="query")
    open var RmsTableCtxName:String? = null

    /**
    * A guid list containing the selected system action Id's that trigger this automation.
    */
    @ApiMember(Description="A guid list containing the selected system action Id's that trigger this automation.", ParameterType="query")
    open var ActionList:ArrayList<UUID>? = null

    /**
    * A comma separated string of the selected system action names that trigger this automation.
    */
    @ApiMember(Description="A comma separated string of the selected system action names that trigger this automation.", ParameterType="query")
    open var Actions:String? = null

    /**
    * Name of the automation.
    */
    @ApiMember(Description="Name of the automation.", ParameterType="query")
    open var Name:String? = null

    /**
    * Description of the automation
    */
    @ApiMember(Description="Description of the automation", ParameterType="query")
    open var Description:String? = null

    /**
    * Owner Contact Id
    */
    @ApiMember(Description="Owner Contact Id", ParameterType="query")
    open var OwnerContactId:UUID? = null

    /**
    * Record Status of the automation.
    */
    @ApiMember(Description="Record Status of the automation.", ParameterType="query")
    open var RecordStatus:String? = null
}

@ApiResponse(Description="List of automations that are setup for an object")
open class GetAutomationsForObjectResponse
{
    /**
    * List of automations.
    */
    @ApiMember(Description="List of automations.")
    open var Automations:ArrayList<AutomationModel>? = null

    open var ResponseStatus:ResponseStatus? = null
}

Kotlin SaveAutoInspection 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 /api/automation/inspection HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SaveAutoInspection xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
  <Automation xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">
    <d2p1:ActionList xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:guid>00000000-0000-0000-0000-000000000000</d3p1:guid>
    </d2p1:ActionList>
    <d2p1:Actions>String</d2p1:Actions>
    <d2p1:AutomationId>00000000-0000-0000-0000-000000000000</d2p1:AutomationId>
    <d2p1:AutomationType>String</d2p1:AutomationType>
    <d2p1:AutomationTypeId>00000000-0000-0000-0000-000000000000</d2p1:AutomationTypeId>
    <d2p1:Description>String</d2p1:Description>
    <d2p1:Name>String</d2p1:Name>
    <d2p1:ObjectId>00000000-0000-0000-0000-000000000000</d2p1:ObjectId>
    <d2p1:ObjectName>String</d2p1:ObjectName>
    <d2p1:OwnerContactId>00000000-0000-0000-0000-000000000000</d2p1:OwnerContactId>
    <d2p1:RecordStatus>String</d2p1:RecordStatus>
    <d2p1:RmsTableCtxIdObject>00000000-0000-0000-0000-000000000000</d2p1:RmsTableCtxIdObject>
    <d2p1:RmsTableCtxName>String</d2p1:RmsTableCtxName>
    <d2p1:ContactRoleId>00000000-0000-0000-0000-000000000000</d2p1:ContactRoleId>
    <d2p1:IgnoreIfExists>false</d2p1:IgnoreIfExists>
    <d2p1:InspectionTemplateId>00000000-0000-0000-0000-000000000000</d2p1:InspectionTemplateId>
    <d2p1:InspectionTypeId>00000000-0000-0000-0000-000000000000</d2p1:InspectionTypeId>
  </Automation>
  <AutomationId>00000000-0000-0000-0000-000000000000</AutomationId>
</SaveAutoInspection>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetAutomationsForObjectResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
  <Automations xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">
    <d2p1:AutomationModel>
      <d2p1:ActionList xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:guid>00000000-0000-0000-0000-000000000000</d4p1:guid>
      </d2p1:ActionList>
      <d2p1:Actions>String</d2p1:Actions>
      <d2p1:AutomationId>00000000-0000-0000-0000-000000000000</d2p1:AutomationId>
      <d2p1:AutomationType>String</d2p1:AutomationType>
      <d2p1:AutomationTypeId>00000000-0000-0000-0000-000000000000</d2p1:AutomationTypeId>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:Name>String</d2p1:Name>
      <d2p1:ObjectId>00000000-0000-0000-0000-000000000000</d2p1:ObjectId>
      <d2p1:ObjectName>String</d2p1:ObjectName>
      <d2p1:OwnerContactId>00000000-0000-0000-0000-000000000000</d2p1:OwnerContactId>
      <d2p1:RecordStatus>String</d2p1:RecordStatus>
      <d2p1:RmsTableCtxIdObject>00000000-0000-0000-0000-000000000000</d2p1:RmsTableCtxIdObject>
      <d2p1:RmsTableCtxName>String</d2p1:RmsTableCtxName>
    </d2p1:AutomationModel>
  </Automations>
  <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>
</GetAutomationsForObjectResponse>