FlowMate API Documentation
  1. Templates
FlowMate API Documentation
  • Authentication
    • Login
      POST
  • Flows
    • Retrieve all flows
      GET
    • Find Flow by ID
      GET
    • Deletes a flow
      DELETE
    • Update an existing flow
      PATCH
    • Bulk update a number of existing flows
      PATCH
    • Start a flow
      POST
    • Stop a flow
      POST
    • Start multiple flows
      POST
    • Stop multiple flows
      POST
  • User
    • get all users
      GET
    • Create user
      POST
    • get a user by id
      GET
    • get current user
      GET
  • Templates
    • Retrieve all flow templates
      GET
    • Add a new template to the repository
      POST
    • Find Flow Template by ID
      GET
    • Deletes a flow template
      DELETE
    • Update an existing flow template
      PATCH
    • Generate a flow from the flow template
      POST
  • Executions
    • Get Executions
      GET
  • Webhooks
    • Incoming Webhook
      POST
  1. Templates

Add a new template to the repository

POST
https://api.platform.openintegrationhub.com/templates
templates
This requires the 'flowTemplates.write' permissions. The new Flow Template will automatically be associated with the current user in the owners array, allowing editing and viewing by this user irrespective of tenancies.

Request

Body Params application/json
name
string 
required
Example:
SnazzyToCodeComponent
description
string 
optional
Example:
This flow polls for persons and posts them on webhoo.site.
graph
object (FlowGraph) 
required
nodes
array [object {7}] 
optional
An array of all components involved in this flow
edges
array [object {4}] 
optional
An array of edges linking nodes together, determining the order in which nodes are activated
type
enum<string> 
required
Flow type
Allowed values:
ordinaryrealtime
Example:
ordinary
cron
string 
optional
A cron string describing the interval at which this flow is run. If unset, the flow uses webhooks instead
Example:
* /2 * * * *
owners
array[object (Owner) {2}] 
optional
id
string 
required
External id of the owner
type
string 
required
Type to discriminate between user or tenant
Example
{
    "name": "SnazzyToCodeComponent",
    "description": "This flow polls for persons and posts them on webhoo.site.",
    "graph": {
        "nodes": [
            [
                {
                    "id": "step_1",
                    "componentId": "string",
                    "name": "snazzy adapter for oih",
                    "function": "getPersonsPolling",
                    "description": "New description in progress"
                },
                {
                    "id": "step_2",
                    "componentId": "string",
                    "name": "code_component",
                    "function": "execute",
                    "description": "",
                    "fields": {
                        "code": "function* run() {console.log('Calling external URL');yield request.post({uri: 'http://webhook.site/debc8244-3ca0-4449-af2b-e346c4f57b85', body: msg.body, json: true});}"
                    }
                }
            ]
        ],
        "edges": [
            {
                "id": "string",
                "config": {
                    "condition": "string",
                    "mapper": {}
                },
                "source": "step_1",
                "target": "step_2"
            }
        ]
    },
    "type": "ordinary",
    "cron": "* /2 * * * *",
    "owners": [
        {
            "id": "string",
            "type": "string"
        }
    ]
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api.platform.openintegrationhub.com/templates' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "SnazzyToCodeComponent",
    "description": "This flow polls for persons and posts them on webhoo.site.",
    "graph": {
        "nodes": [
            [
                {
                    "id": "step_1",
                    "componentId": "string",
                    "name": "snazzy adapter for oih",
                    "function": "getPersonsPolling",
                    "description": "New description in progress"
                },
                {
                    "id": "step_2",
                    "componentId": "string",
                    "name": "code_component",
                    "function": "execute",
                    "description": "",
                    "fields": {
                        "code": "function* run() {console.log('\''Calling external URL'\'');yield request.post({uri: '\''http://webhook.site/debc8244-3ca0-4449-af2b-e346c4f57b85'\'', body: msg.body, json: true});}"
                    }
                }
            ]
        ],
        "edges": [
            {
                "id": "string",
                "config": {
                    "condition": "string",
                    "mapper": {}
                },
                "source": "step_1",
                "target": "step_2"
            }
        ]
    },
    "type": "ordinary",
    "cron": "* /2 * * * *",
    "owners": [
        {
            "id": "string",
            "type": "string"
        }
    ]
}'

Responses

🟢201Created
application/json
The created Flow Template.
Body
data
object (FlowTemplate) 
optional
name
string 
required
Example:
SnazzyToCodeComponent
description
string 
optional
Example:
This flow polls for persons and posts them on webhoo.site.
graph
object 
FlowGraph
required
type
enum<string> 
required
Flow type
Allowed values:
ordinaryrealtime
Example:
ordinary
cron
string 
optional
A cron string describing the interval at which this flow is run. If unset, the flow uses webhooks instead
Example:
* /2 * * * *
owners
array[object (Owner) {2}] 
optional
id
string 
required
status
enum<string> 
optional
Flow status, set automatically in response to start/stop commands
Allowed values:
publisheddraft
Example:
draft
tags
array[string]
optional
Example:
["advanced","premium"]
createdAt
string <date-time>
required
Timestamp of flow creation
Example:
2019-07-30T12:52:45.957Z
updatedAt
string <date-time>
required
Timestamp of most recent flow update
Example:
2019-07-30T12:52:45.957Z
meta
object 
optional
Example
{
    "data": {
        "name": "SnazzyToCodeComponent",
        "description": "This flow polls for persons and posts them on webhoo.site.",
        "graph": {
            "nodes": [
                [
                    {
                        "id": "step_1",
                        "componentId": "string",
                        "name": "snazzy adapter for oih",
                        "function": "getPersonsPolling",
                        "description": "New description in progress"
                    },
                    {
                        "id": "step_2",
                        "componentId": "string",
                        "name": "code_component",
                        "function": "execute",
                        "description": "",
                        "fields": {
                            "code": "function* run() {console.log('Calling external URL');yield request.post({uri: 'http://webhook.site/debc8244-3ca0-4449-af2b-e346c4f57b85', body: msg.body, json: true});}"
                        }
                    }
                ]
            ],
            "edges": [
                {
                    "id": "string",
                    "config": {
                        "condition": "string",
                        "mapper": {}
                    },
                    "source": "step_1",
                    "target": "step_2"
                }
            ]
        },
        "type": "ordinary",
        "cron": "* /2 * * * *",
        "owners": [
            {
                "id": "string",
                "type": "string"
            }
        ],
        "id": "string",
        "status": "published",
        "tags": [
            "advanced",
            "premium"
        ],
        "createdAt": "2019-07-30T12:52:45.957Z",
        "updatedAt": "2019-07-30T12:52:45.957Z"
    },
    "meta": {}
}
Modified at 2025-01-16 10:20:25
Previous
Retrieve all flow templates
Next
Find Flow Template by ID
Built with