Authentication

Sign In

Login a user with provided username and password.
POST /api/v2/sign-in

Headers

Name
Description
Content-Type
application/json

Request Details

Name
Description
email
Email of the user that logs in on the system.
password
Password of the user that logs in on the system.
Request

{
 "email": "devlin.monroe-n@alchemy.cloud",
 "password": " "
}

Description of usual responses

200 OK – User logged in successfully.
400 Bad Request – Invalid parameters supplied.

Response Details

Name
Description
accessToken
Hashed value that contains security credentials.
refreshToken
Hashed value that allows the user to get a new access token.
tenant
Tenant name to which the logged user belongs.
id
Id of the user that has logged in.
email
Email (username) of the logged user.
permissions
System permissions that the logged user has. Can be EXTERNAL_USER, USER, ADMIN
firstName
First name of the logged user.
lastName
Last name of the logged user.
canCreateAnyProcess
Permission if the user can create any process that exists in the system for the tenant.

Body of bad request

{
"timestamp": "2020-12-03T13:06:31.901+00:00",
"status": 400,
"error": "Bad Request",
"message": "Required request body is missing: public org
.springframework.http.ResponseEntity<> cloud.alchemy.core.web
.rest.AuthenticationApiResource.signIn(cloud.alchemy.core.api
.dto.authenticationapi.SignInRequest,org.springframework
.validation.Errors) throws java.sql.SQLException",
"path": "/api/v2/sign-in"
}
Response

{
   "accessToken": "eyJhbGciOiJILMiJ9...",
   "refreshToken": "eyJhbGciOiJIUzUx...",
   "tenant": "alchemy",
   "id": 2,
   "email": "devlin.monroe-n@alchemy.cloud",
   "permissions": [
       "USER",
       "EXTERNAL_USER"
   ],
   "firstName": "Devlin",
   "lastName": "Monroe",
   "canCreateAnyProcess": true
}

Refresh Token

Creates a new access token. When the access token expires, this api is called with the refresh token to get a new access token.
POST /api/v2/refresh-token

Headers

Name
Description
Content-Type
application/json

Request Details

Name
Description
refreshToken
Refresh token that is used to get a new access token when the original expires.
Request

{
 "refreshToken":   "eyJhbGciOiJIUzUxMiJ9.ey..."
}

Description of usual responses

200 OK – New refresh token retrieved successfully.
400 Bad Request – Invalid parameters supplied.
401 Unauthorized– Can be refresh token has expired, user doesn’t have appropriate access level. Also if the user doesn’t have email verified or has hashed password, but it isn’t external, will throw this exception.

Response Details

Name
Description
accessToken
Hashed value that contains security credentials.
refreshToken
Hashed value that allows the user to get a new access token.
tenant
Tenant name to which the logged user belongs.
id
Id of the user that has logged in.
email
Email (username) of the logged user.
permissions
System permissions that the logged user has. Can be EXTERNAL_USER, USER, ADMIN
firstName
First name of the logged user.
lastName
Last name of the logged user.
canCreateAnyProcess
Permission if the user can create any process that exists in the system for the tenant.

Body of bad request

{
"timestamp": "2020-12-03T18:07:20.223+00:00",
"status": 400,
"error": "Bad Request",
"message": "JSON parse error: Unrecognized field email, not marked as ignorable (one known property: "refreshToken"])
"path": "/api/refresh-token"
}
Response

{
   "accessToken": "eyJhbGciOiJILMiJ9...",
   "refreshToken": "eyJhbGciOiJIUzUx...",
   "tenant": "alchemy",
   "id": 2,
   "email": "devlin.monroe-n@alchemy.cloud",
   "permissions": [
       "USER",
       "EXTERNAL_USER"
   ],
   "firstName": "Devlin",
   "lastName": "Monroe",
   "canCreateAnyProcess": true,
   "smallAvatarUrl": null,
   "mediumAvatarUrl": null,
   "largeAvatarUrl": null
}

Process

Create Process

Creates a process from the provided template and populates it with the supplied parameters.
POST /api/v2/create-process

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

Name
Description
identifier
The unique identifier of the process template.
properties
List of field identifiers and their values.(description below)
Fields of single properties object
Description
identifier
The unique identifier of the process template.
values (optional)
List of values that the field should be populated with.
Fields of single values object
Description
value
The value that the field should be populated with. It should be sent in the native type of the value, e.g. text should be contained within quotation marks, decimal numbers should use JSON notation etc.
valuePreview (optional)
The preview value for the fields that can have a separate preview (e.g. link can have a preview text of ‘link’ with actual value being ‘www.google.com’).
row
Row in which the field value is contained.
indexInRow
Index of value in the cell where the value is contained.
Request

{
 "identifier": "CustomerCall",
 "properties": [
   {
     "identifier": "Name",
     "values": [
       {
         "value": "Customer call title",
         "valuePreview": "",
         "row": 0,
         "indexInRow": 0
       }
     ]
   }
 ]
}

Description of usual responses

200 OK – Process data returned successfully.
400 Bad Request – Invalid parameters supplied.
401 Unauthorized – User is unauthorized to do this action.

Response Details

