Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Warning
titlePage in development

This page is in development and as such, its contents may be incorrect

The workflow API provides functionality that allows a administrator to perform actions such as adding and configuring workflow

toc
Easy Heading Free
titleExpandClickabletrue
navigationTitleOn this Page
navigationExpandOptionexpand-all-by-default

Success

: 200

Section
List

Get all workflows

Lists all the workflows configured in the Aspire, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb
GET /aspire/_api/workflowworkflows

Pagination query string parameters

Sorting query string parameters

Query String Parameters

Filter workflows to only those whose description matches the given expression
NameTypeRequiredDescriptiondescriptionstringOptional
sparsebooleanOptionalOnly return minimal data such as identifier, description, name etc
Section

Get all workflows, filtered

Lists workflows configured in the Aspire, filtered by a specified criteria, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

POST /aspire/_api/workflows/getAll

Pagination query string parameters

Sorting query string parameters

Common filter


Response

Code Block
languagejs
{
  "workflow": [{
    "id": "AAABcID5GBc=",
    "description": "Publish to Elasticsearch",
    ...
  },
  {
    "id": "AAABcIueWUc=",
    "description": "Normalise data",
    ...
  }],
  "message": "optional response message"
}

Status

Response codeDescription
200




: 200, 404

Section

Get a single workflow

Get information about a single workflow in Aspire, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflowworkflows/:id


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe id of the workflow to return


Query String Parameters

NameTypeRequiredDescription
transformbooleanOptionalWhether to transform the output.  Default "false"
sectionstringOptionalThe section required for the output. The value can be "templates", "rules", "events"


Response

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcID5GBc=",
    "description": "Publish to Elasticsearch",
    ...
  },
  "message": "optional response message"
}

Status

Response codeDescription
200Success
404The given workflow id was not found




If true,
Section

Add

a

single workflow

Adds a single workflow to Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb
POST /aspire/_api/workflowworkflows


Request Body Parameters

NameTypeRequiredDescription
descriptionstringRequiredA description of the workflow


Query String Parameters

NameTypeRequiredDescription
type
empty
string
booleanOptional
Required

Accepted values are: "connector" and "service"

If connector is set the workflow created

will be empty (

with

no plans).By default,

the following

plans

events will be created:

  • onScan
  • onAddUpdate
  • onDelete
  • onPublish
  • onError

Examples

If service is set the workflow will be created without events.


ExampleAdd a single service

Code Block
languagejs
POST /aspire/_api/workflows?type=connector
{
  "description": "Publish to Elastic"
  ...
}


Response

Code Block
languagejs
{
  "serviceworkflow": {
    "id": "AAABcID5GBc=",
    "description": "Publish to Elastic",
    "type": "connector"
    ....
  }
}

Status: 200, 406




Section

Update workflows, filtered

Update connectors configured in the Aspire, filtered by a specified criteria, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

PUT /aspire/_api/workflows/updateAll

Common filter

Update body parameter


Response

Code Block
languagejs
{
  "message": "optionalupdate result response message"
}

Status: 200, 406

Section

Delete multiple workflows, filtered

Delete multiple workflows from Aspire, filtered by a specified criteria, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

POST /aspire/_api/workflows/deleteAll

Common filter

Response

Code Block
Description
language
201Created
406Not acceptable - there was an issue validating the input
js
{
  "message": "delete result response message"
}

Status: 200, 404, 406




Section

Delete workflow(s)

Delete one or more services workflows from Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

DELETE /aspire/_api/serviceworkflows/:id

DELETE /aspire/_api/workflows

POST /aspire/_api/workflows/servicedelete


Path and Request Body ParametersParameters and Query parameters

NameTypeRequiredDescription
idstringRequiredThe identifier(s) of the workflow(s) to delete


Body Parameter

NameTypeRequiredDescription
ididsstringRequiredThe identifier(s) of the workflow(s) to delete


Examples

Delete a single workflow

Code Block
languagejs
DELETE /aspire/_api/workflows/AAABcID5GBc

DELETE /aspire/_api/workflows?id=AAABcID5GBc&id=AAABcID5GBd

