Ultimo Developer
  • Welcome
  • Getting started
    • Introduction
    • Software editions
  • API guide
    • REST
      • Requesting data
      • Inserting data
      • Inserting data in batch
      • File uploads
      • Query options
      • Special characters
      • Testing REST
      • Additional security
      • Limits and Quotas
    • HTTP POST
      • Overview of a POST request
      • Requesting data
      • Inserting data
      • Testing HTTP POST
      • Additional security
    • SOAP
      • Overview of a POST request
      • Requesting data
      • Inserting data
      • Testing SOAP
      • Additional security
    • Third party integration
    • Error handling
  • CONNECTORS
    • BI Platform
      • Create database user
      • Connect to the database
      • Expiring passwords
    • Exchange Online
      • Email import
      • Custom SMTP
    • LDAP
      • LDAP connector
      • Cloud vs On Premises
    • SCIM
    • OCI
    • Universal Print
      • Prerequisites & limitations
      • How to setup
  • API key Templates
    • Introduction
    • Master data
      • Cost centers
      • Departments
      • Employees
      • Service contracts
      • Suppliers
    • Assets
      • Technical Service
      • Medical Assets
      • Fleet objects
      • Infra objects
      • IT Configuration-Items
    • Jobs
      • Technical Service jobs
      • Medical jobs
      • Fleet jobs
      • Infra jobs
      • IT-incidents
      • Attach or change images
    • Article
      • Create articles
      • Create article supplier
    • IoT
      • REST
      • HTTP POST
      • SOAP
    • Reservations
      • Create reservation
      • Update reservation
      • Cancel reservation
      • Get reservations
    • Track & Trace
  • Database
    • BI overview
      • BI functions
      • BI views
  • Azure documentation
    • Terms & Conditions
    • Azure migration
      • Export alternatives
      • Import alternatives
      • LDAP
    • Setup standard Single Sign On with MS Entra ID
    • Azure Authentication
    • Azure IP addresses
    • Azure AD SCIM provisioning
  • Have a question?
    • Ask on our Customer Portal
    • Contact Customer Support
Powered by GitBook
On this page
  • WSDL:
  • The body contains the following information:
  • Example:
  1. API key Templates
  2. IoT

SOAP

WSDL:

https://customer.ultimo.com/webservices/soapconnector.svc?wsdl

The body contains the following information:

Parameter

Description

importName

Fixed value “IOT-MEASUREMENT”

username

Username that has the rights to use the IoT-connector

password

Password of the user

importData

The measurements XML in a <![CDATA[ ..]]> block

Example:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/ xmlns:tem=“http://tempuri.org/>
        <soapenv:Header/>
                <soapenv:Body>
                        <tem:ImportData>

                        <tem:importName>IOT-MEASUREMENT</tem:importName>

                        <tem:userName>userl</tem:userName> 

                        <tem:password>PasswOrd!</tem:password>
                        <tem:importData>
                                <![CDATA[<Measurements>
                                    <Measurement>
                                            <EquipmentId>00001</EquipmentId>
                                            <MeasurementPointId>TEMP</MeasurementPointId>
                                            <Value>22</Value>
                                            <Date>2018-08-20715:18:59Z</Date>
                                            <Text>Some remarks for measurement</Text>
                                    </Measurement>
                                    <Measurement>
                                            <ProcessFunctionId>0001</ProcessFunctionId>
                                            <MeasurementPointId>RUNHOURS</MeasurementPointId>
                                            <Value>22</Value>
                                            <Date>2018-08-21 15:19:59</Date>
                                            <Text>Some remarks for measurement</Text>
                                    </Measurement>
                                </Measurements>]]> 
            </tem:importData>
        </tem:ImportData>
    </soapenv:Body>
</soapenv:Envelope>

The response will contain the imported measurements in the internal Ultimo data structure, including the generated IDs. When a measurement is imported successfully, the attribute Action is “Insert”. Example response:

