webMethods.io Integration API Reference

Browse the API Reference documentation to build connected applications with webMethods.io Integration APIs.

Overview

webMethods.io Integration provides a robust set of APIs that allow you to programmatically integrate your own applications with webMethods.io Integration, in a simple and secure manner. webMethods.io Integration APIs permit access to webMethods.io Integration functionalities and data in an authorized way to accomplish integration of systems and applications. Our APIs are based on REST architectural style and can be communicated using HTTP requests.

Authentication

webMethods.io Integration uses the HTTP basic authentication method to authenticate each HTTP request made to the API. With this authentication mechanism, webMethods.io Integration verifies the identity of API consumers and ensures that they have the necessary permission to access relevant data.

You can pass your tenant login credentials to authenticate yourself while making a request to the API in a REST client application. webMethods.io Integration verifies the supplied credentials contained in an Authentication header against the list of registered tenant users and then allows the users to access the relevant data.

webMethods.io Integration APIs

webMethods.io Integration APIs are categorized into the following domains:

Domain Used for …
Workflow APIs Exporting, importing, deleting, and executing a workflow
FlowService APIs Exporting, importing, deleting, and executing a FlowService
Project APIs Creating, updating, deleting, and retrieving a project

Workflow APIs

Export

Allows you to export a workflow and all its dependencies. The exported data will be downloaded as a zip file to your local machine.

Steps:

  1. In a REST client platform, add the authentication details of the tenant from where you want to export a workflow.

    Headers: 
    {
        Authorization: BasicAuth
    }
    Body: 
    {
        description: <description>,
        name: <workflow_name>
    }
  2. Perform a POST request at the URL of the workflow that you want to export.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/workflows/:workflow/export

    In this URL request, /:project is the name of the project associated with the workflow you want to export and /:workflow is the UID of the workflow you want to export.

    Method: POST

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
output: 
	{
		download_link: <download_link>,
		valid_till: <valid_till>
	}
}

Note: The value in valid_till indicates the validity period for downloading the link.

Import

Allows you to import a workflow and all its dependencies into a particular project. Whenever you make a request, a new workflow is created even though the same zip file is uploaded.

Steps:

  1. In a REST client platform, add the required details of the tenant where you want to import a workflow.

    Headers: 
    {             
    Authorization: BasicAuth
    }
        
    domain => https:/<tenant_name>.dev-int-aws-us.webmethods.io
        
    Body: 
    {
    recipe: <zip_file_binary>
    }
  2. Perform a POST request at the URL of the workflow.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/workflow-import

    In this URL request, /:project is the name of the project where you want to import.

    Method: POST

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
output: 
	{
		name: <workflow_name>,
		description: <workflow_description>,
		refid: <workflow_refid>,
		sid: <workflow_sid>,
		uid: <workflow_uid>,
		project_uid: <workflow_project_uid>,
		tenant_uid: <workflow_tenant_uid>
	}
}

Delete

Allows you to delete a workflow and all its dependencies from a particular project.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the workflow that you want to delete.

    Headers: 
    {             
        Authorization: BasicAuth
    }
  2. Perform a DELETE request at the URL of the workflow.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/workflows/:workflow

    In this URL request, /:project is the name of the project associated with the workflow you want to delete and /:workflow is the UID of the workflow you want to delete.

    Method: DELETE

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 output: 
		{
		message: "Object deleted successfully."
		}
}

Execute

Allows you to execute a particular workflow.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the workflow you want to execute.

    Headers: 
            {             
                Authorization: BasicAuth
            }
  2. Perform a POST request at the URL of the workflow you want to execute.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/workflows/:workflow/run

    In this URL request, /:project is the name of the project associated with the workflow you want to execute and /:workflow is the UID of the workflow you want to execute.

    Method: POST

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 output : 
	{
		run_id: <run_id>,
		response: "Workflow enqueue successfully.",
		status: "<current_stauts_of_workflow_run>",
		workflow_uid: <workflow_uid>,
		project_uid: <workflow_project_uid>,
		tenant_uid: <workflow_tenant_uid>
    }
}   

Get Workflow Execution Status

Allows you to check the current status of the workflow execution.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the workflow of which execution status you want to retrieve.

        Headers: 
        {             
            Authorization: BasicAuth
        }
            
  2. Perform a GET request at the URL of the workflow.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/workflow-run/:run_id

    In this URL request, /:project is the name of the project associated with the workflow.

    Method: GET

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
	output:
		{
		"objects":
				[{
				"run_id": <run_id>,
				"workflow_uid": “<workflow_uid>”,
				"project_uid": "<workflow_project_uid>",
				"tenant_uid": "<workflow_tenant_uid>",
				"status": "<current_status_of_workflow_run>"
				},
				{
				.
				.
				}
				]
		}
}

FlowService APIs

Export

Allows you to export a FlowService and all its dependencies. The exported data will be downloaded as a zip file to your local machine.

