SmartObject Runtime APIs and Services

This section describes the available APIs and Services that can be used to interact with SmartObjects at runtime.

Technology Available interfaces Typical use and additional notes
  .NET Assemblies
K2 client API .DLLs that you reference (such as HostClientApi.dll, SmartObject.Client.dll and the Workflow client API), are thread safe.
If you open a connection with the API, you should close and dispose of the connection object.
SourceCode.SmartObjects.Client Execute SmartObject methods from .NET code
SourceCode.Data.SmartObjectsClient ADO.NET Provider: execute SmartObject methods from technologies capable of consuming an ADO.NET data source
SourceCode.SmartObjects.Services.Management Exposes functions to manage deployed SmartObjects and manage Service Types, Service INstances and Service Brokers
OData API https://[servername]/api/odata/v3/[SmartObject] Call SmartObject List method from any technology capable of interacting with OData
The K2 SmartObject Service Tester utility, located at
"%PROGRAMFILES%\K2\Bin\SmartObject Service Tester.exe"
is an extremely valuable tool for developers who are writing code against SmartObjects.
You can use this utility to explore SmartObjects, generate code, test ADO queries, test SmartObjects and more. We encourage you to use the utility and become very familiar with it since it will help considerably when you are writing code against K2 SmartObjects.