Call N8N API endpoint from external application and create workflows dynamically

HI
We have below requirement.

Using Self hosting , we have hosted N8N using Docker and evaluating the feasibility for one use case.

Will create workflow templates for our business flow and download the Workflow Json.
From our application , we want to invoke N8N endpoint or N8N hosted API which should create workflows on the fly.

The scenario is below.

A user schedules an activity in application front end (from calendar) and for the schedule, a scheduled workflow should be created. If the user removes the schedule from UI, the scheduled workflow should be removed.

Is it possible to call the n8n endpoint from a .NET application and modify the json template and post it to N8N with the updated schedule and user information.

The system has requirement where end users will schedule the ‘activity’ and programatically, we should be able to create workflows.

Also, if we need to execute any specific workflow from program , how to do.

Any pointers? Request advice.

Hey @Aneena,

Welcome to the community :cake:

The n8n API is a REST API so it shouldn’t matter what the application you are using is written in as long as it can make an HTTP request all is good.

The n8n API allows you to preform CRUD operations on workflows so it should be possible to do it, If you go to the settings in n8n you can find the API playground which will show you some of the requests you can make.

Thank you Jon. It’s great.

Wonder if it would not be simpler to just have one workflow which triggers regularly (all 60, 30, 10, 5 or 1 minutes depending how fine-grained you allow to schedule something). This workflow would then read from another data source if it should trigger and what exactly to do. That data source could be any API, local file or something like a Google Sheet.

1 Like

Thanks. This could be an alternative,
But we would like to create scheduled workflows from the APP.

And find that the scheduled workflows are NOT ACTIVE during POST request.

Is it Inactive by default? Why read:true cannot be sent during POST.

Is the feature not there