POST /aspire/_api/workflows/delete
{
  "ids":["AAABcID5GBc","AAABcID5GBd"]
}


Response

Code Block
languagejs
{
  "message": "delete result response message"
}

Status: 200, 404, 406




Section

Get a workflow event

Get a event from a workflow in Aspire, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflows/:id/:eventId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow(s) to return
eventIdstringRequiredThe identifier of the event to get


Response

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcID5GBc="
}AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "event": {
      "id": "onUpdate"
       ....
    }
  }
}

Status: 200, 404, 406




Section

Get workflow events

Get a event from a workflow in Aspire, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflows/:id


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow(s) to return


Response

Code Block
languagejs
{
    "workflow": {
        "id": "72022651-c2f4-45a9-9e18-2b0ace529cda",
        "type": "connector",
        "description": "Test Workflow",
        "checksum": "2b8dc08a2da838304528b4695109e2379da9a670c5a195dcd27355e8daa20a8b",
        "events": {
            "event": [
                {
                    "id": "onScan"
                },
                {
                    "id": "onAddUpdate"
                },
                {
                    "id": "onDelete"
                },
                {
                    "id": "onPublish",
                    "item": {
                        "id": "404fefb7-b7f4-48cf-a7b1-81872587a85b",
                        "type": "reference",
                        "ruleId": "5d1273b8-9dc0-4f6d-89f3-fe6f331a6067",
                        "enabled": true
                    }
                },
                {
                    "id": "onError"
                },
                {
                    "id": "onIdentity"
                },
                {
                    "id": "onIdentityError"
                }
            ]
        }
    }
}

Status: 200, 404, 406




Section

Create workflow event(s)

Create one or more workflow events in Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

PUT /aspire/_api/workflows/:id

PUT /aspire/_api/workflows/:id/:eventId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow(s) to add a event to
eventIdstringRequiredThe identifier of the event to add


Examples

Create multiple events (body parameter)Delete multiple workflows

Code Block
languagejs
[{
  "id": "AAABcID5GBc=scan"
},
{
  "id": "addUpdate"
}]


Response

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "event": {
      "id": ["scan", "
}]addUpdate"]
    }
  }
}

Status: 200, 404, 406




Section

Delete a workflow event

Delete a workflow event from Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

DELETE /aspire/_api/workflows/:id/:eventId


Path  Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow(s) to use
eventIdstringRequiredThe identifier of the event to delete


Response

Code Block
languagejs
{
  "message": "delete result response message"
}

Status: 200, 404, 406




Section

Create a workflow event item

Create a workflow event item - a rule, condition and the like, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

POST /aspire/_api/workflows/:id/:eventId/:type


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow(s) to return
eventIdstringRequiredThe identifier of the event to get
typestringRequiredThe type of the item to create


Body Parameters

The request body parameters will differ depending on the type of item created. Some examples are shown below

Item TypeParameter NameParameter TypeRequiredDescription
reference


parentIdstringOptionalThe identifier of the node in to which the item should be inserted. Defaults to the root node. The valid parents for reference items are the root node, items of the type condition or references which ruleId is for a rule of type "folder"
orderIdintegerRequiredThe position (which in the children of the parent node) where this reference should be inserted. For example 0 means at the beginning, in the case of using a number greater than the current number of children within the parent node the item will be inserted at the end
ruleIdStringRequiredThe rule to be referenced, it must exist
enabledbooleanOptionalWhether or not the item is enabled (default true)
condition



parentIdstringRequiredThe identifier of the node in to which the item should be inserted. The valid parents for condition items are references which ruleId is for a rule of type "choice".
valueobjectRequiredThe value to be compared against
conditionTypeStringRequiredThe value type, possible types are "string", "boolean", "integer", "long", "double", "float"
enabledbooleanOptionalWhether or not the item is enabled (default true)
templateStringRequiredThe condition template id.
exit

parentIdstringOptionalThe identifier of the node in to which the item should be inserted. Defaults to the root node. The valid parents for exit items are the root node, items of the type condition or references which ruleId is for a rule of type "folder"
orderIdintegerRequiredThe position (which in the children of the parent node) where this reference should be inserted
enabledbooleanOptionalWhether or not the item is enabled (default true)


