PROCESIO
OverviewPlatform ActionsIntegrations & DemosCustom ActionsDeveloper’s Guide

PROCESIO API Documentation

Our REST APIs allow you to integrate with PROCESIO from any other application. We expose 2 APIs: Proxy API and Web API. Use the Proxy API for…

Our REST APIs allow you to integrate with PROCESIO from any other application. We expose 2 APIs: Proxy API and Web API. Use the Proxy API for connecting to the Authentication Service, and the Web API to perform operations on your application, such as running a process, or getting a data type configuration.

Proxy API

Use the Proxy API to reach the Authentication Service. The Authentication Service exposes methods such as authenticate, refreshToken, password change, and password update.

In order to be able to perform any operation on the PROCESIO platform through the Web API, you need to first get an access token from the Proxy API. In order to obtain an access token you can use the POST /api/Authentication method.

The POST /api/Authentication method requires the following parameters:

  • realm: your tenant name (all users are added to "procesio01")
  • grant_type: password
  • username: your user name
  • password: your user’s password
  • client_id: procesio-ui
  • client_secret: (can be left empty)

If the request is successful, you will receive an access token in the response which you will be able to use to access the Web API services.

Here’s how the request would look like testing through Swagger:

And if successful, the response in Swagger will look like this:

For a full list of methods, check Proxy API.  

Web API

Use the Web API to interact with the PROCESIO platform. To be able to send requests to the Web API, you need to be authorized with the access token received from the Proxy API (see the previous chapter regarding the Proxy API). The Authorize button can be found in the upper right corner.

Bearer Authentication

API Key Authentication

How to run a process from an external application?

Prerequisites

To run the process using a API Key we will require:

  • Generate a API Key in PROCESIO.

  • PROCESIO API endpoints can be found here. Additionally we also provide Swagger for our Web API endpoints which can be tested here.
  • Postman for sending the request.

Postman

Configure the request:

1. Select Post Method mention the base URL and the endpoint

2. In Postman from Headers include:

HeadersValue
keyAPI key name
valueAPI key value
workspaceIdworkspace Id

3. In Postman from Body, raw, include: 

{ "payload": {}, "connectionId": null }

In the payload add the input variables for the process as displayed in the screenshot below

4. Select JSON

5. From Postman hit the Send button in order to trigger the process for which you configured the request.

Once authorized to the WebAPI, you have access to the following services:

