input[]/output[].title, description and hasValue remain required at the root level of the payload. The companyId field, required on create, must be OMITTED here — sending it returns a 400 error.id and path fields, when present in output[].segments[].fields[] (for example, when copying the structure from another configuration), must be removed before submitting — the API rejects these nested fields on update.curl --location --request PUT '/v1/flows//credit-engine-config/' \
--header 'Content-Type: application/json' \
--data '{
"title": "string",
"description": "string",
"hasValue": true,
"policyId": "string",
"input": [
{
"key": "string",
"title": "string",
"type": "string",
"path": "string",
"reference": "string",
"required": true,
"description": "string"
}
],
"output": [
{
"description": "string",
"segments": [
{
"description": "string",
"fields": [
{
"key": "string",
"title": "string",
"description": "string",
"type": "string",
"weight": 0,
"aggregates": [
{
"key": "string",
"path": "string",
"description": "string"
}
]
}
]
}
]
}
]
}'{
"id": "string",
"policyId": "string",
"title": "string",
"description": "string",
"hasValue": true,
"input": [
{}
],
"output": [
{}
]
}