# Services

## POST /api/engine/v3/service/{hid}

> Add a MobiusFlow service to a node

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/{hid}":{"post":{"summary":"Add a MobiusFlow service to a node","tags":["Services"],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"sid":{"description":"The SID of the service. If this SID is already used the next available one will be used","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"spid":{"description":"The servive profile ID of the service","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"name":{"description":"The name of the service","type":"string"},"enabled":{"description":"Is the service is enabled?","type":"boolean"},"runAtStart":{"description":"Should the service should run at start?","type":"boolean"}},"required":["sid","spid"]}}},"required":true},"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"}],"responses":{"201":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":8,"maxLength":8},"name":{"type":"string"},"enabled":{"type":"boolean"},"runAtStart":{"type":"boolean"}},"required":["id","name","enabled","runAtStart"],"additionalProperties":false}}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## Clone a MobiusFlow service in a node

> Clone a service one or more times.\
> The new service SIDs will be sequential (skipping any existing service SIDs) from the start SID or 020 if not provided.<br>

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/clone/{hid}/{sid}":{"post":{"summary":"Clone a MobiusFlow service in a node","tags":["Services"],"description":"Clone a service one or more times.\nThe new service SIDs will be sequential (skipping any existing service SIDs) from the start SID or 020 if not provided.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"copies":{"description":"The number of copies to make","type":"number"},"start":{"description":"The SID of the first clone","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"}},"required":["copies"]}}},"required":true},"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"201":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":8,"maxLength":8},"name":{"type":"string"},"enabled":{"type":"boolean"},"runAtStart":{"type":"boolean"}},"required":["id","name","enabled","runAtStart"],"additionalProperties":false}}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## DELETE /api/engine/v3/service/{hid}/{sid}

> Delete a MobiusFlow service from a node

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/{hid}/{sid}":{"delete":{"summary":"Delete a MobiusFlow service from a node","tags":["Services"],"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":8,"maxLength":8},"name":{"type":"string"},"enabled":{"type":"boolean"},"runAtStart":{"type":"boolean"}},"required":["id","name","enabled","runAtStart"],"additionalProperties":false}}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## POST /api/engine/v3/service/start/{hid}/{sid}

> Start a MobiusFlow service

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/start/{hid}/{sid}":{"post":{"summary":"Start a MobiusFlow service","tags":["Services"],"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Success response","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"}},"required":["ts","uri"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## POST /api/engine/v3/service/stop/{hid}/{sid}

> Stop a MobiusFlow service

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/stop/{hid}/{sid}":{"post":{"summary":"Stop a MobiusFlow service","tags":["Services"],"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Success response","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"}},"required":["ts","uri"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## Hot reload a MobiusFlow service

> Refresh all objects from a service configuration

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/reload/{hid}/{sid}":{"post":{"summary":"Hot reload a MobiusFlow service","tags":["Services"],"description":"Refresh all objects from a service configuration","parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Success response","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"}},"required":["ts","uri"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## GET /api/engine/v3/service/config/{hid}/{sid}

> Get a MobiusFlow service's configuration

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/{hid}/{sid}":{"get":{"summary":"Get a MobiusFlow service's configuration","tags":["Services"],"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"object","properties":{"name":{"description":"Service name","type":"string"},"enabled":{"description":"Is the service enabled?","type":"boolean"},"runAtStart":{"description":"Should the service run at start?","type":"boolean"},"config":{"description":"Service configuration","type":"object","properties":{"sid":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"spid":{"description":"Service Profile ID (SPID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"settings":{"type":"object","properties":{"timeouts":{"type":"object","properties":{"local":{"type":"number"},"remote":{"type":"number"}},"required":["local","remote"],"additionalProperties":false},"persistence":{"type":"object","properties":{"enabled":{"type":"boolean"},"interval":{"type":"number","minimum":1}},"required":["enabled","interval"],"additionalProperties":false},"logging":{"type":"object","properties":{"spoke":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false},"service":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false}},"required":["spoke","service"],"additionalProperties":false}},"required":["timeouts","persistence","logging"],"additionalProperties":false},"custom":{"type":"object","additionalProperties":{}},"objects":{"type":"array","items":{"type":"object","properties":{"pid":{"description":"Object Profile ID (PID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"ins":{"description":"Object Instance (INS)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"configIsDirty":{"type":"boolean"},"rids":{"type":"array","items":{"type":"object","properties":{"rid":{"description":"Resource ID (RID)","type":"string","pattern":"\\b(?:[0-9A-F]{4}|[0-9A-F]{2})\\b"},"settings":{"description":"Resource settings as key value pairs","type":"object","additionalProperties":{}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["rid"],"additionalProperties":false}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["pid","ins","rids"],"additionalProperties":false}}},"required":["sid","spid","settings","custom","objects"],"additionalProperties":false}},"required":["name","enabled","runAtStart","config"],"additionalProperties":false}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## PATCH /api/engine/v3/service/config/{hid}/{sid}

