Skip to main content

FlowSynx Config API

The FlowSynx Configuration API provides endpoints for managing plugin configurations. You can list, create, update, retrieve, and delete configurations via secured RESTful calls.

Authentication & Authorization

Required:

  • Authentication: Yes (Bearer or Basic Auth)
  • Authorization: Yes (Must have admin or config role)

1. Basic Auth

curl -u username:password http://localhost:6262/config

2.Bearer Token

curl -H "Authorization: Bearer <your_token>" http://localhost:6262/config

API Endpoints

List All Configurations

  • Method: GET
  • Endpoint: /config
  • Body Required: No

curl Example

curl -X GET http://localhost:6262/config \
-H "Authorization: Bearer <your_token>"

Example response

{
"data": [
{
"id": "4a14d7b7-01d9-4b2d-a403-4e7824c1e234",
"name": "process",
"type": "FlowSynx.Execution.ExternalProcess",
"version": "1.0.0",
"modifiedTime": null
}
],
"messages": [],
"succeeded": true,
"generatedAtUtc": "2025-08-02T16:52:59.4135477Z"
}

Add New Configuration

  • Method: POST
  • Endpoint: /config
  • Body Required: Yes

Request Body

{ 
"name": "process",
"type": "FlowSynx.Execution.ExternalProcess",
"version": "1.0.0",
"specifications": {
}
}

curl Example

curl -X POST http://localhost:6262/config \
-H "Authorization: Bearer <your_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "process",
"type": "FlowSynx.Execution.ExternalProcess",
"version": "1.0.0",
"specifications": {}
}'

Example response

{
"data": {
"id": "e80c62f6-8584-4158-b0eb-d5ab1570a409",
"name": "process"
},
"messages": [
"The plugin config has been added successfully."
],
"succeeded": true,
"generatedAtUtc": "2025-08-02T17:05:26.6303902Z"
}

Get Configuration Details

  • Method: GET
  • Endpoint: /config/{configId}
  • Body Required: No
info
  • configId: UUID of the configuration to retrieve

curl Example

curl -X GET http://localhost:6262/config/e80c62f6-8584-4158-b0eb-d5ab1570a409 \
-H "Authorization: Bearer <your_token>"

Example response

{
"data": {
"id": "e80c62f6-8584-4158-b0eb-d5ab1570a409",
"name": "process",
"type": "FlowSynx.Execution.ExternalProcess",
"version": "1.0.0",
"specifications": {}
},
"messages": [],
"succeeded": true,
"generatedAtUtc": "2025-08-02T17:09:49.2772208Z"
}

Update Configuration

  • Method: PUT
  • Endpoint: /config/{configId}
  • Body Required: Yes
info
  • configId: UUID of the configuration to retrieve

Request Body

{
"name": "process2",
"type": "FlowSynx.Execution.ExternalProcess",
"version": "1.0.0",
"specifications": {}
}

curl Example

curl -X PUT http://localhost:6262/config/e80c62f6-8584-4158-b0eb-d5ab1570a409 \
-H "Authorization: Bearer <your_token>" \
-H "Content-Type: application/json" \
-d '{
"name": "process2",
"type": "FlowSynx.Execution.ExternalProcess",
"version": "1.0.0",
"specifications": {}
}'

Example response

{
"data": {},
"messages": [
"The plugin config has been updated successfully."
],
"succeeded": true,
"generatedAtUtc": "2025-08-02T17:13:50.3568096Z"
}

Delete Configuration

  • Method: DELETE
  • Endpoint: /config/{configId}
  • Body Required: No
info
  • configId: UUID of the configuration to retrieve

curl Example

curl -X DELETE http://localhost:6262/config/e80c62f6-8584-4158-b0eb-d5ab1570a409 \
-H "Authorization: Bearer <your_token>"

Example response

{
"data": {},
"messages": [
"The plugin config has been deleted successfully."
],
"succeeded": true,
"generatedAtUtc": "2025-08-02T17:18:22.6192638Z"
}

Summary Table

OperationMethodEndpointBodyAuthenticationAuthorization roles
List ConfigurationsGET/configNo✅ Requiredadmin, config
Add ConfigurationPOST/configYes✅ Requiredadmin, config
Get ConfigurationGET/config/{configId}No✅ Requiredadmin, config
Update ConfigurationPUT/configYes✅ Requiredadmin, config
Delete ConfigurationDELETE/config/{configId}No✅ Requiredadmin, config
info
  • Use Bearer or Basic authentication depending on flowsynx configuration.
  • Replace <your_token> or username:password with actual credentials.
  • Use consistent config name, type, and version fields to avoid misconfiguration.
  • The specifications field can include plugin-specific settings in JSON format.
  • All configuration IDs are UUIDs.