Skip to content
POST /workflow

Request Body

configobject
required·

Workflow execution configuration.

run_ifstring

JSONata condition evaluated before executing workflow steps.

Example: integration.name = 'calcom'
stepsobject[]
4 properties
actionstring

Action executed by the step.

Example: run_sync_job
configstring

JSONata expression evaluated at runtime to generate the step execution payload.

Example: ( $sync_job_id := $mapValues(integration.name,{ "calcom": "51b79ace-a7b4-4077-93ba-8048a06ece2b" }); { "sync_job_id": $sync_job_id, "integrated_account_id": integrated_account_id, "webhook_id": "9fda519d-148f-4cc5-bbac-4e373b16e5d4" } )
cron_expressionstring

Optional cron expression for scheduled execution.

Example: 0 */6 * * *
typestring

Step execution type.

Example: run
Possible values:
run
environment_idstring · uuid

The environment in which this workflow is created.

Example: 05daecaf-4365-42e8-8370-8127de5dd717
idstring · uuid

Optional workflow ID. If not provided, it will be generated.

Example: 4a4de828-f4c9-4bea-8ef4-2d705aec43bc
trigger_namestring

The event that triggers this workflow.

Example: integrated_account:connected

Response Body

configobject
required·

Workflow execution configuration.

run_ifstring

JSONata condition evaluated before executing workflow steps.

Example: integration.name = 'calcom'
stepsobject[]
4 properties
actionstring

Action executed by the step.

Example: run_sync_job
configstring

JSONata expression evaluated at runtime to generate the step execution payload.

Example: ( $sync_job_id := $mapValues(integration.name,{ "calcom": "51b79ace-a7b4-4077-93ba-8048a06ece2b" }); { "sync_job_id": $sync_job_id, "integrated_account_id": integrated_account_id, "webhook_id": "9fda519d-148f-4cc5-bbac-4e373b16e5d4" } )
cron_expressionstring

Optional cron expression for scheduled execution.

Example: 0 */6 * * *
typestring

Step execution type.

Example: run
Possible values:
run
created_atstring · date-time
environment_idstring · uuid
Example: 05daecaf-4365-42e8-8370-8127de5dd717
idstring · uuid
Example: 4a4de828-f4db-4c9e-adfd-434e0864c3c7
trigger_namestring
Example: integrated_account:connected
updated_atstring · date-time
curl -X POST 'https://api.truto.one/workflow' \
  -H 'Authorization: Bearer <your_api_token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "id": "4a4de828-f4c9-4bea-8ef4-2d705aec43bc",
  "environment_id": "05daecaf-4365-42e8-8370-8127de5dd717",
  "trigger_name": "integrated_account:connected",
  "config": {}
}'
const body = {
  "id": "4a4de828-f4c9-4bea-8ef4-2d705aec43bc",
  "environment_id": "05daecaf-4365-42e8-8370-8127de5dd717",
  "trigger_name": "integrated_account:connected",
  "config": {}
};

const response = await fetch('https://api.truto.one/workflow', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <your_api_token>',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify(body),
});

const data = await response.json();
console.log(data);
import requests

url = "https://api.truto.one/workflow"
headers = {
    "Authorization": "Bearer <your_api_token>",
    "Content-Type": "application/json",
}
params = {
}
payload = {
    "id": "4a4de828-f4c9-4bea-8ef4-2d705aec43bc",
    "environment_id": "05daecaf-4365-42e8-8370-8127de5dd717",
    "trigger_name": "integrated_account:connected",
    "config": {}
}

response = requests.post(url, headers=headers, params=params, json=payload)
print(response.json())
import Truto from '@truto/truto-ts-sdk';

const truto = new Truto({
  token: '<your_api_token>',
});

const body = {
  "id": "4a4de828-f4c9-4bea-8ef4-2d705aec43bc",
  "environment_id": "05daecaf-4365-42e8-8370-8127de5dd717",
  "trigger_name": "integrated_account:connected",
  "config": {}
};

const result = await truto.workflow.create(body);

console.log(result);
import asyncio
from truto_python_sdk import TrutoApi

truto_api = TrutoApi(token="<your_api_token>")

async def main():
    body = {
        "id": "4a4de828-f4c9-4bea-8ef4-2d705aec43bc",
        "environment_id": "05daecaf-4365-42e8-8370-8127de5dd717",
        "trigger_name": "integrated_account:connected",
        "config": {}
    }

    result = await truto_api.workflows.create(body)
    print(result)

asyncio.run(main())