> Update a MobiusFlow service's configuration

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/{hid}/{sid}":{"patch":{"summary":"Update a MobiusFlow service's configuration","tags":["Services"],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the service","type":"string"},"enabled":{"description":"Is the service is enabled?","type":"boolean"},"runAtStart":{"description":"Should the service should run at start?","type":"boolean"},"custom":{"description":"Custom configuration","type":"object","additionalProperties":{}}}}}},"required":true},"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"object","properties":{"name":{"description":"Service name","type":"string"},"enabled":{"description":"Is the service enabled?","type":"boolean"},"runAtStart":{"description":"Should the service run at start?","type":"boolean"},"config":{"description":"Service configuration","type":"object","properties":{"sid":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"spid":{"description":"Service Profile ID (SPID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"settings":{"type":"object","properties":{"timeouts":{"type":"object","properties":{"local":{"type":"number"},"remote":{"type":"number"}},"required":["local","remote"],"additionalProperties":false},"persistence":{"type":"object","properties":{"enabled":{"type":"boolean"},"interval":{"type":"number","minimum":1}},"required":["enabled","interval"],"additionalProperties":false},"logging":{"type":"object","properties":{"spoke":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false},"service":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false}},"required":["spoke","service"],"additionalProperties":false}},"required":["timeouts","persistence","logging"],"additionalProperties":false},"custom":{"type":"object","additionalProperties":{}},"objects":{"type":"array","items":{"type":"object","properties":{"pid":{"description":"Object Profile ID (PID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"ins":{"description":"Object Instance (INS)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"configIsDirty":{"type":"boolean"},"rids":{"type":"array","items":{"type":"object","properties":{"rid":{"description":"Resource ID (RID)","type":"string","pattern":"\\b(?:[0-9A-F]{4}|[0-9A-F]{2})\\b"},"settings":{"description":"Resource settings as key value pairs","type":"object","additionalProperties":{}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["rid"],"additionalProperties":false}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["pid","ins","rids"],"additionalProperties":false}}},"required":["sid","spid","settings","custom","objects"],"additionalProperties":false}},"required":["name","enabled","runAtStart","config"],"additionalProperties":false}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## PATCH /api/engine/v3/service/config/sid/{hid}/{sid}