ResponseDelete multiple workflows(alternative form)

Code Block
languagejs
{
  "workflow": {
    "id": ["AAABcID5GBc=", "AAABcIueWUc="]
}AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "event": {
      "id": "onAddUpdate",
      "rule": {
        "id": "AAABcQwxWUc=",
        ...
      }
    }
  }
}

Status: 200, 404, 406




Section

Update a workflow event item

Update a workflow event item from Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

PUT /aspire/_api/workflows/:id/:eventId/:itemId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow(s) to return
eventIdstringRequiredThe identifier of the event to get
typestringRequiredThe type of the item to create


Body Parameters

The request body parameters will differ depending on the type of item created. Some examples are shown below

Item TypeParameter NameParameter TypeRequiredDescription
referenceparentIdstringRequiredThe identifier of the parent node of the item to update. The parent cannot be updated using this method, use the move event item method to change the parent.

ruleIdStringOptionalThe rule to be referenced, it must exist

enabledbooleanOptionalWhether or not the item is enabled (default true)
conditionparentIdstringRequiredThe identifier of the parent node of the item to update. The parent cannot be updated using this method, use the move event item method to change the parent.

valueobjectOptionalThe value to be compared against

typeStringOptionalThe value type, possible types are "string", "boolean", "integer", "long", "double", "float"

enabledbooleanOptionalWhether or not the item is enabled (default true)

templateStringOptionalThe condition template id.
exitparentIdstringRequiredThe identifier of the parent node of the item to update. The parent cannot be updated using this method, use the move event item method to change the parent.

enabledbooleanOptionalWhether or not the item is enabled (default true)


Response

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "event": {
      "id": "onAddUpdate",
      "rule": {
        "id": "AAABcQwxWUc=",
        ...
      }
    }
  }
}

Status: 200, 404, 406




Section

Delete single workflow event item

Delete a workflow event item from Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

DELETE /aspire/_api/workflows/:id/:eventId/:parentId/:itemId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow to use
eventIdstringRequiredThe identifier of the event to use
parentIdstringRequiredThe identifier of the node with the item to be deleted
itemIdintegerRequiredThe identifier of the item to delete


Response

Code Block
languagejs
{
  "message": "optionaldelete result response message"
}

Status: 200, 404, 406




Section

Move a workflow event item

Move a workflow event item from Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

PUT /aspire/_api/workflows/:id/move/:eventId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow to use
eventIdstringRequiredThe identifier of the event to use


Body Parameters

NameTypeRequiredDescription
srcstringRequiredThe identifier of the event item to move
deststringRequiredThe identifier of the new parent for the moved item
orderIdintegerOptionalThe position (which in the children of the parent node) where this item should be inserted. For example 0 means at the beginning, in the case of using a number greater than the current number of children within the parent node the item will be inserted at the end. If no provided the item will be moved at the end of the children list of the new parent.


Response

Code Block
languagejs
{
  "message": "move result response message"
}

Status: 200, 404, 406




Section

Get workflow templates

Retrieve all workflow templates from Aspire, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflows/:id/templates


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow to get the templates for


Response

Code Block
languagejs
{
  "template": [{
      "id": "AAABcQwrWUc",
      ...
    },
	  "id": "AAABcQwrWUd",
      ...
    }]
}

Status: 200

Success
404Not found - a given workflow identifier was not found
406Not acceptable - there was an issue validating the input
Section

, 404, 406




Section

Get single workflow template

Retrieve a single workflow templates from Aspire, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflows/:id/template/:templateId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow to get the templates for
templateIdstringRequiredThe identifier of the template to get


Response

Code Block
languagejs
{
  "template": [{
      "id": "AAABcQwrWUc",
      ...
    }]
}

Status: 200, 404, 406




Section

Get single workflow rule

Get a single workflow rule from Aspire, this endpoint need the at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflows/:id/rule/:ruleId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow to return rules for
ruleIdstringRequiredThe identifier of the rule to get


Response

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "rule": {
      "id": "ddSWeq123",
      "description": "Some rule",
      "type": "application",
      ...
    }
  }
}

