The EService SOAP 3 API
The SOAP 3 API is an external interface which allows authorised users to directly connect their job management system to the ECONZ EService Job Management and Wireless Dispatch system. The interface allows jobs to be created, updated, dispatched, progressed and completed. In addition, it also allows for the creation and maintenance of customer, resource, and employee data.
To find out more about EService please visit http://www.eservice.econz.com To find out more about timecard please visit http://www.timecard.econz.com
There is also a EService SOAP FAQ to help new users get up to speed.
Best Practises
- The SOAP API is a request and response system, which means that while you can create new jobs, or update the details of an existing job, you will not receive notifications about the change of details to existing data on the service.
- To check for changes of state of a set of jobs, you must poll the server regularly for the summaries of the jobs you are interested in. See getJobSummaries.
- Polling should be performed no more than once per minute, to avoid over loading the server.
- Jobs where the status has changed can also be retrieved by using the getUnsynchronisedJobs and ackJobSynchronisation methods. Simply AckSynch the jobs you are interested in, and then get Unsynched Jobs. Each time the job is updated, it will also become unsynched, and thus be returned by the get unsynched method, with full details.
- The sync methods can also be used to store additional external data related to jobs, customers and resources. For example, this can be used to mark a specific job as having been invoiced by the external system.
- If realtime job status monitoring is required, Eservice does have the capability to call specific EService-definined functions on external web services, passing accross job status updates in real time. Please contact your local sales representative for further information.
The Interface Definition
Below are listed the various functions that make up the SOAP 3 API. Each function is called, passing in at least one parameter, a UserIDBean. This bean contains the user name and password of a previously registered EService User, with administrative rights. This ensures only authorised users are able to access the interface.
Please select a link to see documentation on each method's function and features.
Job Creation and Management Functions
Method |
Summary |
createJob |
Creates a new job based on the job data passed in. |
updateJob |
Updates an existing job, based on the data passed in. |
progressJobStatus |
Moves a job forwards through its logical state transitions. |
onHoldJob |
Places a started job on hold. |
resumeJob |
Resumes a job previously placed on hold. |
recallJob |
Recalls a job previously dispatched to a field worker. Optionally forces return even after the job has been started. |
confirmJobRecall |
Forces completion of the recall, even if the field worker has not confirmed job recall. |
cancelJob |
Cancels an existing job. |
dispatchJob |
Sends the job to the specified field worker. |
getJobSummary |
Retrieves a quick summary of the job, its status, and the customer details. |
getJobSummaries |
Retrieves a series of summaries of requested jobs, their status, and their customer details. |
getJobSummariesBetween |
Retrieves a series of summaries of requested jobs between two selected dates. |
getJobSummariesBetweenStatusAfterPK |
Retrieves a summary of every job who's status lies between status A and status B, inclusive and who's primary key lies after the passed key. |
getJobDetail |
Retrieves the full job details for the specified job. |
getJobDetails |
Retrieves the full job detail for each of the specified jobs. |
getJobDetailsBetween |
Retrieves the full job details for all jobs whose Event fell between the two specified dates. |
getJobDetailsByExternalRef |
Retrieves the full job details for the specified job whose external reference matches the passed in value. |
getJobAttributeNames |
Retrieves the list of all job custom attributes. |
getJobTypeNames |
Retrieves the list of all job types. |
getUnsynchronisedJobs |
Retrieves all jobs which have not previously been synchronised and acknowledged, and all jobs that have changed since their last synchronisation |
ackJobSynchronisation |
Acknowledges that synchronisation has been performed on the selected jobs. |
Customer Management Functions
EService User Management Functions
Method |
Summary |
createUser |
Creates a new user based on the user data passed in. |
getUserDetail |
Gets all the details of a specified user. |
updateUser |
Updates a particular user with new details. |
updateUserPassword |
Updates a user's password. |
deleteUser |
Deletes an existing user. |
getUnsynchronisedUsers |
Retrieves all users who have not previously been synchronised and acknowledged, and all users that have changed since their last synchronisation. |
ackUserSynchronisation |
Acknowledges that synchronisation has been performed on the selected users. |
EService Field Device Management Functions
Resource Management Functions
Callback Functions
Method |
Summary |
registerCallback |
Register an external interface as a interested receiver of callback events. |
unRegisterCallback |
Unregisters an external interface, and deletes all queued up events for that interface. |
getCallbackErrors |
Gets a list of all call back errors stored on the server. |
getVersion |
Gets the version of this SOAP Interface. |
Failure Objects
Method |
Summary |
AccessDeniedFailure |
Indicates the method was called within an invalid username or password. |
CallbackAlreadyRegisteredFailure |
An attempt has been made to register an instance of the callback interface which has already been registered on EService. |
CallbackNotRegisteredFailure |
An attempt has been made to unregister an instance of the callback interface which is not registered on EService. |
CustomerNotFoundFailure |
An attempt was made to update or modify a customer's details, but the primary key of the customer was not found on the server. |
CustomerPKMismatchFailure |
Indicates the JobCustomerbean contains a CustomerBean whose primary key does not match the Job's customer's primary key. |
ConcurrentUpdateFailure |
An attempt was made to update or change something on the server, but the update index passed in does not match the one in the record to be updated. |
FieldDeviceNotFoundFailure |
An attempt was made to reference a particular field device, but the primary key does not match any field devices located on the server. |
IllegalEscapeSequenceFailure |
Indicates that the escaped "wild card" values passed in were not valid for the method called. |
InvalidCallbackVersionFailure |
Indicates that the specified version of the callback interface instance, is not a valid CallbackVersion. |
JobNotFoundFailure |
An attempt was made to progress/update/modify a job, but the primary key or External ID was not found on the server. |
ResourceGroupExistsFailure |
An attempt was made to create a resource group which already exists on the server. |
ResourceGroupNotFoundFailure |
An attempt was made to modify or delete a resource group, but the name of the resource group was not found on the server. |
ResourceNotFoundFailure |
An attempt was made to update or modify a resource's details, but the name of the resource was not found on the server. |
TooManyFailure |
Indicates there are too many records to be returned, and includes the max number of records that can be returned. |
UnknownJobStatusProgressionFailure |
Indicates a invalid JobStatus field was passed in, please ensure you only use fields from this enumeration. |
UserNotFoundFailure |
An attempt was made to update or modify a user's details, but the primary key of the user was not found on the server. |
ValidationFailure |
A complex structure of nested arrays of errors, indicating data passed into a method did not match certain criteria for validation. |
Constants and Enumerated Values
Method |
Summary |
JobStatus |
The list of possible states a job may be in, or progressed to. |
JobStatusEvent |
The list of possible events that may occur, causing a job to change its state. |
ConcurrentUpdateSource |
The list of possible sources for a concurrency problem. |
CancelState |
The list of possible cancel states a job can be in. |
CallbackVersion |
The list of possible versions an external callback interface could implement. |
NADSWebserviceVersion |
The list of possible interface versions that can be used to comunicate with EService. |
SOAP 3 Example Code
This is series of examples showing the use of the EService SOAP API.
Further Help
This contains various contact details for people seeking further assistance in utilizing the SOAP Interface.