> Update a MobiusFlow service's SID

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/sid/{hid}/{sid}":{"patch":{"summary":"Update a MobiusFlow service's SID","tags":["Services"],"requestBody":{"content":{"application/json":{"schema":{"description":"The new SID","type":"object","properties":{"sid":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"}},"required":["sid"]}}},"description":"The new SID","required":true},"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"object","properties":{"name":{"description":"Service name","type":"string"},"enabled":{"description":"Is the service enabled?","type":"boolean"},"runAtStart":{"description":"Should the service run at start?","type":"boolean"},"config":{"description":"Service configuration","type":"object","properties":{"sid":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"spid":{"description":"Service Profile ID (SPID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"settings":{"type":"object","properties":{"timeouts":{"type":"object","properties":{"local":{"type":"number"},"remote":{"type":"number"}},"required":["local","remote"],"additionalProperties":false},"persistence":{"type":"object","properties":{"enabled":{"type":"boolean"},"interval":{"type":"number","minimum":1}},"required":["enabled","interval"],"additionalProperties":false},"logging":{"type":"object","properties":{"spoke":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false},"service":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false}},"required":["spoke","service"],"additionalProperties":false}},"required":["timeouts","persistence","logging"],"additionalProperties":false},"custom":{"type":"object","additionalProperties":{}},"objects":{"type":"array","items":{"type":"object","properties":{"pid":{"description":"Object Profile ID (PID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"ins":{"description":"Object Instance (INS)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"configIsDirty":{"type":"boolean"},"rids":{"type":"array","items":{"type":"object","properties":{"rid":{"description":"Resource ID (RID)","type":"string","pattern":"\\b(?:[0-9A-F]{4}|[0-9A-F]{2})\\b"},"settings":{"description":"Resource settings as key value pairs","type":"object","additionalProperties":{}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["rid"],"additionalProperties":false}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["pid","ins","rids"],"additionalProperties":false}}},"required":["sid","spid","settings","custom","objects"],"additionalProperties":false}},"required":["name","enabled","runAtStart","config"],"additionalProperties":false}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## PUT /api/engine/v3/service/config/replace-all-objects/{hid}/{sid}

> Replace all objects in a MobiusFlow service's configuration

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/replace-all-objects/{hid}/{sid}":{"put":{"summary":"Replace all objects in a MobiusFlow service's configuration","tags":["Services"],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"objects":{"description":"An array containing the objects for the service","type":"array","items":{"type":"object","properties":{"pid":{"description":"Object Profile ID (PID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"ins":{"description":"Object Instance (INS)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"configIsDirty":{"type":"boolean"},"rids":{"type":"array","items":{"type":"object","properties":{"rid":{"description":"Resource ID (RID)","type":"string","pattern":"\\b(?:[0-9A-F]{4}|[0-9A-F]{2})\\b"},"settings":{"description":"Resource settings as key value pairs","type":"object","additionalProperties":{}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"]}}},"required":["rid"]}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"]}}},"required":["pid","ins","rids"]}}},"required":["objects"]}}},"required":true},"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"object","properties":{"name":{"description":"Service name","type":"string"},"enabled":{"description":"Is the service enabled?","type":"boolean"},"runAtStart":{"description":"Should the service run at start?","type":"boolean"},"config":{"description":"Service configuration","type":"object","properties":{"sid":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"spid":{"description":"Service Profile ID (SPID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"settings":{"type":"object","properties":{"timeouts":{"type":"object","properties":{"local":{"type":"number"},"remote":{"type":"number"}},"required":["local","remote"],"additionalProperties":false},"persistence":{"type":"object","properties":{"enabled":{"type":"boolean"},"interval":{"type":"number","minimum":1}},"required":["enabled","interval"],"additionalProperties":false},"logging":{"type":"object","properties":{"spoke":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false},"service":{"type":"object","properties":{"level":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["level"],"additionalProperties":false}},"required":["spoke","service"],"additionalProperties":false}},"required":["timeouts","persistence","logging"],"additionalProperties":false},"custom":{"type":"object","additionalProperties":{}},"objects":{"type":"array","items":{"type":"object","properties":{"pid":{"description":"Object Profile ID (PID)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"ins":{"description":"Object Instance (INS)","type":"string","minLength":4,"maxLength":4,"pattern":"\\b[0-9A-F]{4}$\\b"},"configIsDirty":{"type":"boolean"},"rids":{"type":"array","items":{"type":"object","properties":{"rid":{"description":"Resource ID (RID)","type":"string","pattern":"\\b(?:[0-9A-F]{4}|[0-9A-F]{2})\\b"},"settings":{"description":"Resource settings as key value pairs","type":"object","additionalProperties":{}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["rid"],"additionalProperties":false}},"tags":{"description":"Tags as key value pairs","type":"object","additionalProperties":{"type":"object","properties":{"value":{"type":"string"},"from":{"anyOf":[{"type":"string","enum":["profile"]},{"type":"string","enum":["instance"]}]}},"required":["from"],"additionalProperties":false}}},"required":["pid","ins","rids"],"additionalProperties":false}}},"required":["sid","spid","settings","custom","objects"],"additionalProperties":false}},"required":["name","enabled","runAtStart","config"],"additionalProperties":false}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## GET /api/engine/v3/service/config/log-levels/{hid}/{sid}

