Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Some of methods requires "logonId" and "logonProvider" parameters to act as user's behalf. Logon provider specifies the registered open auth logon provider. If default emakin login system is used can be specified as "Organization". Depending on selected provider logon id can be changes, for example if you use active directory logon id can be specified as windows logon user.

Token generating login methods always returns tokens in registered API Key scope. 

Services

GetToken

Generates an authentication token to authorize users later. Generated token can be use to "auth" parameter to authorise users without login requirement.

...

RequestResponse


No Format
POST http://ertan.emakin.com/rest/getToken
 
{
     "apiKey": "xxxx",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization"
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
 
{"d":"41AA3CE3CAFB..............BF8114"}


GetTokenFromUserInfo

Generates an authentication token from user info. If user is not found and logon provider auto registration is enabled, user is automatically created and returns a authentication token for registered user, otherwise returns authentication token if user registered before.

Required Scope

login

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
userInfoUser information

Example Call

RequestResponse


No Format
POST http://ertan.emakin.com/rest/getTokenFromUserInfo
 
{
     "apiKey": "xxxx",
     "userInfo": {
     	"logonProvider": "LinkedIn",
        "id": "wcomx2h3jd",
        "name": "Ertan Tike",
        "email": "emakin@noreply.com",
     }
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
 
{"d":"41AA3CE3CAFB..............BF8114"}


...

Returns the list of work items on user's worklist. Tag parameter specifies the identifier of which list should be return.

Required Scope

worklist_read

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
logonIdUser logon id
logonProviderUser logon provider.
tagWorklist identifier. If set to null default inbox is returned.
startStart number of list. Use 0 to start from beginning.
maxLengthLimit of number of rows in list. Use -1 to get all rows.
queryXmlOptional query xml value. See Query for more details.

Example Call

RequestResponse


No Format
POST http://ertan.emakin.com/rest/getWorklist
 
{
     "apiKey": "xxxx",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization",
     "tag": null,
     "start": 0,
     "maxLength": 30,
     "queryXml" : ""
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
 
{
   "d":[
      {
         "Id":"e5134318-88bd-4a33-b561-4d78380734ce",
         "Caption":"A new task",
         "Start":"/Date(1445812020394)/",
         "End":null,
         "Instructions":"Please complete.",
         "State":"Waiting",
         "Number":12471
      },
      {
         "Id":"796a34c6-fd2e-450e-a2af-8124ea68f8ca",
         "Caption":"A new other task",
         "Start":"/Date(1445512843034)/",
         "End":null,
         "Instructions":"Please complete.",
         "State":"Waiting",
         "Number":12468
      }
   ]
}


...

Returns number of records in worklist. You can use this method to specify paging parameters in GetWorkList method.

Required Scope

worklist_read

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
logonIdUser logon id
logonProviderUser logon provider.
tagWorklist identifier. If set to null default inbox is returned.
queryXmlOptional query xml value. See Query for more details.

Example Call

RequestResponse


No Format
POST http://ertan.emakin.com/rest/getWorklistCount
 
{
     "apiKey": "xxxx",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization",
     "tag": null,
     "queryXml" : ""
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
 
{
   "d":50
}


...

Gets workitem information to display or complete with action.

Required Scope

worklist_read

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
logonIdUser logon id
logonProviderUser logon provider.
idWork item identifier.
readOnlySet true to fetch work item read only. Default is false.

Example Call

RequestResponse


No Format
POST http://ertan.emakin.com/rest/getWorkItem

{
     "apiKey": "xxxx",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization",
     "id": "e5134318-88bd-4a33-b561-4d78380734ce"
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
     "d": {
         "Id": "e5134318-88bd-4a33-b561-4d78380734ce",
         "Caption": "A new task",
         "Culture": "en-US",
         "Start": "/Date(1445812020394)/",
         "End": null,
         "DeadlineDate": null,
         "InstanceNumber": 12471,
         "IsReadOnly": false,
         "SelectedActionId": null,
         "Actions": [
             {
                 "Id": "2b0aa720-82f8-4a62-b7a1-2389203fa5e7",
                 "Name": "Complete",
                 "Color": "",
                 "BackgroundColor": "",
                 "Order": 1,
                 "Hidden" : false,
                 "RequireComment": false,
                 "ConfirmationMessage": "",
                 "ValidationGroup": ""
             },
             {
                 "Id": "c5350e5c-6e03-4b72-9522-49ab7f849b8a",
                 "Name": "Cancel",
                 "Color": "",
                 "BackgroundColor": "",
                 "Order": 2,
                 "Hidden" : false,
                 "RequireComment": true,
                 "ConfirmationMessage": "",
                 "ValidationGroup": ""
             }
         ]
     }
 }


...

Selects an action on a work item and returns array of next work item identifiers.

Required Scope

workitem_action

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
logonIdUser logon id
logonProviderUser logon provider.
idWork item identifier.
actionAction identifier.
data

XML data. Can be null. (There is no merge operation. Whole form data should be sent otherwise

the form data is replaced with the new data. The data can be retrieved by GetWorkItemData method.

The final data should be send inside of a form element. e.g. <form><Data>...</Data></form>)

commentsUser comments

Example Call

RequestResponse


No Format
POST http://ertan.emakin.com/rest/selectAction

{
     "apiKey": "xxxx",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization",
     "id": "e5134318-88bd-4a33-b561-4d78380734ce",
     "action": "c5350e5c-6e03-4b72-9522-49ab7f849b8a",
     "data": null
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
     "d": [ "716F8FCB-98C2-4591-8C43-043D54DEAADA" ]
}


...

Initiates a new process instance with specified parameters and returns the Id number of work item.

Required Scope

process_initiate

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
logonIdUser logon id
logonProviderUser logon provider.
processName or Id number of process
taskName or Id number of task
versionVersion number or id of process. Can be null.
dataXML data. Can be null.
cultureCulture preference. Can be null.

Example Call

RequestResponse


No Format
POST http://ertan.emakin.com/rest/initiateByProcess

{
     "apiKey": "xxxx",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization",
     "process": "e5134318-88bd-4a33-b561-4d78380734ce",
     "task": "c5350e5c-6e03-4b72-9522-49ab7f849b8a",
     "version": null,
     "data": "<pool><myField>ABC</myField></pool>",
     "culture": null
}



No Format
HTTP/1.1 200 OK

{
     "d": "716F8FCB-98C2-4591-8C43-043D54DEAADA"
}


...

Triggers an event for listeners on all processes and returns array of id number of triggered work items. When there is no listener return value is a empty array.

Required Scope

event_trigger

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
logonIdUser logon id
logonProviderUser logon provider.
eventNameName of event
testModeTrigger the test mode or not work items
inputDataEvent Data in XML can be null.
cultureCulture preference. Can be null.

Example Call

RequestResponse


No Format
POST http://ertan.emakin.com/rest/trigger

{
     "apiKey": "xxxx",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization",
     "eventName" : "myEvent",
     "inputData": "<pool><eventParameter>ABC</eventParameter></pool>",
     "testMode": false,
     "culture": null
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
     "d": ["716F8FCB-98C2-4591-8C43-043D54DEAADA"]
}


...

Returns the decision result.

Required Scope

decision_execute

Parameters

Parameter NameDescription
apiKeyCaller system identifier.
logonIdUser logon id
logonProviderUser logon provider.
processName or Id number of process
modelName or Id number of decision model
decisionName or Id number of decision
inputDataDecision input data. Xml or Json string.

Example Call

RequestResponse


No Format
POST https://ertan.emakin.com/rest/decision

{
     "apiKey": "",
     "logonId": "user@emakin.com",
     "logonProvider": "Organization",
     "process" : "Decision",
     "model" : "dinner",
     "decision" : "Dish",
     "inputData": "<pool><Season>Fall</Season><NumberOfGuests>2</NumberOfGuests></pool>"
}



No Format
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 26

{"d":{"Dish":"Spareribs"}}


...