Name
Description
id
The unique id of the created process.
name (optional)
The name of the created process.
status
Status of created process. Can be in progress, on hold, void, and completed.
priority (optional)
Priority of the created process.
createdBy
User info of the user that created the process. (description below)
createdOn
Date and time when the process was created.
completedOn (optional)
Date and time when the process was completed.
completedBy (optional)
User info of the user that completed the process. (description below)
currentStage (optional)
Name of the stage that the process is currently in.
stages (optional)
List of the stages that this process contains, populated with records and tasks associated with it. (description below)
Fields of createdBy and completedBy object
Description
id
The unique id of the user.
firstName
First name of the user.
lastName
Last name of the user.
email
Email of the user.
Fields of single stages object
Description
identifier
The unique identifier of the stage.
records (optional)
List of records that stage contains. (description below)
tasks (optional)
List of tasks that stage contains. (description below)
Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single tasks object
Description
id
The unique id of the task.
subject (optional)
Subject of the task.
description (optional)
Description of the task.
taskState
Current task state. Can be none, pending or overdue.
plannedStart
Date and time of the planned start of the task.
completionTarget
Completion target date and time of the task.
startedOn (optional)
Starting date and time of the task.
completedOn (optional)
Completion date and time of the task.
score (optional)
Score of the task.
assigneesId (optional)
List of user ids that are assigned to the task.
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Body of bad request

{
"timestamp": "2020-11-09T12:17:36.508+00:00",
"status": 400,
"error": "Bad Request",
"message": "JSON parse error: Unrecognized field \"index\"",
"path": "/api/v2/create-process"
}

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "INSUFFICIENT_PROCESS_PRIVILEGES",
"path": "/api/v2/create-process"
}
Response