> Get the logging level of a MobiusFlow service

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/log-levels/{hid}/{sid}":{"get":{"summary":"Get the logging level of a MobiusFlow service","tags":["Services"],"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"object","properties":{"spoke":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]},"service":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["spoke","service"],"additionalProperties":false}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## PATCH /api/engine/v3/service/config/log-levels/{hid}/{sid}

> Set the logging level of a MobiusFlow service

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/log-levels/{hid}/{sid}":{"patch":{"summary":"Set the logging level of a MobiusFlow service","tags":["Services"],"requestBody":{"content":{"application/json":{"schema":{"description":"The new logging levels for the service and spoke","type":"object","properties":{"spoke":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]},"service":{"description":"Log level","type":"string","enum":["trace","debug","info","warn","error","fatal"]}},"required":["spoke","service"]}}},"description":"The new logging levels for the service and spoke","required":true},"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Success response","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"}},"required":["ts","uri"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## GET /api/engine/v3/service/config/persistence/{hid}/{sid}

> Get the persistence settings of a MobiusFlow service

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/persistence/{hid}/{sid}":{"get":{"summary":"Get the persistence settings of a MobiusFlow service","tags":["Services"],"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"},"data":{"type":"object","properties":{"enabled":{"description":"Is persistence enabled for the service?","type":"boolean"},"interval":{"description":"The persistence interval in seconds","type":"number","minimum":1}},"required":["enabled","interval"],"additionalProperties":false}},"required":["ts","uri","data"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## PATCH /api/engine/v3/service/config/persistence/{hid}/{sid}

> Set the persistence settings of a MobiusFlow service

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/config/persistence/{hid}/{sid}":{"patch":{"summary":"Set the persistence settings of a MobiusFlow service","tags":["Services"],"requestBody":{"content":{"application/json":{"schema":{"description":"The new persistence settings for the service","type":"object","properties":{"enabled":{"description":"Is persistence enabled for the service?","type":"boolean"},"interval":{"description":"The persistence interval in seconds","type":"number","minimum":1}},"required":["enabled","interval"]}}},"description":"The new persistence settings for the service","required":true},"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Success response","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"}},"required":["ts","uri"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```

## POST /api/engine/v3/service/persist-objects/{hid}/{sid}

> Persist all objects in a MobiusFlow service

```json
{"openapi":"3.1.3","info":{"title":"MobiusFlow® Engine API","version":"3.0.0"},"paths":{"/api/engine/v3/service/persist-objects/{hid}/{sid}":{"post":{"summary":"Persist all objects in a MobiusFlow service","tags":["Services"],"parameters":[{"schema":{"description":"Hub ID (HID)","type":"string","minLength":6,"maxLength":6,"pattern":"\\b^[0-9A-F]{6}$\\b"},"in":"path","name":"hid","required":true,"description":"Hub ID (HID)"},{"schema":{"description":"Service ID (SID)","type":"string","minLength":3,"maxLength":3,"pattern":"\\b[0-9A-F]{3}$\\b"},"in":"path","name":"sid","required":true,"description":"Service ID (SID)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Success response","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"uri":{"description":"URI of the response","type":"string"}},"required":["ts","uri"],"additionalProperties":false}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Bad Request","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"403":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"408":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Request Timeout","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"409":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Conflict","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"422":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Unprocessable Entity","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}},"500":{"description":"Default Response","content":{"application/json":{"schema":{"description":"Internal Server Error","type":"object","properties":{"ts":{"description":"Timestamp of the response","type":"string"},"statusCode":{"description":"HTTP status code","type":"number"},"errorCode":{"description":"Error code","type":"string"},"message":{"description":"Error message","type":"string"},"detail":{"description":"Error details (optional)"}},"required":["ts","statusCode","errorCode","message"],"additionalProperties":false}}}}}}}}}
```
