Sigmify Stream API Document V0.1

API Connectivity :

Sigmify exposes services via HTTPS on port 443. Clients must support SSLv2 with HIGH strength

cipher suites as defined by the current general release version of the Apache HTTP Server*.
Clients should have an up-to-date CA Certificate registry supporting the “VeriSign Class 3
Secure Server CA – G3” signing certificate.

*http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslciphersuite

Encoding :

API requests and responses are encoded objects using the Javascript Object Notation (JSON) syntax. Requests must include a valid JSON MIME type “content type” HTTP Header. JSON responses will always include the ‘application/json’ content-type.

Acceptable JSON MIME Types for HTTP Content-Type:

  • application/json
  • application/x-javascript
  • text/javascript
  • text/x-javascript
  • text/x-json
  • text/json

 

Note:

  1. Objects with no properties may be denoted in JSON array syntax.
  2. Unless otherwise stated, null properties may be indicated with a JSON null or simply omitted.
  3. JSON Object properties may appear in any order.
  4. JSON examples in this document are often formatted for visibility, but in practice should contain minimum whitespace.
  5. Unless otherwise stated, all properties and values are case sensitive.
  6. If the HTTP request headers indicate compliance, the response body may optionally be gzip or deflate encoded.
  7. The encoding will be indicated in the “ContentEncoding” response header. All requests should be encoded in Unicode UTF-8. Responses will be presented in Unicode UTF-8.

 

Authentication for Webservices :

Authentication token is expected with each API request. Client needs to call getAuthToken service to get a valid token which can then be used in subsequent requests. Token will expire after 30 minutes.

Every subsequent request needs to pass the token with attribute name “authToken”.

Login request requires user and password parameters passed using HTTP POST method.

Example:

Request: https://www.sigmify.com/getAuthToken?user=jDoe@xyz.com&;password=pwd

Response:

{

“message”: “OK”,

“token”: “0b02008c-1a1c-46a0-a980-05f76b2a66ea”,

“userCode”: “jDoe@xyz.com”;,

“firstName”: “John”,

“lastName”: “Doe”

}

Error Response:

{

“message”: “Password is incorrect”,

“userCode”: “jDoe@xyz.com”;

}

Client should make no more than 3 attempts to retry a failed authentication.

Webservices for updating Sigmify Stream

After getting the token using the getAuthToken service, the sigmify stream can be updated using updateSigmifyStream API call.

This is a post service.The token generated is sent as a parameter to this post and the data to be updated is sent as a plain JSON string.

Example:

Request:

https://www.sigmify.com/updateSigmifyStream?authToken=<generated token>

JSON format:

{

“origin”: “External”,

“tenantId”: “XDFCGF”,

“processName”: “Leave Process”,

“processCode”: “CD001”,

“tranxNo”: “TR00000001”,

“messageId”: “MID000000001”,

“messageStatus”: “P”,

“messageDate”: “2015-03-14 15:20:36+05:30”,

“documentName”: “Approve Leaave”,

“docCode”: “DC00AT002”,

“docCodePrev”: ” DC00AT001″,

“docNo”: “DN00001002”,

“docNoPrev”: ” DN00001001″,

“subject1”: “employee name”,

“subject2”: “2015-03-01 “,

“subject3”: “Going out of station”,

“subject4”: “10 Days”,

“subject5”: “Approved by Supervisor”,

“link”: “http://www.abc.com/process/openNexDocument?id=”,

“attachmentExists”: “N”,

“attachmentUrl”: “http://www.abc.com/process/attachment?id=”,

” assignedToRoles”: “RoleCode1,RoleCode2″,

” assignedToUsers”: “user_code1, user_code2,user_code3”,

“completedBy”: “user_code1”,

“completedDate”: “2015-03-16 15:20:36”

}

Response:

{

“status”: “OK”,

“remarks”: “successfully updated”

}

Error Response:

{

“status”: “FAILED”,

“remarks”: “unable to update record”

}

Explanation of the JSON properties :

[table id=1 /]

*The third party will need to send the user and roles that are valid in Sigmify.