Skip to content

Submit a Data Change Request (DCR) to one or more fields on an existing Investigator or Institution record controlled by OpenData Clinical. Learn more about Data Change Requests in Vault Help.

You can submit up to 10 Data Change Requests in one API call.

POST/api/{version}/app/clinical/opendata/{object}/data_change_request
NameDescription
Content-Typeapplication/json
Acceptapplication/json (default)
NameDescription
{object}The name of the object to submit the Data Change Request. For example, person__sys.

In the body of the request, include a JSON input with the following fields for each Data Change Request:

NameDescription
id
conditional
If you are requesting to update values on an existing record, include the ID of the record to submit the Data Change Request. If you are requesting to create a new record, omit this parameter.
notes
required
A String field to provide the rationale or reasoning for this Data Change Request. This appears in the Notes field in the Vault UI. Cannot be null.
data
required
A JSON object with the fields to update or create on the record, with their new values. Fields should use their API name format, for example, first_name__sys. When entering new values for picklist fields, use the name of the picklist value rather than the label as the new value for the picklist field.

While the requested field names to populate are validated, the proposed values for requested fields are not validated, meaning the DCR may be sent with invalid proposed field values.

Request: Update Existing Investigators

Section link for Request: Update Existing Investigators
curl --location 'https://myvault.veevavault.com/api/v25.3/app/clinical/opendata/person__sys/data_change_request' \ --header 'Accept: ' \ --header 'Authorization: {SESSION_ID}' \ --data-raw '[ [ { "id": "V0B000000003005", "notes": "DCR for legal name change", "data": { "first_name__sys": "Megan", "last_name__sys": "Smith" } }, { "id": "V0B000000003045", "notes": "DCR for legal name change", "data": { "first_name__sys": "Kristin", "last_name__sys": "Smith" } } ]'

Response: Update Existing Investigators

Section link for Response: Update Existing Investigators
{ "responseStatus": "SUCCESS", "responseMessage": "Success", "data": [ { "target_id": "V0B000000003005", "id": "VBH000000004001" }, { "target_id": "V0B000000003045", "id": "VBH000000004002" } ] }
curl --location 'https://myvault.veevavault.com/api/v25.3/app/clinical/opendata/person__sys/data_change_request' \ --header 'Accept: ' \ --header 'Authorization: {SESSION_ID}' \ --data-raw '[ { "notes": "Request for Investigator Megan", "data": { "first_name__sys": "Megan", "last_name__sys": "Smith" } }, { "notes": "Request for Investigator Kristin", "data": { "first_name__sys": "Kristin", "last_name__sys": "Smith" } } ]'

Response: Create New Investigators

Section link for Response: Create New Investigators
{ "responseStatus": "SUCCESS", "responseMessage": "Success", "data": [ { "target_id": null, "id": "VBH000000003003" }, { "target_id": null, "id": "VBH000000003004" } ] }

When requesting an update to an existing record, on SUCCESS the response contains the target_id of the record where the DCR was submitted, and the id of the new Data Change Request record.

When requesting to create a new record, on SUCCESS the response contains the id of the new Data Change Request record. The returnedtarget_id is null, as there is no existing record.

Partial success is not allowed, meaning either all records succeed or all records fail. On FAILURE, Vault returns an error message for the first error encountered.