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
orconfig
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
Operation | Method | Endpoint | Body | Authentication | Authorization roles |
---|---|---|---|---|---|
List Configurations | GET | /config | No | ✅ Required | admin, config |
Add Configuration | POST | /config | Yes | ✅ Required | admin, config |
Get Configuration | GET | /config/{configId} | No | ✅ Required | admin, config |
Update Configuration | PUT | /config | Yes | ✅ Required | admin, config |
Delete Configuration | DELETE | /config/{configId} | No | ✅ Required | admin, config |
info
- Use
Bearer
orBasic
authentication depending on flowsynx configuration. - Replace
<your_token>
orusername:password
with actual credentials. - Use consistent config
name
,type
, andversion
fields to avoid misconfiguration. - The
specifications
field can include plugin-specific settings in JSON format. - All configuration IDs are UUIDs.