Steps:

  1. In a REST client platform, add the authentication details of the tenant from where you want to export a FlowService.

        Headers: 
        {
            Authorization: BasicAuth
        }
  2. Perform a POST request at the URL of the FlowService that you want to export.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/flows/:flow/export

    In this URL request, /:project is the name of the project associated with the FlowService you want to export and /:flow is the name of the FlowService you want to export.

    Method: POST

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
  output : 
	{
		download_link: <download_link>,
		valid_till: <valid_till>
    }
}

Note: The value in valid_till indicates the validity period for downloading the link.

Import

Allows you to import a FlowService and all its dependencies into a particular project. If you import a FlowService with the same name as an existing FlowService in the tenant, then webMethods.io Integration overwrites the existing FlowService. If a FlowService with the same name does not exist, then a new FlowService is created.

Steps:

  1. In a REST client platform, add the required details of the tenant where you want to import a FlowService.

    Headers: 
    {             
     Authorization: BasicAuth
    }
             
    domain => https:/<tenant_name>.dev-int-aws-us.webmethods.io
             
    Body: 
    {
     recipe: <zip_file_binary>
    }
  2. Perform a POST request at the URL of the FlowService.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/flow-import

    In this URL request, /:project is the name of the project where you want to import the FlowService.

    Method: POST

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 output : {
			"name": "<flow_name>",
			"assemblyType": "<assembly_type>",
			"serviceFullName": "<service_FullName>",
			"project_uid": "<project_uid>",
			"tenant_uid": "*<tenant_uid>"
			}
}

Delete

Allows users to delete a FlowService and all its dependencies from a particular project.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the FlowService you want to delete.

    Headers: 
    {             
     Authorization: BasicAuth
    }
  2. Perform a DELETE request at the URL of the FlowService.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/flows/:flow

    In this URL request, /:project is the name of the project associated with the FlowService you want to delete and /:flow is the name of the FlowService you want to delete.

    Method: DELETE

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 output: 
		{
		message: "Object deleted successfully."
		}
}

Execute

Allows you to execute a particular FlowService.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the FlowService you want to execute.

    Headers: 
    {             
    Authorization: *BasicAuth*
    }
  2. Perform a POST request at the URL of the FlowService you want to execute.

    URL Syntax: <domain>/enterprise/v1/rest/projects/:project/flows/:flow/run

    In this URL request, /:project is the name of the project associated with the FlowService you want to execute and /:flow is the name of the FlowService you want to execute.

    Method: POST

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
output : 
	{
    "contentStream": "<content_stream>",
    "date": "<datetime>"
    }
    }

Project APIs

Create

Allows you to create a new project in a particular tenant.

Steps:

  1. In a REST client platform, add the authentication details of the tenant where you want to create a project.

    Headers: 
        {
        Authorization: BasicAuth
        }
    Body: 
        {
        name: <project_name>
        }
  2. Perform a POST request at the URL of the project.

    URL Syntax: <domain>/enterprise/v1/rest/projects

    Method: POST

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
{
 output : 
		{
		name: <project_name>,
		uid: <project_uid>,
		tenant_uid: <project_tenant_uid>,
		workflow_count: <workflow_count>,
		flowservice_count: <flowservice_count>
		}
}
}    

Update

Allows you to update an existing project.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the project you want to update.

    Headers: 
            {
            Authorization: BasicAuth
            }
    Body: 
            {
            name: <project_name>
            }
  2. Perform a PUT request at the URL of the project.

    URL Syntax: <domain>/enterprise/v1/rest/projects

    Method: PUT

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 {
  output : 
		{
		name: <project_name>,
		uid: <project_uid>,
		tenant_uid: <project_tenant_uid>,
		workflow_count: <workflow_count>,
		flowservice_count: <flowservice_count>
		}
 }
}

Delete

Allows you to delete an existing project.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the project you want to delete.

    Headers: 
            {
            Authorization: BasicAuth
            }
  2. Perform a DELETE request at the URL of the project.

    URL Syntax: <domain>/enterprise/v1/rest/projects/project

    Method: DELETE

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 output: 
		{
		message: "Project deleted successfully."
		}
}

Get a project

Allows you to retrieve a project.

Steps:

  1. In a REST client platform, add the authentication details of the tenant associated with the project you want to retrieve.

    Headers: 
            {
            Authorization: BasicAuth
            }
  2. Perform a GET request at the URL of the project.

    URL Syntax: <domain>/enterprise/v1/rest/projects/project

    Method: GET

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 output : 
		{
		name: <project_name>,
		uid: <project_uid>,
		tenant_uid: <project_tenant_uid>,
		workflow_count: <workflow_count>,
		flowservice_count: <flowservice_count>
		}
}

Get a list of projects

Allows you to retrieve a list of accessible project.

Steps:

  1. In a REST client platform, add the authentication details of the tenant from where you want to retrieve projects.

    Headers: 
            {
            Authorization: BasicAuth
            }
  2. Perform a GET request at the URL of the project.

    URL Syntax: <domain>/enterprise/v1/rest/projects

    Method: GET

Output:

If the request is successful, you will receive the HTTP 200 OK success status response code.

{
 output : 
		[{
		name: <project_name>,
		uid: <project_uid>,
		tenant_uid: <project_tenant_uid>,
		workflow_count: <workflow_count>,
		flowservice_count: <flowservice_count>
		}]
}