---
title: "Update record details and status of the record like approve and reject."
method: PUT
path: "/api/Public/recordupdate"
tags: ["Public"]
---

# Update record details and status of the record like approve and reject.

`PUT /api/Public/recordupdate`

## Request

- Base URL: `https://apidocs.cflowapps.com` (the document declares no server; this is the origin it was published from)
- URL: `https://apidocs.cflowapps.com/api/Public/recordupdate`
- Auth: API key in header `X-Api-Key` and API key in header `X-User-Key`
- TypeScript: <https://skmtc.dev/cflowapps/apis/cflow-public-api/docs/api/Public/recordupdate/put.ts> (a function with typed inputs; its response is checked against the schema)

Sample Request

         PUT
         {
           "RecordId":"23",
           "WorkflowName": "Test Workflow",
           "StageName": "Approval stage",  
           "IsDraft": false,        ///            
           "Values":{"Product Name":"Test Data","Product code":"1"}, //All section data except table sections
           "TableValues":[{
               "TableName":"Employees", //Name of the table
               "TableRowIds":"31|!32",  //Row id of the table. Refer "recorddetails" api response
               "TableDelRowIds":"33",  //Row id of the table to be deleted. Refer "recorddetails" api response
               "Values":{   // All field values seperated by '|!' symbol
                   "Name":"xyz|!abc",      // "Fieldname":"all fieldvalues of the field"
                   "Designation":"Engg|!Marketing"
               }
           },{
               "TableName":"Employees", //Name of the table
               "TableRowIds":"31|!32",  //Row id of the table. Refer "recorddetails" api response
               "TableDelRowIds":"33",  //Row id of the table to be deleted. Refer "recorddetails" api response
               "Values":{   // All field values seperated by '|!' symbol
                   "Name":"xyz|!abc",      // "Fieldname":"all fieldvalues of the field"
                   "Designation":"Engg|!Marketing"
               }
           }
           ],
           "Status":"Approved",
           "Comments":"Approved the request",
           "IsWorkflow": true
        }

## Request body

- ApiUpdateRequest
  - `recordId` integer, required: Record Id
  - `workflowName` string, required: Name of the workflow / lookup
  - `stageName` string, required: Name of the stage
  - `isDraft` boolean, required: Save the record as draft or not. True - If this need to be saved as draft, False - If needs to be submitted.
  - `values` unknown, required
  - `tableValues` ApiTableValueUpdate[], required: Table section data
    - `tableName` string, required: Table section name
    - `tableRowIds` string, nullable: Table row id
    - `tableDelRowIds` string, nullable: Table Deleted row id
    - `values` unknown
  - `status` string, required: Update status of the record
  - `isWorkflow` boolean: True for workflows (default) and False for Lookups
  - `comments` string, nullable: Comments to be added

## Response `200`

Return status of the request

- SubmitResponse
  - `recordId` string, nullable: Record Id
  - `status` string, nullable: Status of the Submitted Record
  - `message` string, nullable: Message provided when there is an invalid input

## Other responses

- `400`: The status does not exist. The record has not been updated as you have sent an invalid status.
- `401`: The record has not been updated as the user doesn't have access to the record.
- `403`: Forbidden
- `404`: The record has not been updated as the record is no longer present in this group. Please check if the record still exists in this group.
- `500`: Internal Server Error

---

[API](https://skmtc.dev/cflowapps/apis/cflow-public-api.md) - [All operations](https://skmtc.dev/cflowapps/apis/cflow-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cflowapps/apis/cflow-public-api/revisions/af0dadd0ad10?raw)
