curl --request PUT \
--url http://localhost:8081/protocols/{id}/questionnaire \
--header 'Content-Type: application/json' \
--data '
{
"formId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questions": [
{
"questionText": "<string>",
"responseType": "TEXT",
"metadata": {},
"required": true,
"weight": 123,
"position": 123,
"options": [
{
"optionText": "<string>",
"score": 123,
"position": 123
}
]
}
],
"scoreRanges": [
{
"minScore": 123,
"maxScore": 123,
"classification": "<string>"
}
],
"name": "<string>",
"prompt": "<string>"
}
'{
"protocol": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"institutionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"prompt": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"form": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"protocolId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"questions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"protocolFormId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionText": "<string>",
"responseType": "TEXT",
"metadata": {},
"required": true,
"weight": 123,
"position": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"options": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"protocolQuestionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"optionText": "<string>",
"score": 123,
"position": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
]
}
]
}
}Updates protocol name/prompt and replaces the form’s questions and score ranges. Send formId + full questions and scoreRanges. UI: single form, submit once.
curl --request PUT \
--url http://localhost:8081/protocols/{id}/questionnaire \
--header 'Content-Type: application/json' \
--data '
{
"formId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questions": [
{
"questionText": "<string>",
"responseType": "TEXT",
"metadata": {},
"required": true,
"weight": 123,
"position": 123,
"options": [
{
"optionText": "<string>",
"score": 123,
"position": 123
}
]
}
],
"scoreRanges": [
{
"minScore": 123,
"maxScore": 123,
"classification": "<string>"
}
],
"name": "<string>",
"prompt": "<string>"
}
'{
"protocol": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"institutionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"prompt": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"form": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"protocolId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"questions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"protocolFormId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionText": "<string>",
"responseType": "TEXT",
"metadata": {},
"required": true,
"weight": 123,
"position": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"options": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"protocolQuestionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"optionText": "<string>",
"score": 123,
"position": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
]
}
]
}
}Protocol UUID