{
 "id": 310,
 "name": "Customer call title",
 "status": "IN_PROGRESS",
 "priority": 5,
 "createdBy": {
   "id": 4,
   "firstName": "John",
   "lastName": "Doe",
   "email": "john.doe@alchemy.cloud"
 },
 "createdOn": "2020-11-09T12:34:40.299487Z",
 "completedOn": null,
 "completedBy": null,
 "currentStage": "Call Log",
 "stages": [
   {
     "identifier": "CallLog",
     "records": [
       {
         "recordId": 1414,
         "name": "Customer call title",
         "createdById": null,
         "createdOn": "2020-11-09T12:34:40.711371Z",
         "errorInfo": [],
         "fieldGroups": [],
         "fields": [
           {
             "identifier": "Company",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": {
                   "errorCode": "REQUIRED_FIELD_NOT_SET",
                   "errorMessage": "Companyin record Customer call title of type Call Log is required."
                 }
               }
             ]
           },
           {
             "identifier": "Contact",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": {
                   "errorCode": "REQUIRED_FIELD_NOT_SET",
                   "errorMessage": "Contactin record Customer call title of type Call Log is required."
                 }
               }
             ]
           },
           {
             "identifier": "Agenda",
             "values": [
               {
                 "value": "",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "Notes",
             "values": [
               {
                 "value": "",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "NextSteps",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "Name",
             "values": [
               {
                 "value": "Customer call title",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "InternalAttendees",
             "values": [
               {
                 "value": {
                   "firstName": "Devlin",
                   "lastName": "Monroe",
                   "email": "devlin.monroe-n@alchemy.cloud"
                 },
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "RelatedTo",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           }
         ]
       }
     ],
     "tasks": []
   }
 ]
}

Read Process

Read the complete status of a process for the provided process id.
GET /api/v2/read-process

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Query parameters

- Request sent as a parameter

Name
Description
id
Provided id of the process.

Description of usual responses

200 OK – Process data returned successfully.
401 Unauthorized – User is unauthorized to do this action.

Response Details

Name
Description
id
The unique id of the created process.
name (optional)
The name of the created process.
status
Status of created process. Can be in progress, on hold, void, and completed.
priority (optional)
Priority of the created process.
createdBy
User info of the user that created the process. (description below)
createdOn
Date and time when the process was created.
completedOn (optional)
Date and time when the process was completed.
completedBy (optional)
User info of the user that completed the process. (description below)
currentStage (optional)
Name of the stage that the process is currently in.
stages (optional)
List of the stages that this process contains, populated with records and tasks associated with it. (description below)
Fields of createdBy and completedBy object
Description
id
The unique id of the user.
firstName
First name of the user.
lastName
Last name of the user.
email
Email of the user.
Fields of single stages object
Description
identifier
The unique identifier of the field template.
records (optional)
List of records that stage contains. (description below)
tasks (optional)
List of tasks that stage contains. (description below)
Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single tasks object
Description
id
The unique id of the task.
subject (optional)
Subject of the task.
description (optional)
Description of the task.
taskState
Current task state. Can be none, pending or overdue.
plannedStart
Date and time of the planned start of the task.
completionTarget
Completion target date and time of the task.
startedOn (optional)
Starting date and time of the task.
completedOn (optional)
Completion date and time of the task.
score (optional)
Score of the task.
assigneesId (optional)
List of user ids that are assigned to the task.
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "INSUFFICIENT_PROCESS_PRIVILEGES",
"path": "/api/v2/read-process"
}
Response

{
 "id": 263,
 "name": "Call Log -  14-Aug-2020",
 "status": "VOID",
 "priority": null,
 "createdBy": {
   "id": 4,
   "firstName": "John",
   "lastName": "Doe",
   "email": "john.doe@alchemy.cloud"
 },
 "createdOn": "2020-08-14T14:16:35Z",
 "completedOn": null,
 "completedBy": null,
 "currentStage": "Voided",
 "stages": [
   {
     "identifier": "CallLog",
     "records": [
       {
         "recordId": 1205,
         "name": "Call Log -  14-Aug-2020",
         "createdById": null,
         "createdOn": "2020-08-14T14:16:35Z",
         "errorInfo": [],
         "fieldGroups": [],
         "fields": [
           {
             "identifier": "Company",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": {
                   "errorCode": "REQUIRED_FIELD_NOT_SET",
                   "errorMessage": "Companyin record Call Log -  14-Aug-2020 of type Call Log is required."
                 }
               }
             ]
           },
           {
             "identifier": "RelatedTo",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "Notes",
             "values": [
               {
                 "value": "",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "NextSteps",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "Contact",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": {
                   "errorCode": "REQUIRED_FIELD_NOT_SET",
                   "errorMessage": "Contactin record Call Log -  14-Aug-2020 of type Call Log is required."
                 }
               }
             ]
           },
           {
             "identifier": "Agenda",
             "values": [
               {
                 "value": "",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "InternalAttendees",
             "values": [
               {
                 "value": {
                   "firstName": "Beth",
                   "lastName": "Cooper",
                   "email": "beth.cooper-n@alchemy.cloud"
                 },
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "Name",
             "values": [
               {
                 "value": "Call Log -  14-Aug-2020",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           }
         ]
       }
     ],
     "tasks": [
       {
         "id": 476,
         "subject": "Fill in the information from the Customer Call",
         "description": " ",
         "taskState": "NONE",
         "plannedStart": "2020-08-14T14:16:35Z",
         "completionTarget": "2020-08-14T22:16:35Z",
         "startedOn": null,
         "completedOn": "2020-08-14T14:17:21Z",
         "score": null,
         "assigneesId": []
       }
     ]
   }
 ]
}

Complete Stage

Completes the stage for provided process id and stage identifier.
PUT /api/v2/complete-stage

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a single object

Name
Description
processId
The unique id of process.
stage
The unique identifier of the stage template. (optional)
Request

{
"processId": 37,
"stage": "Request"
}

Description of usual responses

200 OK – Process data returned successfully.
400 Bad Request – Invalid parameters supplied.
401 Unauthorized – User is unauthorized to do this action.

Response Details

Name
Description
id
The unique id of the created process.
name (optional)
The name of the created process.
status
Status of created process. Can be in progress, on hold, void, and completed.
priority (optional)
Priority of the created process.
createdBy
User info of the user that created the process. (description below)
createdOn
Date and time when the process was created.
completedOn (optional)
Date and time when the process was completed.
completedBy (optional)
User info of the user that completed the process. (description below)
currentStage (optional)
Name of the stage that the process is currently in.
stages (optional)
List of the stages that this process contains, populated with records and tasks associated with it. (description below)
Fields of createdBy and completedBy object
Description
id
The unique id of the user.
firstName
First name of the user.
lastName
Last name of the user.
email
Email of the user.
Fields of single stages object
Description
identifier
The unique identifier of the field template.
records (optional)
List of records that stage contains. (description below)
tasks (optional)
List of tasks that stage contains. (description below)
Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single tasks object
Description
id
The unique id of the task.
subject (optional)
Subject of the task.
description (optional)
Description of the task.
taskState
Current task state. Can be none, pending or overdue.
plannedStart
Date and time of the planned start of the task.
completionTarget
Completion target date and time of the task.
startedOn (optional)
Starting date and time of the task.
completedOn (optional)
Completion date and time of the task.
score (optional)
Score of the task.
assigneesId (optional)
List of user ids that are assigned to the task.
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Bad request response body

{
"timestamp": "2020-11-09T13:04:11.645+00:00",
"status": 400,
"error": "Bad Request",
"message": "INVALID_PROCESS_STATUS",
"path": "/api/v2/complete-stage"
}

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "INSUFFICIENT_PROCESS_PRIVILEGES",
"path": "/api/v2/complete-stage"
}
Response

{
 "id": 37,
 "name": "QC LW-01-2020-001",
 "status": "IN_PROGRESS",
 "priority": 1,
 "createdById": 2,
 "createdOn": "2020-01-28T15:18:21Z",
 "completedOn": null,
 "completedById": null,
 "currentStage": "",
 "stages": [
   {
     "identifier": "Request",
     "records": [
       {
         "recordId": 208,
         "name": "Request QC LW-01-2020-001",
         "createdById": null,
         "createdOn": "2020-01-28T15:18:21Z",
         "errorInfo": [],
         "fieldGroups": [],
         "fields": [
           {
             "identifier": "RelatedtoComplaint",
             "values": []
           },
           {
             "identifier": "ProductType",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": {
                   "errorCode": "REQUIRED_FIELD_NOT_SET",
                   "errorMessage": "Product Typein record Request QC LW-01-2020-001 of type QC Request is required."
                 }
               }
             ]
           },
           {
             "identifier": "Date",
             "values": [
               {
                 "value": "2020-01-28T15:18:21Z[UTC]",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "RequestedBy",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "RelatedtoOpportunity",
             "values": []
           },
           {
             "identifier": "FromCustomer",
             "values": []
           },
           {
             "identifier": "AssignLabWorkTo",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": {
                   "errorCode": "REQUIRED_FIELD_NOT_SET",
                   "errorMessage": "Assign Lab Work Toin record Request QC LW-01-2020-001 of type QC Request is required."
                 }
               }
             ]
           },
           {
             "identifier": "SampleType",
             "values": [
               {
                 "value": null,
                 "row": 0,
                 "index": 0,
                 "errorInfo": {
                   "errorCode": "REQUIRED_FIELD_NOT_SET",
                   "errorMessage": "Sample Typein record Request QC LW-01-2020-001 of type QC Request is required."
                 }
               }
             ]
           },
           {
             "identifier": "WorkRequestDetails",
             "values": [
               {
                 "value": "",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "CompetitiveMaterial",
             "values": []
           },
           {
             "identifier": "Competitor",
             "values": []
           },
           {
             "identifier": "MainCustomer",
             "values": []
           },
           {
             "identifier": "RequestNumber",
             "values": [
               {
                 "value": "LW-01-2020-001",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           },
           {
             "identifier": "Name",
             "values": [
               {
                 "value": "QC LW-01-2020-001",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           }
         ]
       }
     ],
     "tasks": [
       {
         "id": 53,
         "subject": "Submit a request for the QC work",
         "description": "",
         "taskState": "OVERDUE",
         "plannedStart": "2020-01-28T15:18:21Z",
         "completionTarget": "2020-01-28T17:18:21Z",
         "startedOn": null,
         "completedOn": null,
         "score": null,
         "assigneesId": []
       },
       {
         "id": 54,
         "subject": "Test",
         "description": "",
         "taskState": "OVERDUE",
         "plannedStart": "2020-01-28T15:18:21Z",
         "completionTarget": "2020-01-28T17:18:21Z",
         "startedOn": null,
         "completedOn": null,
         "score": null,
         "assigneesId": []
       }
     ]
   }
 ]
}

Complete Task

Completes a task for provided task id.
PUT /api/v2/complete-task

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a single object

Name
Description
id
Provided id of the task.
Request

{
  "id": "150"
}

Description of usual responses

200 OK – Task completed successfully.
400 Bad Request – Invalid parameters supplied.
401 Unauthorized – User is unauthorized to do this action.

Response Details

Name
Description
id
The unique id of the created process.
name (optional)
The name of the created process.
status
Status of created process. Can be in progress, on hold, void, and completed.
priority (optional)
Priority of the created process.
createdBy
User info of the user that created the process. (description below)
createdOn
Date and time when the process was created.
completedOn (optional)
Date and time when the process was completed.
completedBy (optional)
User info of the user that completed the process. (description below)
currentStage (optional)
Name of the stage that the process is currently in.
stages (optional)
List of the stages that this process contains, populated with records and tasks associated with it. (description below)
Fields of createdBy and completedBy object
Description
id
The unique id of the user.
firstName
First name of the user.
lastName
Last name of the user.
email
Email of the user.
Fields of single stages object
Description
identifier
The unique identifier of the field template.
records (optional)
List of records that stage contains. (description below)
tasks (optional)
List of tasks that stage contains. (description below)
Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single tasks object
Description
id
The unique id of the task.
subject (optional)
Subject of the task.
description (optional)
Description of the task.
taskState
Current task state. Can be none, pending or overdue.
plannedStart
Date and time of the planned start of the task.
completionTarget
Completion target date and time of the task.
startedOn (optional)
Starting date and time of the task.
completedOn (optional)
Completion date and time of the task.
score (optional)
Score of the task.
assigneesId (optional)
List of user ids that are assigned to the task.
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Bad request response body

{
 "timestamp": "2020-12-08T13:23:11.262+00:00",
 "status": 400,
 "error": "Bad Request",
 "message": "Task with id: 999999 does not exist.",
 "path": "/api/v2/complete-task"
}
{
 "timestamp": "2020-12-08T13:24:17.823+00:00",
 "status": 400,
 "error": "Bad Request",
 "message": "JSON parse error: Unrecognized field \"ids\"...)",
 "path": "/api/v2/complete-task"
}
{
 "timestamp": "2020-12-08T13:25:32.650+00:00",
 "status": 400,
 "error": "Bad Request",
 "message": "INVALID_STAGE_STATE",
 "path": "/api/v2/complete-task"
}

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/complete-task
}
{
 "timestamp": "2020-12-08T13:26:41.794+00:00",
 "status": 401,
 "error": "Unauthorized",
 "message": "INSUFFICIENT_STAGE_PRIVILEGES",
 "path": "/api/v2/complete-task"
}
Response

{
 "id": 315,
 "name": "Untitled",
 "status": "IN_PROGRESS",
 "priority": 12,
 "createdBy": {
   "id": 2,
   "firstName": "Devlin",
   "lastName": "Monroe",
   "email": "devlin.monroe-n@alchemy.cloud"
 },
 "createdOn": "2020-12-08T13:28:49Z",
 "completedOn": null,
 "completedBy": null,
 "currentStage": "Data Point",
 "stages": [
   {
     "identifier": "DataPoint",
     "records": [
       {
         "recordId": 1423,
         "name": "Untitled",
         "createdById": null,
         "createdOn": "2020-12-08T13:28:51Z",
         "errorInfo": [],
         "fieldGroups": [],
         "fields": [
           {
             "identifier": "Name",
             "values": [
               {
                 "value": "Untitled",
                 "row": 0,
                 "index": 0,
                 "errorInfo": null
               }
             ]
           }
         ]
       }
     ],
     "tasks": [
       {
         "id": 568,
         "subject": "Fill in the Data Point",
         "description": "Task for company info.",
         "taskState": "NONE",
         "plannedStart": "2020-12-08T13:28:50Z",
         "completionTarget": "2020-12-08T21:28:50Z",
         "startedOn": null,
         "completedOn": "2020-12-08T13:30:30Z",
         "score": 5,
         "assigneesId": []
       }
     ]
   }
 ]
}

Record

Create Record

Creates records of specific record templates in provided processes.
POST /api/v2/create-record

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a list of objects

Name
Description
processId
The unique id of process.
recordTemplate
The unique identifier of the record template.
Request

[
 {
   "processId": 314,
   "recordTemplate": "Material"
 }
]

Description of usual responses

200 OK – Record created successfully.
400 Bad Request – Invalid parameters supplied.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/create-record"
}
Response

[
 {
   "recordId": 1422,
   "name": "Enter Material Name",
   "createdById": 3,
   "createdOn": "2020-11-09T13:47:24.639954Z",
   "errorInfo": [
     {
       "errorCode": "RECORD_NAME_NOT_UNIQUE",
       "errorMessage": "Record name for record Enter Material Name of type Material is not unique in system."
     }
   ],
   "fieldGroups": [
     {
       "identifier": "Group8",
       "fields": [
         {
           "identifier": "SolidsPercent",
           "values": [
             {
               "value": null,
               "row": 0,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "Density",
           "values": [
             {
               "value": null,
               "row": 0,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "Viscosity",
           "values": [
             {
               "value": null,
               "row": 0,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "pH",
           "values": [
             {
               "value": null,
               "row": 0,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "EvaporationRate",
           "values": []
         },
         {
           "identifier": "BoilingPoint",
           "values": []
         }
       ]
     },
     {
       "identifier": "Group3",
       "fields": []
     },
     {
       "identifier": "Group2",
       "fields": [
         {
           "identifier": "Weight",
           "values": []
         },
         {
           "identifier": "Material",
           "values": []
         }
       ]
     },
     {
       "identifier": "Group5",
       "fields": []
     },
     {
       "identifier": "Group4",
       "fields": [
         {
           "identifier": "AmountUsed",
           "values": []
         },
         {
           "identifier": "Formulation",
           "values": []
         }
       ]
     },
     {
       "identifier": "Group6",
       "fields": []
     },
     {
       "identifier": "Group7",
       "fields": [
         {
           "identifier": "ReceptionDate",
           "values": []
         },
         {
           "identifier": "AmountReceived",
           "values": []
         }
       ]
     }
   ],
   "fields": [
     {
       "identifier": "Item",
       "values": []
     },
     {
       "identifier": "Code",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Type",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "TDS",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "SDS",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "MaterialName",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "SolventType",
       "values": []
     },
     {
       "identifier": "TotalMaterialInput",
       "values": [
         {
           "value": 0,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "TotalMaterialOutput",
       "values": [
         {
           "value": 0,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "MaterialonStock",
       "values": [
         {
           "value": 0,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "LOTnumber",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Supplier",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 }
]

Update Record

Updates a record with provided record id and supplied parameters.
PUT /api/v2/update-record

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a list of objects

Name
Description
recordId
The unique id of the record.
fields
List of fields that need to be updated. (description below)
Fields of single fields object
Description
recordId
The unique identifier of the field template.
values
List of values to be updated on field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
Request

{
 "recordId": 1422,
 "fields": [
   {
     "identifier": "SolidsPercent",
     "values": [
       {
         "value": "10",
         "row": 0,
         "index": 0
       }
     ]
   },
   {
     "identifier": "Density",
     "values": [
       {
         "value": "15",
         "row": 0,
         "index": 0
       }
     ]
   }
 ]
}

Description of usual responses

200 OK – Process data returned successfully.
400 Bad Request – Invalid parameters supplied.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "INSUFFICIENT_PROCESS_PRIVILEGES",
"path": "/api/v2/update-record"
}
Response

[
 {
   "recordId": 1422,
   "name": "Enter Material Name",
   "createdById": 3,
   "createdOn": "2020-11-09T13:47:25Z",
   "errorInfo": [
     {
       "errorCode": "RECORD_NAME_NOT_UNIQUE",
       "errorMessage": "Record name for record Enter Material Name of type Material is not unique in system."
     }
   ],
   "fieldGroups": [
     {
       "identifier": "Group8",
       "fields": [
         {
           "identifier": "SolidsPercent",
           "values": [
             {
               "value": 10,
               "row": 0,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "Density",
           "values": [
             {
               "value": 15,
               "row": 0,
               "index": 0,
               "errorInfo": null
             }
           ]
         }
       ]
     }
   ],
   "fields": [
     {
       "identifier": "Item",
       "values": []
     },
     {
       "identifier": "Code",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 }
]

Add Rows

Add rows to the list of provided field group identifiers.
PUT /api/v2/add-rows

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a list of objects

Name
Description
recordId
The unique id of the record.
fieldGroupIdentifier
The unique identifier of the field group.
numberOfRowsToAdd
Number of rows to add to the field group.
Request

[
 {
   "recordId": 1422,
   "fieldGroupIdentifier": "Group8",
   "numberOfRowsToAdd": 2
 },
 {
   "recordId": 1422,
   "fieldGroupIdentifier": "Group4",
   "numberOfRowsToAdd": 5
 }
]

Description of usual responses

200 OK – Process data returned successfully.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/add-rows"
}
Response

[
 {
   "recordId": 1422,
   "name": "Enter Material Name",
   "createdById": 3,
   "createdOn": "2020-11-09T13:47:25Z",
   "errorInfo": [
     {
       "errorCode": "RECORD_NAME_NOT_UNIQUE",
       "errorMessage": "Record name for record Enter Material Name of type Material is not unique in system."
     }
   ],
   "fieldGroups": [
     {
       "identifier": "Group8",
       "fields": [
         {
           "identifier": "SolidsPercent",
           "values": [
             {
               "value": 10,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": 20,
               "row": 1,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": 30,
               "row": 2,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "Density",
           "values": [
             {
               "value": 15,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": 25,
               "row": 1,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": 35,
               "row": 2,
               "index": 0,
               "errorInfo": null
             }
           ]
         }
       ]
     },
     {
       "identifier": "Group4",
       "fields": [
         {
           "identifier": "AmountUsed",
           "values": [
             {
               "value": null,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 1,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 2,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 3,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 4,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "Formulation",
           "values": [
             {
               "value": null,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 1,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 2,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 3,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 4,
               "index": 0,
               "errorInfo": null
             }
           ]
         }
       ]
     }
   ],
   "fields": [
     {
       "identifier": "SDS",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "MaterialName",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 }
]

Delete Rows

Deletes rows from the list of provided field groups.
PUT /api/v2/delete-rows

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a list of objects

Name
Description
recordId
The unique id of the record.
fieldGroupIdentifier
The unique identifier of the field group.
rowsToDelete
Index of the rows to delete from the field group. Index is zero-based.
Request

[
 {
   "recordId": 1422,
   "fieldGroupIdentifier": "Group8",
   "rowsToDelete": [
     2,
     3
   ]
 }
]

Description of usual responses

200 OK – Process data returned successfully.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field group.
fields
List of fields that are a part of a field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "INSUFFICIENT_STAGE_PRIVILEGES",
"path": "/api/v2/delete-rows"
}
Response

[
 {
   "recordId": 1422,
   "name": "Enter Material Name",
   "createdById": 3,
   "createdOn": "2020-11-09T13:47:25Z",
   "errorInfo": [
     {
       "errorCode": "RECORD_NAME_NOT_UNIQUE",
       "errorMessage": "Record name for record Enter Material Name of type Material is not unique in system."
     }
   ],
   "fieldGroups": [
     {
       "identifier": "Group8",
       "fields": [
         {
           "identifier": "SolidsPercent",
           "values": [
             {
               "value": 10,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 1,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "Density",
           "values": [
             {
               "value": 15,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 1,
               "index": 0,
               "errorInfo": null
             }
           ]
         },
         {
           "identifier": "Viscosity",
           "values": [
             {
               "value": null,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": null,
               "row": 1,
               "index": 0,
               "errorInfo": null
             }
           ]
         }
       ]
     }
   ],
   "fields": [
     {
       "identifier": "Item",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         },
         {
           "value": null,
           "row": 1,
           "index": 0,
           "errorInfo": null
         },
         {
           "value": null,
           "row": 2,
           "index": 0,
           "errorInfo": null
         },
         {
           "value": null,
           "row": 3,
           "index": 0,
           "errorInfo": null
         },
         {
           "value": null,
           "row": 4,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Code",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Type",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 }
]

Clone Rows

Clones rows for the list of provided field groups in specific records.
PUT /api/v2/clone-rows

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a list of objects

Name
Description
recordId
The unique id of the record.
fieldGroupIdentifier
The unique identifier of the field group.
rowsToClone
Row numbers to clone in field group.
Request

[
 {
   "recordId": 990,
   "fieldGroupIdentifier": "Group3",
   "rowsToClone": [
     0
   ]
 }
]

Description of usual responses

200 OK – Process data returned successfully.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of the field template.
fields
List of values for the field. (description below)
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/clone-rows"
}
Response

[
 {
   "recordId": 990,
   "name": "Regulatory Review for New Material X 35",
   "createdById": null,
   "createdOn": "2020-06-19T09:26:00Z",
   "errorInfo": [],
   "fieldGroups": [
     {
       "identifier": "Group3",
       "fields": [
         {
           "identifier": "SARA302",
           "values": [
             {
               "value": false,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": false,
               "row": 1,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": true,
               "row": 2,
               "index": 0,
               "errorInfo": null
             }
           ]
         }
       ]
     }
   ],
   "fields": [
     {
       "identifier": "TSCA12",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 }
]

Reorder Rows

Reorders rows in the list of provided field groups in specific records.
PUT /api/v2/reorder-rows

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a list of objects

Name
Description
recordId
The unique id of the record.
fieldGroupIdentifier
The unique identifier of the field group.
sourceRow
Source row that is going to be reordered in field group.
targetRow
Target row that is going to switch place with source row in field group.
Request

[
 {
   "recordId": 990,
   "fieldGroupIdentifier": "Group3",
   "sourceRow": 0,
   "targetRow": 1
 }
]

Description of usual responses

200 OK – Process data returned successfully.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of field group.
fields
List of fields that are a part of field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/reorder-rows"
}
Response

[
 {
   "recordId": 990,
   "name": "Regulatory Review for New Material X 35",
   "createdById": null,
   "createdOn": "2020-06-19T09:26:00Z",
   "errorInfo": [],
   "fieldGroups": [
     {
       "identifier": "Group3",
       "fields": [
         {
           "identifier": "SARA302",
           "values": [
             {
               "value": false,
               "row": 0,
               "index": 0,
               "errorInfo": null
             },
             {
               "value": true,
               "row": 1,
               "index": 0,
               "errorInfo": null
             }
           ]
         }
       ]
     }
   ],
   "fields": [
     {
       "identifier": "TSCA12",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 }
]

Read Record

Read the complete status of the record for the provided record id.
PUT /api/v2/read-record

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Query parameters

- Request sent as a parameter

Name
Description
id
Provided id of the record.
Request

Description of usual responses

200 OK – Record data retrieved successfully.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of field group.
fields
List of fields that are a part of field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/reorder-rows"
}
Response

{
 "recordId": 990,
 "name": "Regulatory Review for New Material X 35",
 "createdById": null,
 "createdOn": "2020-06-19T09:26:00Z",
 "errorInfo": [],
 "fieldGroups": [
   {
     "identifier": "Group1",
     "fields": [
       {
         "identifier": "Fire",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "Pressure",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "Reactive",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "NA",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "Acute",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "Chronic",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           }
         ]
       }
     ]
   },
   {
     "identifier": "Group3",
     "fields": [
       {
         "identifier": "SARA304",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 1,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 2,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "SARA313",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 1,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 2,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "Prop65Cancer",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 1,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 2,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "Prop65Repro",
         "values": [
           {
             "value": false,
             "row": 0,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 1,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": false,
             "row": 2,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "ChemicalName",
         "values": [
           {
             "value": null,
             "row": 0,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": null,
             "row": 1,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": null,
             "row": 2,
             "index": 0,
             "errorInfo": null
           }
         ]
       },
       {
         "identifier": "WT",
         "values": [
           {
             "value": null,
             "row": 0,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": null,
             "row": 1,
             "index": 0,
             "errorInfo": null
           },
           {
             "value": null,
             "row": 2,
             "index": 0,
             "errorInfo": null
           }
         ]
       }
     ]
   }
 ],
 "fields": [
   {
     "identifier": "TSCA12",
     "values": [
       {
         "value": null,
         "row": 0,
         "index": 0,
         "errorInfo": null
       }
     ]
   },
   {
     "identifier": "TSCA8",
     "values": [
       {
         "value": null,
         "row": 0,
         "index": 0,
         "errorInfo": null
       }
     ]
   },
   {
     "identifier": "HAPSChem",
     "values": [
       {
         "value": null,
         "row": 0,
         "index": 0,
         "errorInfo": null
       }
     ]
   },
   {
     "identifier": "TSCA12BThreshold",
     "values": [
       {
         "value": null,
         "row": 0,
         "index": 0,
         "errorInfo": null
       }
     ]
   },
   {
     "identifier": "REACHRegistered",
     "values": [
       {
         "value": null,
         "row": 0,
         "index": 0,
         "errorInfo": null
       }
     ]
   },
   {
     "identifier": "MaterialApproved",
     "values": [
       {
         "value": true,
         "row": 0,
         "index": 0,
         "errorInfo": null
       }
     ]
   },
   {
     "identifier": "Reasons",
     "values": []
   }
 ]
}

Find records by unique id

Reads the complete status of single or multiple records that contain provided record template id and record unique id (record name). If record template id is not present, use only record unique id.
GET /api/v2/find-records-by-unique-id

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Query parameters

- Request sent as a parameter

Name
Description
uniqueId
Provided unique id (record name) of the record.
recordTemplateIdentifier (optional)
Provided record template identifier of the record.
Request

Description of usual responses

200 OK – Record data retrieved successfully.
400 Bad Request - Invalid parameters supplied.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single records object
Description
recordId
The unique id of record.
name
Name of the record.
createdById
Id of the user that created the record.
createdOn
Date and time of record creation.
errorInfo (optional)
List of errors that occurred on record. (description below)
fieldGroups (optional)
List of field groups that record contains. (description below)
fields (optional)
List of fields that record contains, that don’t belong to any field group. (description below)
Fields of single errorInfo object
Description
errorCode
Error code.
errorMessage
Error message.
Fields of single fieldGroups object
Description
identifier
The unique identifier of field group.
fields
List of fields that are a part of field group.
Fields of single fields object
Description
identifier
The unique identifier of the field template.
values
List of values for the field. (description below)
Fields of single values object
Description
value
Value of the field in the given row and index.
row
Row in which the field value is contained.
index
Index in the cell where the field value is contained.
errorInfo (optional)
Error data for field value, if any error exists.

Bad request response body

{
"timestamp": "2020-12-08T09:58:58.568+00:00",
"status": 400,
"error": "Bad Request",
"message": "Required String parameter 'uniqueId' is not present",
"path": "/api/v2/find-records-by-unique-id"
}

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/find-records-by-unique-id
}
Response

[
 {
   "recordId": 1414,
   "name": "Customer call title",
   "createdById": null,
   "createdOn": "2020-11-09T12:34:41Z",
   "errorInfo": [],
   "fieldGroups": [],
   "fields": [
     {
       "identifier": "Company",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": {
             "errorCode": "REQUIRED_FIELD_NOT_SET",
             "errorMessage": "Companyin record Customer call title of type Call Log is required."
           }
         }
       ]
     },
     {
       "identifier": "Contact",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": {
             "errorCode": "REQUIRED_FIELD_NOT_SET",
             "errorMessage": "Contactin record Customer call title of type Call Log is required."
           }
         }
       ]
     },
     {
       "identifier": "Agenda",
       "values": [
         {
           "value": "",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Notes",
       "values": [
         {
           "value": "",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "NextSteps",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Name",
       "values": [
         {
           "value": "Customer call title",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "InternalAttendees",
       "values": [
         {
           "value": {
             "id": 2,
             "firstName": "Devlin",
             "lastName": "Monroe",
             "email": "devlin.monroe-n@alchemy.cloud"
           },
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "RelatedTo",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 },
 {
   "recordId": 1416,
   "name": "Call Log -  09-Nov-2020",
   "createdById": null,
   "createdOn": "2020-11-09T12:38:05Z",
   "errorInfo": [],
   "fieldGroups": [],
   "fields": [
     {
       "identifier": "Company",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": {
             "errorCode": "REQUIRED_FIELD_NOT_SET",
             "errorMessage": "Companyin record Call Log -  09-Nov-2020 of type Call Log is required."
           }
         }
       ]
     },
     {
       "identifier": "Contact",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": {
             "errorCode": "REQUIRED_FIELD_NOT_SET",
             "errorMessage": "Contactin record Call Log -  09-Nov-2020 of type Call Log is required."
           }
         }
       ]
     },
     {
       "identifier": "Agenda",
       "values": [
         {
           "value": "",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Notes",
       "values": [
         {
           "value": "",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "NextSteps",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Name",
       "values": [
         {
           "value": "Call Log -  09-Nov-2020",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "InternalAttendees",
       "values": [
         {
           "value": {
             "id": 2,
             "firstName": "Devlin",
             "lastName": "Monroe",
             "email": "devlin.monroe-n@alchemy.cloud"
           },
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "RelatedTo",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 },
 {
   "recordId": 1418,
   "name": "Call Log -  09-Nov-2020",
   "createdById": null,
   "createdOn": "2020-11-09T13:44:28Z",
   "errorInfo": [],
   "fieldGroups": [],
   "fields": [
     {
       "identifier": "Company",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": {
             "errorCode": "REQUIRED_FIELD_NOT_SET",
             "errorMessage": "Companyin record Call Log -  09-Nov-2020 of type Call Log is required."
           }
         }
       ]
     },
     {
       "identifier": "Contact",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": {
             "errorCode": "REQUIRED_FIELD_NOT_SET",
             "errorMessage": "Contactin record Call Log -  09-Nov-2020 of type Call Log is required."
           }
         }
       ]
     },
     {
       "identifier": "Agenda",
       "values": [
         {
           "value": "",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Notes",
       "values": [
         {
           "value": "",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "NextSteps",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "Name",
       "values": [
         {
           "value": "Call Log -  09-Nov-2020",
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "InternalAttendees",
       "values": [
         {
           "value": {
             "id": 2,
             "firstName": "Devlin",
             "lastName": "Monroe",
             "email": "devlin.monroe-n@alchemy.cloud"
           },
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     },
     {
       "identifier": "RelatedTo",
       "values": [
         {
           "value": null,
           "row": 0,
           "index": 0,
           "errorInfo": null
         }
       ]
     }
   ]
 }
]

Completable Tasks

A list of tasks that can currently be completed by this user.
GET /api/v2/my-completable-tasks

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json
Request

Description of usual responses

200 OK – Tasks that can be completed, retrieved successfully.
400 Bad Request - Invalid parameters supplied.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single tasks object
Description
id
The unique id of the task.
subject (optional)
Subject of the task.
description (optional)
Description of the task.
taskState
Current task state. Can be none, pending or overdue.
plannedStart
Date and time of the planned start of the task.
completionTarget
Completion target date and time of the task.
startedOn (optional)
Starting date and time of the task.
completedOn (optional)
Completion date and time of the task.
score (optional)
Score of the task.
assigneesId (optional)
List of user ids that are assigned to the task.

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/my-completable-todo-tasks
}
Response

[
 {
   "id": 23,
   "subject": "Formulate the samples for ",
   "description": "Formulate the samples for ",
   "taskState": "OVERDUE",
   "plannedStart": "2020-01-21T08:02:19Z",
   "completionTarget": "2020-01-21T16:02:19Z",
   "startedOn": null,
   "completedOn": null,
   "score": null,
   "assigneesId": []
 },
 {
   "id": 44,
   "subject": "Conduct the Application Tests for all requested formulations ",
   "description": " ",
   "taskState": "OVERDUE",
   "plannedStart": "2020-01-22T09:49:27Z",
   "completionTarget": "2020-01-22T17:49:27Z",
   "startedOn": null,
   "completedOn": null,
   "score": null,
   "assigneesId": []
 },
 {
   "id": 54,
   "subject": "Test",
   "description": "",
   "taskState": "OVERDUE",
   "plannedStart": "2020-01-28T15:18:21Z",
   "completionTarget": "2020-01-28T17:18:21Z",
   "startedOn": null,
   "completedOn": null,
   "score": null,
   "assigneesId": []
 },
 {
   "id": 84,
   "subject": "Enter Lab Work Request",
   "description": "",
   "taskState": "OVERDUE",
   "plannedStart": "2020-03-05T10:25:55Z",
   "completionTarget": "2020-03-05T18:25:55Z",
   "startedOn": null,
   "completedOn": null,
   "score": null,
   "assigneesId": []
 }
]

Start Task

Starts a task for provided task id.
PUT /api/v2/start-task

Headers

Name
Description
Authorization
Content-Type
Bearer {access token}
application/json

Request Details

- Request sent as a single object

Name
Description
id
Provided id of the task.
Request

{
"id": "300"
}

Description of usual responses

200 OK – Task started successfully.
400 Bad Request - Invalid parameters supplied.
401 Unauthorized – User is unauthorized to do this action.

Response Details

List of parameters below

Fields of single tasks object
Description
id
The unique id of the task.
subject (optional)
Subject of the task.
description (optional)
Description of the task.
taskState
Current task state. Can be none, pending or overdue.
plannedStart
Date and time of the planned start of the task.
completionTarget
Completion target date and time of the task.
startedOn (optional)
Starting date and time of the task.
completedOn (optional)
Completion date and time of the task.
score (optional)
Score of the task.
assigneesId (optional)
List of user ids that are assigned to the task.

Bad request response body

{
 "timestamp": "2020-12-08T13:18:57.159+00:00",
 "status": 400,
 "error": "Bad Request",
 "message": "JSON parse error: Unrecognized field \"ids\")",
 "path": "/api/v2/start-task"
}
{
 "timestamp": "2020-12-08T13:17:31.449+00:00",
 "status": 400,
 "error": "Bad Request",
 "message": "Task with id: 99999999 does not exist.",
 "path": "/api/v2/start-task"
}

Unauthorized response body

{
"timestamp": "2020-11-09T11:55:45.818+00:00",
"status": 401,
"error": "Unauthorized",
"message": "",
"path": "/api/v2/start-task
}
Response

{
 "id": 435,
 "subject": "Document your innovation idea",
 "description": "",
 "taskState": "OVERDUE",
 "plannedStart": "2020-07-21T20:11:23Z",
 "completionTarget": "2020-07-22T04:11:23Z",
 "startedOn": "2020-12-08T13:21:13Z",
 "completedOn": null,
 "score": null,
 "assigneesId": []
}