Working with iMIS SOA

iMIS includes an extensive set of data intensive applications, with hundreds of data object types. iMIS also supports user-defined data extensibility in several areas. To support this variety of data types in a consistent manner, and to keep the API manageable and consistent across all data types, iMIS SOA web services takes a simple, uniform approach with a basic set of available operations that can be performed over any available data types.

In the language of iMIS SOA web services, an instance of a business object (object, row in table, and so forth) is an Entity, and the type of business object is an Entity Type. For instance, common entity types in iMIS SOA web services include Party or Person, Event, Group, and so forth.

iMIS SOA web services provides a basic set of operations that can run against an entity or a collection of entities. These include the basic CRUD operations:

OperationUsing RESTUsing WCF
CreatePostAdd
ReadGet (query or find data)Find (by query)
UpdatePutUpdate
DeleteDeleteDelete

The iMIS SOA APIs provide the following additional operations:

  • Validate
  • Execute
  • FindByIdentity
  • FindMetaDataForEntity
  • FindChangeLogByIdentity

Depending on the programming environment, access to web service operations generally involves the following steps:

  • Get an instance to an object or proxy that represents the web service, with login credentials.
  • (optional) Create instances of objects, such as a query object, that include operation data you want to pass to the web service.
  • Call the web service, naming the entity type and required operation parameters.
  • When the call returns results (which is the usual case), examine the results of the operation.