ServiceMethod typeMethod nameDescription
ActionsGET/api/Actions/folders/{id}Returns the full path to the process.
ActionsDELETE/api/Actions/folders/{id}Deletes the folder containing the process with all its content.
ActionsGET/api/Actions/foldersReturns directory tree of the workspace.
ActionsPOST/api/Actions/foldersAdd a new folder in your workspace.
ActionsPATCH/api/Actions/folders/renameRenames node inside your workspace.
ActionsGET/api/Actions/templates/{id}Returns information about the template.
ActionsDELETE/api/Actions/templates/{id}Deletes the specified template.
ActionsPOST/api/Actions/templatesCreates a new template in your workspace.
ActionsGET/api/Actions/{id}Returns information about the action.
ActionsDELETE/api/Actions/{id}Deletes the specified action.
ActionsGET/api/ActionsReturns list of actions.
ActionsPOST/api/ActionsAdd a new action in your workspace.
ActionsGET/api/Actions/category/{category}Returns information about the category.
ActionsPOST/api/Actions/testCreates a new action category.
ActionsGET/api/Actions/test/{id}Returns information about the action in the specified category.
ActionsGET/api/Actions/nodeReturns information about the node content.
ApiKeyGET/api/ApiKeyReturns the api key.
ApiKeyPOST/api/ApiKeyUse api key on workspace.
ApiKeyDELETE/api/ApiKeyDelete api key.
ApiKeyDELETE/api/ApiKey/{id}Delete project.
CredentialsGET/api/Credentials/typesReturns the credential configuration types (REST API, Email Server) with their associated fields (URL, authentication type,..).
CredentialsPOST/api/Credentials/typesCreates a new credential configuration type.
CredentialsGET/api/Credentials/types/{id}Returns the credential fields necessary for a given type.
CredentialsPOST/api/Credentials/testTests if a credential configuration is valid.
CredentialsGET/api/CredentialsReturns a list of existing credential configurations.
CredentialsPOST/api/CredentialsCreates a new credential configuration.
CredentialsPUT/api/CredentialsModifies an existing credential configuration.
CredentialsGET/api/Credentials/list/{templateId}Returns information about the template.
CredentialsGET/api/Credentials/{id}Returns the credential configuration details for a configuration ID.
CredentialsDELETE/api/Credentials/{id}Deletes a credential configuration based on a configuration ID.
CredentialsGET/api/Credentials/verbs/{templateId}Returns information about the template.
CredentialsPOST/api/Credentials/upload/{credentialsId}Creates a new credential.
CredentialsPOST/api/Credentials/upload/testCreates a new category of credentials.
DataTypesPOST/api/DataTypesCreates a new data type.
DataTypesPUT/api/DataTypesModifies an existing data type.
DataTypesGET/api/DataTypesReturns a list of available data types in the tenant.
DataTypesGET/api/DataTypes/{id}Returns the attributes of a data type for a data type id.
DataTypesDELETE/api/DataTypes/{id}Deletes a data type based on the data type ID.
DataTypesGET/api/DataTypes/{value}Returns the properties of a data type based on the data type name.
DataTypesGET/api/DataTypes/primaryReturns a list of primitive data types available on the platform.
DataTypesGET/api/DataTypes/primary/countReturns the number of primitive data types available on the platform.
FilePOST/api/File/upload/flowUpload flow.
FilePOST/api/File/upload/testActionUpload action.
FileGET/api/File/downloadDownload file.
FilePOST/api/File/upload/scheduleUpload flow.
ProjectsPOST/api/ProjectsCreate a process.
ProjectsPUT/api/ProjectsModify a process.
ProjectsGET/api/ProjectsReturns a list of processes.
ProjectsPOST/api/Projects/validateValidates a process.
ProjectsDELETE/api/Projects/{id}Deletes a process based on the ID.
ProjectsGET/api/Projects/{id}Returns the process configurations based on a process ID.
ProjectsGET/api/Projects/{id}/instances/publishCopies a process and creates an instance which is ready to be launched. After publishing the process, use the launch method to execute the instance using the ID returned by this method.
Alternatively use the run method to execute a process.
ProjectsGET/api/Projects/{id}/instancesReturns a list of process instances for a given process ID.
ProjectsGET/api/Projects/instances/{id}/statusReturns the status of a process instance.
ProjectsGET/api/Projects/instances/{id}/launchExecutes a process instance by instance ID. Note that the process instance is created with the publish method.
ProjectsPOST/api/Projects/{id}/runTrigger a process using the process ID.
ProjectsGET/api/Projects/{id}/payloadReturns the payload of specified process.
ProjectsGET/api/Projects/{id}/usedReturns the used resources by the process.
ProjectsPATCH/api/Projects/{id}/toggle-activationChange the state of the project.
ResourcesGET/api/Resources/usedReturns the list of existing resources on the account.
ResourcesGET/api/Resources/analytics/processesReturns the analytics for all processes.
ResourcesGET/api/Resources/analytics/processes/{id}/detailsReturns info on the process.
ResourcesGET/api/Resources/analytics/instances/{id}/detailsReturns the analytics of specific instance.
ResourcesGET​/api​/Resources​/analytics​/users Returns the user/account analytics information.
SchedulesGET/api/SchedulesReturns a list of schedules.
SchedulesPOST/api/SchedulesCreate a schedule.
SchedulesPUT/api/SchedulesModify a schedule.
SchedulesGET/api/Schedules/{scheduleId}Returns the schedule configurations based on a schedule ID.
SchedulesDELETE/api/Schedules/{scheduleId}Deletes a process based on the ID.
SchedulesPOST/api/Schedules/{scheduleId}/duplicateCreates a copy of a schedule based on the ID.
SchedulesPatch/api/Schedules/{scheduleId}/statusReturns the schedule status based on the ID.
StatusGET/api/StatusReturns the platform status.
VersionGET​/gui​/Version
VersionPOST​/gui​/Version

On this page