Status: 200, 404, 406




Section

Get workflow rules

Get workflow rules from Aspire, this endpoint need the at least the OPERATOR role to be executed

Get a workflow plan

Delete one or more services from Aspire.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflows/:id/rules


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow to return rules for


Response

Code Block
languagejs
{
    "workflow": {
        "id": "72022651-c2f4-45a9-9e18-2b0ace529cda",
        "type": "connector",
        "description": "Test Workflow",
        "checksum": "2b8dc08a2da838304528b4695109e2379da9a670c5a195dcd27355e8daa20a8b",
        "rules": {
            "5d1273b8-9dc0-4f6d-89f3-fe6f331a6067": {
                "appName": "Publish_To_File",
                "config": "com.accenture.aspire:app-publish-to-file",
                "type": "application",
                "description": "Publish to File",
                "properties": {
                    "debug": "false",
                    "logFileType": "true",
                    "logFile": "${app.name}/publishToFile.jobs",
                    "numJobs": 5
                },
                "id
/:planId
": "5d1273b8-9dc0-4f6d-89f3-fe6f331a6067"
            }
        }
    }
}

Status: 200, 404, 406




Section

Create a workflow rule

Create a single workflow rule in Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

POST /aspire/_api/workflows/:id/rules


Path Path and Request Body Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow (s) to return
planIdstringRequiredThe identifier of the plan to get
to create a rule for


Body Parameters

The request body parameters will differ depending on the type of rule created.

Rule TypeParameter NameParameter TypeRequiredDescription
applicationtypestringRequiredThe rule type, in the case of application the value must be "application"

descriptionstringRequiredThe rule description. Any spaces will be replaced with "_" after creation

configstringRequiredThe maven coordinates of the rule application

propertiesobjectOptionalA nested JSON object that contains any additional property required by the application. The properties will vary depending of the application.

enabledbooleanOptionalWhether or not the rule is enabled (default true)

*appTypestringOptionalThis field is only required if Aspire will be used with the UI. This field is used to associate the rule to the proper dxf from the resource manager

*_typestringOptionalThis field is only required if Aspire will be used with the UI.
templatetypestringRequiredThe rule type, in the case of rules based on templates, type must match the type of the template, for example if the template type is "choice" the rule type also must be "choice"

templatestringRequiredThe id of the template to use for the rule

propertiesobjectOptionalA nested JSON object that contains any additional property required by the template. The properties will vary depending of the template.

enabledbooleanOptionalWhether or not the rule is enabled (default true)
customtypestringRequiredThe rule type, in the case of custom rules the value must be "custom"

descriptionstringRequiredThe rule description. Any spaces will be replaced with "_" after creation

scriptstringRequiredThe custom groovy script to execute.


Optionally you may opt to add the created rule to a workflow event by adding the following query parameters

Parameter NameParameter TypeRequiredDescription
parentIdstringOptionalThe identifier of the node in to which the item should be inserted. Defaults to the root node
orderIdintegerOptionalThe position (which in the children of the parent node) where this reference should be inserted


ResponseResponse when parentId used

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "planevent": {
      "id": "onAddUpdate",
      "rule": {
        "id": "ddSWeq123",
        "description": "Some rule",
        "type": "application",
        ...
      }
    }
  }
}


Response without parentId

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "rule": {
      "id": "ddSWeq123",
      "description": "Some rule",
      "type": "application",
      ...
    }
  }
}

Status: 200, 404, 406




Section

Update single workflow rule

Updatee a single workflow rule in Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

PUT /aspire/_api/workflows/:id/rule/:ruleId


Path Parameters

NameTypeRequiredDescription
idstringRequiredThe identifier of the workflow to update a rule for
ruleIdstringRequiredThe identifier of the rule to update


Body Parameters

The request body parameters will differ depending on the type of rule created. See Create a workflow rule above


Response

Code Block
languagejs
{
  "workflow": {
    "id": "AAABcIueWUc=",
    "description": "Publish to Elasticsearch"
    "rule": {
      "id": "ddSWeq123",
      "description": "Some rule",
      "type": "application",
      ...
    }
  }
}