Status: 200 OK

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body>
        <ImportDataResponse xmlns="http://tempuri.org/">
            <ImportDataResult>
                <![CDATA[<?xml version="1.0" encoding="utf-16"?> 
                    <Data> 
                        <Object Type="EquipmentMeasurementPointValue" Action="Insert"> 
                            <Property Name="Id.EquipmentMeasurementPoint.Id.Equipment.Id" Value="00001" /> 
                            <Property Name="Id.EquipmentMeasurementPoint.Id.Id" Value="TEMP" /> 
                            <Property Name="Id.LineId" Value="00000000000003" /> 
                        </Object> 
                        <Object Type="ProcessFunctionMeasurementPointValue" Action="Insert"> 
                            <Property Name="Id.ProcessFunctionMeasurementPoint.Id.Id" Value="RUNHOURS" /> 
                            <Property Name="Id.ProcessFunctionMeasurementPoint.Id.ProcessFunction.Id" Value="0001" /> 
                            <Property Name="Id.LineId" Value="00000000000002" /> 
                        </Object> 
                    </Data>]]>
            </ImportDataResult>
        </ImportDataResponse>
    </s:Body>
</s:Envelope>

When the measurement is not accepted by the Ultimo business rules or an error occurs during the processing of the measurement, the Action attribute will have the value “Error”. Example of a response that contains errors:

Status: 200 OK

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body>
        <ImportDataResponse xmlns="http://tempuri.org/">
            <ImportDataResult>
                <![CDATA[<?xml version="1.0" encoding="utf-16"?> 
                    <Data> 
                        <Object Type="EquipmentMeasurementPointValue" Action="Error">
                            <Property Name="ErrorMessage" Value="Cannot import entity 'EquipmentMeasurementPointValue' 'ExternalId': '00001-DEFAULT-2018-08-20T15:17:59Z-232' 'Id.EquipmentMeasurementPoint.Id.Equipment.Id': '00001' 'Id.EquipmentMeasurementPoint.Id.Id': 'DEFAULT' 'Date': '2018-08-20T15:17:59Z' 'Value': '232' 'Text': 'Some remarks for measurement' 'Status': 'EquipmentMeasurementPointValueStatus.ToProcess' . Error wile executing workflow 'EquipmentMeasurementPointValue_PostImport'. Message: EquipmentMeasurementPointValue_CheckIfAnotherValueExistsForDateTime Measurement value for measurementpoint DEFAULT of equipment Heftruck 1 type 35  cannot be processed.&#xD;&#xA; Cause: measurement value '(22)' has already been specified for 08/21/2018 03:17." />
                            <Property Name="ShortErrorMessage" Value="Error wile executing workflow 'EquipmentMeasurementPointValue_PostImport'. Message: EquipmentMeasurementPointValue_CheckIfAnotherValueExistsForDateTime Measurement value for measurementpoint DEFAULT of equipment Heftruck 1 type 35  cannot be processed.&#xD;&#xA;Cause: measurement value '(22)' has already been specified for 08/21/2018 03:17." />
                        </Object>
                    </Data>]]>
            </ImportDataResult>
        </ImportDataResponse>
    </s:Body>
</s:Envelope>

When the connector cannot be reached at all (i.e. when username or password is incorrect), the format of the error message will be as follows:

Status: 500 Internal Server Error

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/enveloper>
    <s:Body>
            <s:Fault>
            <faultcode>s:ImportData</faultcode>
            <faultstring xml:lang="nl-NL">Username or password incorrect, login failed.</faultstring>
            <detail>
                <ConnectorErrorMessage xmlns="http://schemas.datacontract.org/(...)>
                <Message>Username or password incorrect, login failed.</Message>
                </ConnectorErrorMessage>
            </detail>
        </s:Fault>
    </s:Body>
</s:Envelope>
PreviousHTTP POSTNextReservations

Last updated 3 years ago