Status: 200, 404, 406




Section

Delete single workflow rule

Deletes a single workflow rule from Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

DELETE /aspire/_api/workflows/:id/rule/:ruleId


Path Parameters

NameTypeRequiredDescription
idstringRequired

The identifier of the workflow from which to delete rule(s) 

ruleIdstringRequiredThe identifier of the rule to delete


Response

Code Block
languagejs
{
  "message": "optionaldelete result response message"
}

Status: 200, 404, 406




Section

Delete workflow rules

Deletes a single workflow rule from Aspire, this endpoint need the at least the ADMINISTRATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

DELETE /aspire/_api/workflows/:id/rules


Path Parameters

NameTypeRequiredDescription
idstringRequired

The identifier of the workflow from which to delete rule(s) 


Query Parameters

NameTypeRequiredDescription
idstringRequired

One or more rule ids to be deleted


Response

Code Block
languagejs
{
  "message": "delete result response message"
}

Status: 200, 404, 406





Section

Export workflow(s)

Export one or more workflows from Aspire, this endpoint needs at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

GET /aspire/_api/workflows/export

GET /aspire/_api/workflows/export/:id

POST /aspire/_api/workflows/exportAll

Info

Every configuration item has the option to export from the UI, using the single menu or by the bulk actions:

Image AddedImage Added

Note

Something important that you need to know is that when you export a config item that depends on another, the export will contain also all the dependencies.

Note

Take into consideration that components with resources loaded into elastic, will be exported, but the resource itself will not, so you will need to reupload the resource and go and select your resource in the component again.


Path Parameters and Query parameters

NameTypeRequiredDescription
idstringRequiredThe identifier(s) of the workflow(s) to export


Body Parameter

NameTypeRequiredDescription
idsstringRequiredThe identifier(s) of the workflow(s) to export


Examples

Code Block
languagejs
themeRDark
GET /aspire/_api/workflows/export/AAABcID5GBc

DELETE /aspire/_api/workflows/export?id=AAABcID5GBc&id=AAABcID5GBd

POST /aspire/_api/workflows/export
{
  "ids":["AAABcID5GBc","AAABcID5GBd"]
}


Response

Code Block
languagejs
themeRDark
{
  "export": {
    "workflows": {
      "workflow": [
        {
          "id": "<workflow_id>",
          "type": "connector",
          "description": "myWorkflow",          
          "templates": {
            "template": [
              ...
            ]
          },
          "events": {
            "event": [
              ...
            ]
          },
          "rules": {
            "rule": [
              ...
            ]
          }
        }
      ]
    }
  }
}

Status: 200, 404, 406

Success
Section

Export multiple connections, filtered

Export multiple connections from Aspire, filtered by a specified criteria, this endpoint needs at least the OPERATOR role to be executed.

Panel
borderColorblack
bgColor#fafafb

POST /aspire/_api/connections/exportAll

Filters: The connection filter definition here

Response

Code Block
languagejs
themeRDark
{
  "export": {
    "workflows": {
      "workflow": [
        {
          "id": "<workflow_id>",
          "type": "connector",
          "description": "myWorkflow",          
          "templates": {
            "template": [
              ...
            ]
          },
          "events": {
            "event": [
              ...
            ]
          },
          "rules": {
            "rule": [
              ...
            ]
          }
        }
      ]
    }
  }
}

Status: 200




Section

Import

The import usage can be found here





Not acceptable - there was an issue validating the input
Section

Filters
Anchor
FiltersAnchor
FiltersAnchor

 Some endpoint queries require a filter. A filter is basically a JSON object with the following format:

Seed filter:

Code Block
languagejs
themeRDark
{ 
  "filter" : {
    "ids" : ["ID1", "ID2", "ID3", ...],
    "type" : "TYPE",
    "description" : "DESCRIPTION",
    "deleteIncrementalPolicy": "deletePolicyId",
	"credentials" : "credentialId",
	"throttlePolicy" : "throttlePolicyId",
	"routingPolicies" : ["RP1", "RP2", "RP3", ...]
  }
}
404Not found - a given workflow identifier was not found
406